Re: listing inherited properties
| From: | Richard Quadling | Date: | Thu, 29 Apr 2010 10:42:00 +0000 |
| Subject: | Re: listing inherited properties | ||
| References: | 1 2 3 4 5 6 | Groups: | php.doc |
| Request: | Send a blank email to phpdoc+get-969381767@lists.php.net to get a copy of this message | ||
On 29 April 2010 10:26, Hannes Magnusson <hannes.magnusson@gmail.com> wrote:
> On Thu, Apr 29, 2010 at 10:56, Richard Quadling
> <rquadling@googlemail.com> wrote:
>> On 29 April 2010 09:49, Hannes Magnusson <hannes.magnusson@gmail.com> wrote:
>>> On Thu, Apr 29, 2010 at 10:27, Richard Quadling
>>> <rquadling@googlemail.com> wrote:
>>>> On 29 April 2010 08:50, Peter Cowburn <petercowburn@gmail.com> wrote:
>>>>> On 29 April 2010 08:18, Philip Olson <philip@roshambo.org> wrote:
>>>>>>
>>>>>> Moments ago Yawk asked in IRC about why we list inherited methods but not
>>>>>> inherited properties. Good question. So unless someone comes up with a reason, let's add them
>>>>>> too. Okay? It can use the same form of xpointer inside the classname.xml files.
>>>>>
>>>>> Good call, thanks yawk! I've had a number of folks in the past ask my
>>>>> about why a certain class constant is available but not in the docs so
>>>>> it would be good to have them listed in the class synopsis.
>>>>>
>>>>> While we're on the topic, if anyone is looking to go through some
>>>>> classes to add in these inherited constants then it would be worth
>>>>> checking for inherited methods as well since not all classes have them
>>>>> listed.
>>>>
>>>> As a test, I used the SPL's RunTimeException.
>>>>
>>>> <xi:include
>>>> xpointer="xmlns(db=http://docbook.org/ns/docbook)
>>>> xpointer(id('class.exception')/descendant::db:fieldsynopsis)" />
>>>>
>>>> works, but it includes the private properties.
>>>>
>>>> How can I extend that to exclude <modifier>private</modifier>
>>>>
>>>> I've tried ...
>>>>
>>>> <xi:include
>>>> xpointer="xmlns(db=http://docbook.org/ns/docbook)
>>>>
>>>> xpointer(id('class.exception')/descendant::db:fieldsynopsis[modifier!='private'])"
>>>> />
>>>>
>>>>
>>>>
>>>> I also see that the private methods are inherited. Clearly not right
>>>> as you cannot call the base class's private method in a sub-class.
>>>>
>>>
>>>
>>> I didn't even realize that built-in classes had private
>>> properties/methods. Seems utterly useless to tell the end-user that.
>>>
>>> The problem here however is when a fieldsynopsis has a xml:id.
>>> Thats gonna duplicate the ID and break the build..
>>>
>>> I do however not have an alternative suggestion as doing this in PhD
>>> would become crazy complicated really fast.
>>>
>>
>> Surely that is no different to a methodsynopsis having an id?
>
> They usually don't.
>
> With fieldsynopsis however I think we often have xml:id so we can link
> to a specific property when they are shown on the classreference page.
>
> -Hannes
>
I've just done a search in phpdoc/en for ...
<fieldsynopsis
In all cases (all 614 of them), I'm finding this as ...
<fieldsynopisis>
with no attributes.
--
-----
Richard Quadling
"Standing on the shoulders of some very clever giants!"
EE : http://www.experts-exchange.com/M_248814.html
EE4Free : http://www.experts-exchange.com/becomeAnExpert.jsp
Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731
ZOPA : http://uk.zopa.com/member/RQuadling