@@ -16,7 +16,7 @@ def __init__(self, anon_prefix: Optional[str]=None) -> None:
1616 self .anon_prefix = anon_prefix
1717 self .container : Dict [str , ElementType ] = {}
1818 self .names = IdentityDict [ElementType , str ]() # TODO unify w/ container?
19- self .keys_list : List = []
19+ self .keys_list : List [ str ] = []
2020 self .closed = False
2121
2222 def register (self , item : ElementType ) -> ElementType :
@@ -80,7 +80,7 @@ def name_of(self, elt: ElementType) -> Optional[str]:
8080
8181class SubElementManager :
8282 def __init__ (self ) -> None :
83- self .dicts : List [Tuple [Union [Type , Tuple [Type , ...]], SubElementDict ]] = []
83+ self .dicts : List [Tuple [Union [Type [ Any ] , Tuple [Type [ Any ] , ...]], SubElementDict [ Any ] ]] = []
8484 self .aliases = IdentityDict [Any , Any ]()
8585
8686 def new_dict (self , filter_type : Union [Type [ElementType ], Tuple [Type [ElementType ], ...]],
@@ -274,7 +274,7 @@ def _get_bases_of(cls, base_type: Type[BaseType]) -> Tuple[List[Type[BaseType]],
274274 superclasses order is not defined (but MRO in current practice).
275275
276276 mypy currently does not allow passing in abstract types, so generally calls to this need type: ignore."""
277- direct_bases : Set [Type ] = set ()
277+ direct_bases : Set [Type [ HasMetadata ] ] = set ()
278278 def process_direct_base (bcls : Type [HasMetadata .BaseType ]) -> None :
279279 if not issubclass (bcls , base_type ):
280280 return # ignore above base_type
0 commit comments