Jump to content

Delegates: Difference between revisions

Put python back
(Fix python section)
(Put python back)
Line 75:
return 0;
}
</pre>
 
==[[Python]]==
[[Category:Python]]
 
<pre>
class Delegator:
def __init__(self, delegate=None):
self.delegate = delegate
def thing(self):
if hasattr(self.delegate, 'thing'):
return self.delegate.thing()
return 42
def other(self):
if hasattr(self.delegate, 'other'):
return self.delegate.thing()
return 5
 
class Delegate:
def thing(self):
return 37
 
if __name__ == '__main__':
 
# No delegate
a = Delegator()
assert a.thing() == 42
assert a.other() == 5
 
# With delegate
a.delegate = Delegate()
assert a.thing() == 37
assert a.other() == 5
</pre>
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.