no-annotated-self¶
Forbid explicit type annotations on instance-method self parameters.
Message¶
Do not annotate self in instance methods.
Valid examples¶
class A:
def method(self, value: int) -> int:
return value
def helper(self: object, value: int) -> int:
return value
Show more
class A:
@classmethod
def build(cls, value: int) -> "A":
return cls()
Invalid examples¶
class A:
def method(self: "A", value: int) -> int:
return value
Suggested fix
class A:
def method(self, value: int) -> int:
return value
Show more
class A:
async def method(self: "A") -> None:
return None
Suggested fix
class A:
async def method(self) -> None:
return None