Lichen

tests/attr_providers.py

111:5faa3b93d431
2016-10-19 Paul Boddie Retain redundant accessor details to retain assignment details for the deducer.
     1 class C:     2     def __init__(self):     3         self.a = 1     4      5     b = 2     6      7 class D:     8     def __init__(self):     9         self.a = 3    10         self.b = 4    11     12 class E:    13     a = 5    14     b = 6    15     16 def f(x):    17     return x.a, x.b    18     19 def g(x):    20     21     # Should only permit D instance and E.    22     23     x.a = 7    24     x.b = 8    25     26 c = C()    27 d = D()    28 e = E()    29     30 result1 = f(c) # (1, 2)    31 result2 = f(d) # (3, 4)    32 result3 = f(e) # (5, 6)