Skip to content

Commit a9aeacc

Browse files
author
Guido van Rossum
committed
Revert "Implicitly assign class type to the first parameter of its methods (#1514) (#1586)"
This broke one of our repos ("client"). This reverts commit e45ac10.
1 parent 6bbcc8d commit a9aeacc

File tree

2 files changed

+4
-10
lines changed

2 files changed

+4
-10
lines changed

mypy/nodes.py

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2140,14 +2140,8 @@ def function_type(func: FuncBase, fallback: 'mypy.types.Instance') -> 'mypy.type
21402140
for arg in fdef.arguments:
21412141
names.append(arg.variable.name())
21422142

2143-
if fdef.is_method() and not fdef.is_static and not fdef.is_class:
2144-
self_arg = [mypy.types.Instance(func.info, [])] # type: List[mypy.types.Type]
2145-
arg_types = self_arg + ([mypy.types.AnyType()] * (len(fdef.arguments) - 1))
2146-
else:
2147-
arg_types = [mypy.types.AnyType()] * len(fdef.arguments)
2148-
21492143
return mypy.types.CallableType(
2150-
arg_types,
2144+
[mypy.types.AnyType()] * len(fdef.arguments),
21512145
[arg.kind for arg in fdef.arguments],
21522146
names,
21532147
mypy.types.AnyType(),

mypy/test/data/typexport-basic.test

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -890,7 +890,7 @@ class A:
890890
def f(self): pass
891891
A.f
892892
[out]
893-
MemberExpr(5) : def (self: A) -> Any
893+
MemberExpr(5) : def (self: Any) -> Any
894894

895895
[case testOverloadedUnboundMethod]
896896
## MemberExpr
@@ -914,7 +914,7 @@ class A:
914914
def f(self, x): pass
915915
A.f
916916
[out]
917-
MemberExpr(8) : Overload(def (self: A) -> Any, def (self: A, x: Any) -> Any)
917+
MemberExpr(8) : Overload(def (self: Any) -> Any, def (self: Any, x: Any) -> Any)
918918

919919
[case testUnboundMethodWithInheritance]
920920
## MemberExpr
@@ -977,7 +977,7 @@ class A(Generic[t]):
977977
def f(self, x): pass
978978
A.f(None, None)
979979
[out]
980-
MemberExpr(7) : def (self: A, x: Any) -> Any
980+
MemberExpr(7) : def (self: Any, x: Any) -> Any
981981

982982
[case testGenericMethodOfGenericClass]
983983
## MemberExpr

0 commit comments

Comments
 (0)