Just throw an error if conflicting accessors are defined. In the case of
subtypes: accessors may broaden the interface, but not limit it => LSP. So it’s
fine to make a parents protected accessor public, but not the other way around.
Am 19.11.2011 um 02:46 schrieb Clint M Priest:
> What would everyone think about multiple levels of visibility for
> getters/setters?
>
> class Sample {
>
> public $Variable {
> public get { return "Public"; }
> protected get { return "Protected"; }
> private get { return "Private"; }
>
> public set { ... }
> private set { ... }
> }
> }
>
> Whichever getter/setter would be called with the most restricted access, so
> externally public, internally protected (if inherited) or private from within.
>
> Any value to this? I can see some use cases and wouldn't be any more
> difficult to implement into what I'm already doing.
>
> -Clint
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php