2017-01-15 | Paul Boddie | raw annotate files changeset graph | Remove effectively duplicate references from the cached output. Such references are not employed elsewhere after being read from the cached data, and the original references employed elsewhere will have been updated in the cached data to feature non-deferred details. Thus, duplicate references are superfluous. |
1 class C: 2 def f(self): 3 return 1 4 5 def g(self): 6 return self.f() 7 8 class D(C): 9 pass 10 11 def f(): 12 return 2 13 14 c = C() 15 d = D() 16 17 # Invoke a method that calls the default version of f. 18 19 print c.g() # 1 20 print d.g() # 1 21 22 # Replace f in C and invoke the method again. For C, f will have changed, 23 # but for D, f will retain its original value. 24 25 C.f = f 26 27 print c.g() # 2 28 print d.g() # 1