Class Methods in cpp files

Help
2003-01-29
2003-02-24
  • Richard Urwin

    Richard Urwin - 2003-01-29

    In my current project I need to document the cpp files as well as the h files. (The interface is not limited to the h files for good reasons.)
    Class methods in the cpp files are added to the documentation as global functions, and their h file counterparts are documented as class functions. Is there any way to get ccdoc to merge the two definitions in its database? Or will I have to force ccdoc to ignore each class method in the cpp file?

     
    • Joe Linoff

      Joe Linoff - 2003-02-19

      Hi Richard:

      The documenting of class methods as global functions was a bug that has been fixed in the latest release (v08r36).

      Please download that version and see whether you still have problems. If you do, let me know as soon as possible so that I can get them fixed.

      Cheers,

      Joe

       
    • Joe Linoff

      Joe Linoff - 2003-02-20

      Hi Richard:

      I was wrong in my previous response to you. The recent fixes to ccdoc were to handle templates not standard class method implementations.

      If you really need to document the interface and the implementation, I suggest that you use doxygen. It is an excellent tool that is available on sourceforge that was designed for this sort of thing. Ccdoc is not designed to handle implementations.

      Having said that, if there are specific problems (like documenting class method implementations as globals functions) that you want fixed, I will be happy to put those in.

      Cheers,

      Joe

       
      • Richard Urwin

        Richard Urwin - 2003-02-20

        I have been using doxygen, since ccdoc did not do what I needed. doxygen comes with a lot of baggage, so I would be more able to get ccdoc accepted by the team. It is a pity that the two packages require different syntax (eg single line comments.)

         
    • Joe Linoff

      Joe Linoff - 2003-02-20

      Hi Richard:

      The problem with documenting class method implementations as global functions has been fixed. It is reported as issue 0158 on the ccdoc web site (ccdoc.sourceforge.net) under issues.

      I will release r37 with that fix on Friday unless you have an urgent need for it tomorrow.

      Cheers,

      Joe

       
    • Joe Linoff

      Joe Linoff - 2003-02-20

      Hi Richard:

      I am glad the doxygen is working out for you.

      Can you suggest some specific changes that I can make to ccdoc so that it is more compatible with doxygen? That way folks could use either one.

      Cheers,

      Joe

       
      • Richard Urwin

        Richard Urwin - 2003-02-21

        I am sending you directly a fragment of my code and the relevant doxygen output, showing, I think, most of the differences between ccdoc and doxygen that I ran into. In order of importance:

        1. Single line comments use a different flag. That's a lot of edits to make!
        2. @link uses @endlink to delimit it, rather than the end-of-line. The @endlink appears in the ccdoc output.
        3. doxygen uses @file to document files. You could just ignore this flag. At the moment it appears in ccdoc documentation.
        4. doxygen allows a virtual grouping of definitions that is very useful (@name and @{)

         
    • Joe Linoff

      Joe Linoff - 2003-02-21

      Hi Richard:

      I have updated v08r37 to

      1) support doxygen style single line comments
      2) ignore the @endlink directive
      3) ignore @file comment blocks

      I was not able to quickly fix the grouping because of a semantics conflict. I will try to get to it soon.

      This release is available now from ccdoc.sourceforge.net if you are using windows or solaris. I can't login onto cf.sourceforge.net to do the linux ports so they won't be available until later.

      Cheers,

      Joe

       
      • Richard Urwin

        Richard Urwin - 2003-02-24

        That's great, thanks.

         

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks