Re: RE: PHP and aggregated Objects

Jens Miltner <[email protected]>
Newsgroups gmane.text.doxygen.devel
Message-ID <[email protected]>
Am 26.09.2005 um 10:34 schrieb Sönke Ruempler:

> Hi,
>
> really no idea about that?

Hmmh, never tried with any php sources. However, I found that I have  
to move the description of the member variable into a separate line  
in order to get it into the documentation:

class Test
{
public:
     /*!
      * @var const foo* bar
      * \brief a member variable
      */
     int    bar;
};

(Note that the type difference between the actual declaration and the  
documentation is deliberately in this case, because I wanted to check  
that the documented type is actually used).
Maybe using a similar approach may work with php sources?

HTH,
</jum>

>
> Sönke Ruempler <> wrote on Friday, September 16, 2005 8:20 AM:
>
>
>> Hi,
>>
>> no one answered to my mail on the users list so I hope the
>> developers and insiders may have an answer for me.
>>
>> Here the mail I sent to the users mailing list:
>>
>> Sönke Ruempler <mailto:[email protected]> wrote on
>> Wednesday, September 14, 2005 11:19 AM:
>>
>>
>>> I'm using doxygen (1.4.4-20050815) for documenting my PHP(5)  
>>> projects
>>> and it works really nice, especially the graphical features.
>>>
>>> But I ran into a little problem. Doxygen has the feature to show
>>> aggregated objects in class members with violett dashed lines. This
>>> does not work right for me with PHP class.
>>>
>>> 1. PHP does not have type hints in class members.
>>>
>>> Example:
>>>
>>> class Blah {
>>>     protected $blah = NULL;
>>> }
>>>
>>> So I tried to make it via @var:
>>>
>>> class Blah {
>>>     /**
>>>      * @var    Some_Aggregated_Class    This is an aggregated class
>>>
> .....      */
>
>>>     protected $blah = NULL;
>>> }
>>>
>>> But doxygen seems to ignore that. Even the description is not shown.
>>>
>>> Now I tried a little bit further and changed the member declaration
>>> into:
>>>
>>>     protected Some_Aggregated_Class $blah = NULL;
>>>
>>> That works for doxygen, it adds "Some_Aggregated_Class" to the
>>> collaboration diagram of "Blah", but it's no valid PHP syntax.
>>>
>>>
>>> 2. Wrong behaviour with static members and constants:
>>>
>>> class Blah {
>>>     static public $var = 0;
>>>     const some_constant = 'huh';
>>> }
>>>
>>> Doxygen treats them as class types and shows `const' and `static' as
>>> classes in collaboration diagram.
>>>
>>
>>
>> Any help would be appreciated.
>>


-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.