2009-05-30 | Paul Boddie | raw annotate files changeset graph | Changed instantiator invocation reserving a frame slot regardless of whether the target is known in advance. In the instantiator, the first frame slot is then overwritten with the new instance, and the RecoverFrame instruction is no longer required. Instead, a new JumpInFrame instruction maintains the existing locals, jumping to the initialiser method for the class. Updated various tests, renaming and enhancing the classes test. |
1 #!/usr/bin/env python 2 3 def f(a, b, c=4): 4 return c 5 6 g = f 7 8 result_3 = g(1, c=3, b=2) # f(c=3) -> 3 9 result_4 = g(1, 2) # f(c=4) -> 4 10 11 def g(a, c, b=5): 12 return b 13 14 result_2 = g(1, c=3, b=2) # g(b=2) -> 2 15 result_5 = g(1, 3) # g(b=5) -> 5 16 17 # vim: tabstop=4 expandtab shiftwidth=4