At Sat, 12 May 2018 23:05:03 -0700 Greg Ercolano <e...@seriss.com> wrote:

> 
> On 05/12/18 08:47, Richard Damon wrote:
> > On 5/11/18 2:44 PM, Greg Ercolano wrote:
> >>
> >>     I'd like to use //!< to comment the function/method parameters,
> >>     but the coding style of the project seems to be causing trouble
> >>     when it's used on the last argument:
> >>
> >> __________________________________________________________________ snip
> >> [..]
> >> string AskApp(const char *cmd,          //!< command to send app
> >>               const string& arg) {      //!< argument to command   <-- 
> >> THIS DOESN'T WORK
> >>     if ( arg == "" ) {
> >> [..]
> >> __________________________________________________________________ snip
> >>
> >>     It seems doxygen can't deal with this bracing style,
> >>     with the opening brace being on the same line as the argument:
> >>
> >> warning: The following parameters of AddLetterDialog::AskApp(..) are not 
> >> documented: parameter 'arg'
> >> [..]
> >
> > My first guess is that the issue is the comment for the last argument is
> > no longer in the right context to refer to the argument, as it is no
> > long 'right after' the argument but is now inside the function.
> 
>       Right, for sure it's the coding style, which indent(1)
>       calls 'braces-on-func-def-line'.
> 
>       I'd considered going with:
> 
> >> string AskApp(const char *cmd,          //!< command to send app
> >>               const string& arg         //!< argument to command
> >>              ) {
> >>     if ( arg == "" ) {
> 
>       ..which seems to work, but kinda defeats the purpose of the
>       floating brace keeping the vertical size of the file small.
> 
>       I decided to just stick with @param, and ensure the proper
>       warning flags are enabled in Doxyfile.
> 
> > to place it in the right context. I personally use @param and look for
> > the warnings if things get out of sync.
> 
>       Right, I'm of the same opinion.
> 
>       It's too bad though; "//!<" is quite nice in that there's
>       no way the names can get out of sync. It also removes the
>       duplication of specifying the name twice; (once in docs,
>       once in the code)
> 
>       I'd log it as a bug, as I think doxygen should be able to
>       cleverly handle different coding styles, but then there's this..
> 
> > As to the parameters coming after the returns, that is like because the
> > documentation is produced in the order it is in the file, (there is no
> > implicit sorting of these paragraphs) so since the parameters are
> > documented after the returns, that is how the documentation is produced.
> 
>       Yes, it seems for instance even with '@param', if it appears after
>       \returns, that changes the order. Huh.
> 
>       And that pretty much puts to bed for me the idea of using '//!<'
>       this way.. unless there's a way to force \returns to appear
>       after params.
> 
>       Thanks for the help -- wanted to make sure I wasn't missing something.

What does this produce:

/** This is my function
 *
 */
 
int myfunction (int universe, //!< This is the first argument
                int everything  //!< This is the second argument
                /**
                  * \returns An integer
                  */
                ) {
   return 42;
}

(Yes, this is probably really hokey...)



> 
> 
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Doxygen-users mailing list
> Doxygen-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/doxygen-users
> 
>                                                                               
>                                               

-- 
Robert Heller             -- 978-544-6933
Deepwoods Software        -- Custom Software Services
http://www.deepsoft.com/  -- Linux Administration Services
hel...@deepsoft.com       -- Webhosting Services
                                                                                
                         

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Doxygen-users mailing list
Doxygen-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/doxygen-users

Reply via email to