That would be interface delegation to an implicit property.
Nearly what delphi allows but with simple syntax.
The difference to delphi is that you have to declare the property.

For me it is o.k. A simple solution.

marcus

At 19:35 10.04.2002, you wrote:
>Hey guys,
>
>I still haven't finished reading the looooooong thread on aggregation vs. 
>MI because you guys write so much :)
>I would like to make a proposal for a solution which I think would fit PHP 
>very nicely.
>My main concern with MI is that there are many problems with it including 
>namespace clashes and other problems most of you are probably familiar 
>with. I think trying to work around and find solutions for all of these 
>would make a PHP implementation of MI extremely hard to use and would move 
>away from the spirit of PHP which is powerful simplicity.
>What I have in mind is something similar to aggregation (in the original 
>C++ sense which means a "has a" relationship) but improve it with an 
>auto-proxy mechanism.
>Basically what I'd like to have is something like:
>
>class a aggregates b, c {
>         ...
>}
>
>What would happen is that 'a' will hold an instance of 'b' and an instance 
>of 'c' like the old historic meaning of aggregation.
>However, when a method is called on 'a' and is not found we would 
>automatically proxy the method call to these instances (in the order of 
>their aggregation) and call the first existing one.
>The plus is that you get something very similar to MI without having to 
>deal with namespace clashes such as problems when b and c have the same 
>variable name. Each object lives on its own but you get a central object 
>which reflects the interfaces of all three objects.
>
>This is a very elegant and simple IMO. It should answer most needs.
>I hope I explained it well. Let me know if you have any questions.
>Andi
>
>
>--
>PHP Development Mailing List <http://www.php.net/>
>To unsubscribe, visit: http://www.php.net/unsub.php


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to