jessevdk / cldoc

clang based documentation generator for C and C++
GNU General Public License v2.0
552 stars 58 forks source link

Hiding implementation details from cldoc? #107

Closed cbiffle closed 6 years ago

cbiffle commented 9 years ago

Forgive me if this is mentioned in the documentation, I didn't see it.

I maintain a large library that contains some functions and classes that are internal implementation artifacts. I would like them not to appear in the doc index.

With Doxygen I have two preferred ways of tackling this:

  1. Don't document them. They do not appear by default.
  2. Mark them @internal.

I would like to see something resembling the second (@internal) in cldoc, if it is not already present.

atuleu commented 8 years ago

@cbiffle : One simple trick that can even be better, place all the symbols in an "Internal" category, and document #<cldoc:Internal>

It will not strip away all the documentation (but if its catched by cldoc, it means that it should certainly be documented), but at least put it somewhere where people will know that if they look their, they will look for some stuff they may just not need.

I do this for forward declaration of fully hidden dependencies. I just put this in a "Forward Declarations" category

jessevdk commented 6 years ago

The convention in cldoc is that if it's public and documented, it should be exposed. If you don't want it to appear, move such things into separate files and exclude them from cldoc.