Lichen

tests/chain.py

111:5faa3b93d431
2016-10-19 Paul Boddie Retain redundant accessor details to retain assignment details for the deducer.
     1 class C:     2     class D:     3         class E:     4             def m(self, x):     5                 self.x = x     6                 l = self.x.__len__     7                 s = self.o     8                 return self.o.__len__     9             n = 123    10             o = "123"    11     12         p = "456"    13         q = 789    14     15         class F(E):    16             def r(self, y):    17                 s = self.o    18                 C.D.F.t = 234    19                 return self.o.__len__    20             t = 123    21             def u(self):    22                 return self.o    23             def v(self):    24                 return self.u().__len__    25     26 def main():    27     c = C    28     d = C.D    29     e = C.D.E    30     f = C.D.E.m    31     g = C.D.E.n    32     h = C.D.p    33     i = C.D.p.__len__    34     C.D.q = 987    35     inst = e()    36     method = inst.m    37     return method("5")    38     39 result1 = main()    40 c = C    41 d = C.D    42 e = C.D.E    43 f = C.D.E.m    44 g = C.D.E.n    45 h = C.D.p    46 i = C.D.p.__len__    47 C.D.q = 987    48 inst = e()    49 method = inst.m    50 result2 = method("5")