class A:
pass
class B(A):
pass
class C(B):
pass
class Test:
def foo(x as A):
print "foo-A"
def foo(x as B):
print "foo-B"
c = C()
duck_test as duck = Test()
duck_test.foo(c) #prints foo-A
test = Test()
test.foo(c) #prints foo-B
spotted by Greg (hangar).
Description
class A:
pass
class B(A):
pass
class C(B):
pass
class Test:
def foo(x as A):
print "foo-A"
def foo(x as B):
print "foo-B"
c = C()
duck_test as duck = Test()
duck_test.foo(c) #prints foo-A
test = Test()
test.foo(c) #prints foo-B