Re: private, protected, readonly, public
| From: | Marcus Boerger | Date: | Tue, 16 May 2006 22:21:35 +0000 |
| Subject: | Re: private, protected, readonly, public | ||
| References: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-23485@lists.php.net to get a copy of this message | ||
Hello Jason,
i changed from readonly to readable, which means the new keyword makes it
public for any read access, that is:
private readable $abc;
- class itself can read and write
- public for everybody when reading, inside & outside of the class
protected readable $abc;
- class itself can read and write
- sub-class can read and write
- public for everybody when reading, inside & outside of the class
public readable $abc;
- just as public alone
best regards
marcus
Wednesday, May 17, 2006, 12:13:22 AM, you wrote:
> Hello Marcus,
> Is this correct?
>
> private readable $abc;
> - doesn't make sense.
>
> protected readable $abc;
> - sub-class can read, not write
> - not visible outside class
> public readable $abc;
> - sub-class can read, and write
> - outside class can read, not write
> If not, please clarify.
> Thanks!
> --
> Best regards,
> Jason mailto:jason@ionzoft.com
> Tuesday, May 16, 2006, 5:49:45 PM, you wrote:
MB>> Hello Andi,
MB>> nothing else needs to be fixed. The patch considers a reference as a write
MB>> operation as well as anything else that doesn't identify itself as a read
MB>> operation. And the enforcement itself just means that whatever you define
MB>> besides readable is being ignored for read operations.
MB>> best regards
MB>> marcus
MB>> Tuesday, May 16, 2006, 11:41:31 PM, you wrote:
>>> Where would readable be enforced? Would it try and prevent getting
>>> references to it? Are there any internal functions/classes which need
>>> fixing to honor readable?
>>> I think these answers would really be helpful.
>>> Thanks.
>>> Andi
>>> At 02:37 PM 5/16/2006, Marcus Boerger wrote:
>>>>Hello Andi,
>>>>
>>>> that is why most here already switched to "public readable".
>>>>
>>>>best regards
>>>>marcus
>>>>
>>>>Tuesday, May 16, 2006, 11:31:14 PM, you wrote:
>>>>
>>>> > I can't quite explain it but for me the ability to work-around
>>>> > private with methods which are able to access the private variable,
>>>> > is different than marking a property as read-only but it not being
>>>> > read-only in all semantics. Probably because private variables do
>>>> > often have getters and setters, whereas something which is marked as
>>>> > read-only (like a harddrive) tends to be read-only always.
>>>>
>>>> > Andi
>>>>
>>>> > At 02:08 PM 5/16/2006, Zeev Suraski wrote:
>>>> >>>However, the reason i write this mail is that you said there could be
>>>> >>>problems. Well this is deply integrated in the handlers and they
>>>> >>>don't
>>>> >>>let you out. In other words if this stuff is not working then the whole
>>>> >>>PHP 5+ object model is broken. Or in other words, if this is broken
>>>> >>>alot
>>>> >>>of other stuff regarding object handling is already broken.
>>>> >>
>>>> >>You're probably right about this one. You can already return a
>>>> >>reference to a private variable today and change it. Andi - did you
>>>> >>mean something else?
>>>>
>>>>
>>>>
>>>>
>>>>Best regards,
>>>> Marcus
MB>> Best regards,
MB>> Marcus
Best regards,
Marcus