[mypy]: Add type hints for EtypeResolver class:
Within rql/analyze.py:
----------------------
add (line 403):
if self.uid_func:
and fix:
error: "None" not callable [misc]
add (line 548):
assert self.uid_func_mapping is not None
and fix:
Unsupported right operand type for in ("Optional[Dict[Any, Any]]")
change (line 615):
etypes = frozenset(t for t in self._nonfinal_domain if t not in etypes)
to:
etypes = set(t for t in self._nonfinal_domain if t not in etypes)
and fix:
Incompatible types in assignment (expression has type "FrozenSet[str]", variable has type "Set[Any]")
Within rql/interfaces.py:
-------------------------
Update ISchema protocol definition:
add:
def __contains__():
and fix:
error: Unsupported right operand type for in ("ISchema") [operator]
add:
def rschema(self, rtype: Any):
and fix:
"ISchema" has no attribute "rschema" [attr-defined]
add:
def eschema(self, etype: Any):
and fix:
"ISchema" has no attribute "eschema" [attr-defined]
See RQL's issue: #15 (closed)
Edited by Nsukami Patrick