Anonymous user
Delegates: Difference between revisions
no edit summary
No edit summary |
|||
Line 70:
delegate implementation
</pre>
=={{header|Aime}}==
<lang aime>text
thing(void)
{
return "delegate implementation";
}
text
operation(record delegator)
{
text s;
if (r_key(delegator, "delegate")) {
if (r_key(r_query(delegator, "delegate"), "thing")) {
s = __text(call(r_query(r_query(delegator, "delegate"), "thing")));
} else {
s = "default implementation";
}
} else {
s = "default implementation";
}
return s;
}
integer
main(void)
{
record delegate, delegator;
o_text(operation(delegator));
o_byte('\n');
r_link(delegator, "delegate", delegate);
o_text(operation(delegator));
o_byte('\n');
r_put(delegate, "thing", thing);
o_text(operation(delegator));
o_byte('\n');
return 0;
}</lang>
=={{header|Aikido}}==
|