Merge pull request #5575 from bluetech/mypy-initial

Add rudimentary mypy type checking
This commit is contained in:
Anthony Sottile
2019-07-09 08:05:14 -07:00
committed by GitHub
30 changed files with 104 additions and 45 deletions

View File

@@ -33,7 +33,8 @@ class Code:
def __eq__(self, other):
return self.raw == other.raw
__hash__ = None
# Ignore type because of https://github.com/python/mypy/issues/4266.
__hash__ = None # type: ignore
def __ne__(self, other):
return not self == other
@@ -188,11 +189,11 @@ class TracebackEntry:
""" path to the source code """
return self.frame.code.path
def getlocals(self):
@property
def locals(self):
""" locals of underlaying frame """
return self.frame.f_locals
locals = property(getlocals, None, None, "locals of underlaying frame")
def getfirstlinesource(self):
return self.frame.code.firstlineno
@@ -255,11 +256,11 @@ class TracebackEntry:
line = "???"
return " File %r:%d in %s\n %s\n" % (fn, self.lineno + 1, name, line)
@property
def name(self):
""" co_name of underlaying code """
return self.frame.code.raw.co_name
name = property(name, None, None, "co_name of underlaying code")
class Traceback(list):
""" Traceback objects encapsulate and offer higher level