1.1 --- a/results.py Mon Dec 05 13:01:21 2016 +0100
1.2 +++ b/results.py Mon Dec 05 16:03:06 2016 +0100
1.3 @@ -108,13 +108,9 @@
1.4 def __repr__(self):
1.5 return "LocalNameRef(%r, %r)" % (self.name, self.number)
1.6
1.7 -class ResolvedNameRef(NameRef):
1.8 -
1.9 - "A resolved name-based reference."
1.10 +class ResolvedRef:
1.11
1.12 - def __init__(self, name, ref, expr=None):
1.13 - NameRef.__init__(self, name, expr)
1.14 - self.ref = ref
1.15 + "A resolved reference mix-in."
1.16
1.17 def reference(self):
1.18 return self.ref
1.19 @@ -134,6 +130,14 @@
1.20 def has_kind(self, kinds):
1.21 return self.ref and self.ref.has_kind(kinds)
1.22
1.23 +class ResolvedNameRef(ResolvedRef, NameRef):
1.24 +
1.25 + "A resolved name-based reference."
1.26 +
1.27 + def __init__(self, name, ref, expr=None):
1.28 + NameRef.__init__(self, name, expr)
1.29 + self.ref = ref
1.30 +
1.31 def __repr__(self):
1.32 return "ResolvedNameRef(%r, %r, %r)" % (self.name, self.ref, self.expr)
1.33
1.34 @@ -149,7 +153,7 @@
1.35 def __repr__(self):
1.36 return "ConstantValueRef(%r, %r, %r, %r)" % (self.name, self.ref, self.value, self.number)
1.37
1.38 -class InstanceRef(Result):
1.39 +class InstanceRef(ResolvedRef, Result):
1.40
1.41 "An instance reference."
1.42