1.1 --- a/results.py Sun Feb 19 17:56:06 2017 +0100
1.2 +++ b/results.py Mon Feb 20 00:35:08 2017 +0100
1.3 @@ -30,6 +30,9 @@
1.4 def is_name(self):
1.5 return False
1.6
1.7 + def is_global_name(self):
1.8 + return False
1.9 +
1.10 def reference(self):
1.11 return None
1.12
1.13 @@ -90,25 +93,29 @@
1.14
1.15 "A reference to a name."
1.16
1.17 - def __init__(self, name, expr=None):
1.18 + def __init__(self, name, expr=None, is_global=False):
1.19 self.name = name
1.20 self.expr = expr
1.21 + self.is_global = is_global
1.22
1.23 def is_name(self):
1.24 return True
1.25
1.26 + def is_global_name(self):
1.27 + return self.is_global
1.28 +
1.29 def final(self):
1.30 return None
1.31
1.32 def __repr__(self):
1.33 - return "NameRef(%r, %r)" % (self.name, self.expr)
1.34 + return "NameRef(%r, %r, %r)" % (self.name, self.expr, self.is_global)
1.35
1.36 class LocalNameRef(NameRef):
1.37
1.38 "A reference to a local name."
1.39
1.40 def __init__(self, name, number):
1.41 - NameRef.__init__(self, name)
1.42 + NameRef.__init__(self, name, is_global=False)
1.43 self.number = number
1.44
1.45 def __repr__(self):
1.46 @@ -149,12 +156,12 @@
1.47
1.48 "A resolved name-based reference."
1.49
1.50 - def __init__(self, name, ref, expr=None):
1.51 - NameRef.__init__(self, name, expr)
1.52 + def __init__(self, name, ref, expr=None, is_global=False):
1.53 + NameRef.__init__(self, name, expr, is_global)
1.54 ResolvedRef.__init__(self, ref)
1.55
1.56 def __repr__(self):
1.57 - return "ResolvedNameRef(%r, %r, %r)" % (self.name, self.ref, self.expr)
1.58 + return "ResolvedNameRef(%r, %r, %r, %r)" % (self.name, self.ref, self.expr, self.is_global)
1.59
1.60 class ConstantValueRef(ResolvedNameRef):
1.61