Hi,

On Fri, Oct 24, 2014 at 12:21 PM, Alain Williams <a...@phcomp.co.uk> wrote:

> On Fri, Oct 24, 2014 at 10:41:38AM +0200, Patrick Schaaf wrote:
> > Am 24.10.2014 01:36 schrieb "Andrea Faulds" <a...@ajf.me>:
> > >
> > > Here’s another RFC: https://wiki.php.net/rfc/readonly_properties
> >
> > +1 for the general feature, I'd love to have that available.
> >
> > I have an idea regarding the additional keyword, with a small implication
> > (improvement) to the functionality provided, but at the cost of being
> > slightly quirky :) The idea is:
> >
> > public $foo as private;
> > public $bar as protected;
> > protected $baz as private;
> >
> > where the "as X" gives the writability scope. This introduces no new
> > keywords, and is currently not valid syntax, as far as I can see.
>
> More as musing than anything else - might provide some insight via an
> analogy.
>
> Properties and methods have a scope that is: private, protected or public.
> This reminds me of the Unix: owner, group & other file permissions.
>
> Unix allows: read, write & execute.
>
> This RFC is trying to control how a property could be used with a readonly
> restriction.
> Are there times when one would want to be able to set a property value -
> but not
> read it ?
>
> Thinking about execute - would there be any mileage in an execute
> permission -
> could be useful for a property that had been assigned an anonymous
> function.
>
>
> Finally we could bring it all together and sidestep the scoping keywords
> using
> 'var' instead. Thus:
>
>     var $callback as 0751;
>
> Would define a property that contains an anonymous function that could be
> called
> by anyone, inspected by the class & related class, but only set by the
> class itself!
>

To follow up on this, and to give more readable code, we could also use
this:

    var $callback as rwxrw---x;


>
> --
> Alain Williams
> Linux/GNU Consultant - Mail systems, Web sites, Networking, Programmer, IT
> Lecturer.
> +44 (0) 787 668 0256  http://www.phcomp.co.uk/
> Parliament Hill Computers Ltd. Registration Information:
> http://www.phcomp.co.uk/contact.php
> #include <std_disclaimer.h>
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
Regards,

-- 
Florian Margaine

Reply via email to