Lichen

Annotated tests/methods_bound.py

794:7dd8e4815848
2017-03-31 Paul Boddie Introduced a multiple outcome result which can be used to provide a choice of return values to supply the initialiser and alias details.
paul@90 1
class C:
paul@90 2
    def m(self, x):
paul@90 3
        return x
paul@90 4
paul@90 5
def f(obj, i):
paul@90 6
    if i:
paul@90 7
        return obj.m(i)
paul@90 8
    else:
paul@90 9
        return obj.m
paul@90 10
paul@90 11
c = C()
paul@202 12
print f(c, 1)    # 1
paul@202 13
print f(c, 0)(2) # 2
paul@90 14
fn = f(c, 0)
paul@202 15
print fn(2)      # 2