.. _typevar-name-incorrect-variance:

typevar-name-incorrect-variance / C0105
=======================================

**Message emitted:**

Type variable name does not reflect variance%s

**Description:**

*Emitted when a TypeVar name doesn't reflect its type variance. According to PEP8, it is recommended to add suffixes '_co' and '_contra' to the variables used to declare covariant or contravariant behaviour respectively. Invariant (default) variables do not require a suffix. The message is also emitted when invariant variables do have a suffix.*


**Correct code:**

.. literalinclude:: /data/messages/t/typevar-name-incorrect-variance/good.py
   :language: python

**Additional details:**

You can help us make the doc better `by contributing <https://github.com/PyCQA/pylint/issues/5953>`_ !


Created by the `basic <https://github.com/PyCQA/pylint/blob/main/pylint/checkers/base/name_checker/checker.py>`__ checker.