5 weeks ago | Paul Boddie | raw annotate files changeset graph | Introduced an object size member to object structures, being set to a non-zero value in copiable type class structures to indicate that value replacement can occur with instances of such classes, with the given size being used to copy these instances. | value-replacement-generic |
1 def f(): 2 s = "test" 3 m = s.__len__ 4 n = "test".__len__ 5 print m # __builtins__.str.basestring.__len__ 6 print m() # 4 7 print n # __builtins__.str.basestring.__len__ 8 print n() 9 10 def g(): 11 l = [1, 2] 12 m = l.__len__ 13 n = [1, 2].__len__ 14 print l # [1, 2] 15 print m # __builtins__.list.list.__len__ 16 print m() # 2 17 print n # __builtins__.list.list.__len__ 18 print n() # 2 19 20 f() 21 g()