2016-10-17 | Paul Boddie | file changeset files shortlog | Track attribute assignment in attribute usage in order to restrict accessors. Changed the function type to be separate from all other types, preventing special __fn__ and __args__ attribute shadowing. |
paul@2 | 1 | def f(d): |
paul@2 | 2 | return d.keys() |
paul@2 | 3 | |
paul@2 | 4 | def g(d): |
paul@2 | 5 | for key, value in d.items(): |
paul@2 | 6 | return value |
paul@2 | 7 | |
paul@2 | 8 | d = {"a" : 1, "b" : 2} |
paul@2 | 9 | f(d) # ["a", "b"] |
paul@2 | 10 | g(d) # either 1 or 2 |