@@ -629,7 +629,8 @@ def _visit_overloaded_func_def(self, defn: OverloadedFuncDef) -> None:
629629
630630 if defn .is_property :
631631 # HACK: Infer the type of the property.
632- self .visit_decorator (cast (Decorator , defn .items [0 ]))
632+ assert isinstance (defn .items [0 ], Decorator )
633+ self .visit_decorator (defn .items [0 ])
633634 for fdef in defn .items :
634635 assert isinstance (fdef , Decorator )
635636 self .check_func_item (fdef .func , name = fdef .func .name , allow_empty = True )
@@ -2575,9 +2576,8 @@ def check_import(self, node: ImportBase) -> None:
25752576 if lvalue_type is None :
25762577 # TODO: This is broken.
25772578 lvalue_type = AnyType (TypeOfAny .special_form )
2578- message = message_registry .INCOMPATIBLE_IMPORT_OF .format (
2579- cast (NameExpr , assign .rvalue ).name
2580- )
2579+ assert isinstance (assign .rvalue , NameExpr )
2580+ message = message_registry .INCOMPATIBLE_IMPORT_OF .format (assign .rvalue .name )
25812581 self .check_simple_assignment (
25822582 lvalue_type ,
25832583 assign .rvalue ,
@@ -3657,8 +3657,8 @@ def check_lvalue(self, lvalue: Lvalue) -> tuple[Type | None, IndexExpr | None, V
36573657 not isinstance (lvalue , NameExpr ) or isinstance (lvalue .node , Var )
36583658 ):
36593659 if isinstance (lvalue , NameExpr ):
3660- inferred = cast ( Var , lvalue .node )
3661- assert isinstance ( inferred , Var )
3660+ assert isinstance ( lvalue .node , Var )
3661+ inferred = lvalue . node
36623662 else :
36633663 assert isinstance (lvalue , MemberExpr )
36643664 self .expr_checker .accept (lvalue .expr )
@@ -4984,7 +4984,8 @@ def intersect_instance_callable(self, typ: Instance, callable_type: CallableType
49844984 # In order for this to work in incremental mode, the type we generate needs to
49854985 # have a valid fullname and a corresponding entry in a symbol table. We generate
49864986 # a unique name inside the symbol table of the current module.
4987- cur_module = cast (MypyFile , self .scope .stack [0 ])
4987+ cur_module = self .scope .stack [0 ]
4988+ assert isinstance (cur_module , MypyFile )
49884989 gen_name = gen_unique_name (f"<callable subtype of { typ .type .name } >" , cur_module .names )
49894990
49904991 # Synthesize a fake TypeInfo
@@ -6196,7 +6197,8 @@ def lookup(self, name: str) -> SymbolTableNode:
61966197 else :
61976198 b = self .globals .get ("__builtins__" , None )
61986199 if b :
6199- table = cast (MypyFile , b .node ).names
6200+ assert isinstance (b .node , MypyFile )
6201+ table = b .node .names
62006202 if name in table :
62016203 return table [name ]
62026204 raise KeyError (f"Failed lookup: { name } " )
@@ -6210,7 +6212,8 @@ def lookup_qualified(self, name: str) -> SymbolTableNode:
62106212 for i in range (1 , len (parts ) - 1 ):
62116213 sym = n .names .get (parts [i ])
62126214 assert sym is not None , "Internal error: attempted lookup of unknown name"
6213- n = cast (MypyFile , sym .node )
6215+ assert isinstance (sym .node , MypyFile )
6216+ n = sym .node
62146217 last = parts [- 1 ]
62156218 if last in n .names :
62166219 return n .names [last ]
@@ -6514,7 +6517,8 @@ def is_writable_attribute(self, node: Node) -> bool:
65146517 return False
65156518 return True
65166519 elif isinstance (node , OverloadedFuncDef ) and node .is_property :
6517- first_item = cast (Decorator , node .items [0 ])
6520+ first_item = node .items [0 ]
6521+ assert isinstance (first_item , Decorator )
65186522 return first_item .var .is_settable_property
65196523 return False
65206524
0 commit comments