Sam Varshavchik wrote:
...
> The thing is, though, is that vectorObj<constraint> is not
> really a discrete class, in C++. It's an instance of a
> template class. All methods defined in the template become
> the same methods in the class instance. Same parameters,
> etc… Everything that's documented for the template class
> becomes applicable to the template class instance.

An instance of a template class is a discrete class (type),
that's the whole point.  However:

From the point of view of doxygen we expect doxygen to direct
every instantiation of the template to the template docs.

...
> But, doxygen is not seeing any documentation for those
> inherited methods, of course, because they're in external
> header files. That's the whole purpose of tagfiles, to split
> up the documentation, but still link to them. But, you can
> inherit from stuff declared externally.

> I think that what we really want to happen here is for
> GENERATE_TAGFILE to also include the raw, unformatted
> documentation in the exported tagfile. So, when you bring
> it in via TAGFILES, doxygen would know the documentation for
> the external classes that get imported, and can grab them
> via INHERIT_DOCS.

> I'm not overriding or redefining the inherited methods in the
> subclass. So, having the inherited methods documented isn't
> really a big deal; just suppressing warnings for imported,
> and undocumented, stuff would also be fine.

> Or, one hack would be for doxygen to generate a link to the
> supeclass's methods, when a subclass inherits methods from a
> class that's imported, just to a \see parent::method in lieu
> of missing documentation.

I agree with your assessment.  (Is it safe to assume that you
have tried setting INHERIT_DOCS=NO and that that does get rid
of the warnings?)

One question outstanding in all this is whether things are any
different with a non-template base class?  It seems likely that
the same problem exists for simple classes and discussing it in
terms of templates is just making it more complicated.

It may be that you could create a simpler demonstration of the
issue using non-template types - and use that to ask for an
enhancement to doxygen.

-- 
Geoff Worboys
Telesis Computing Pty Ltd


------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
Doxygen-users mailing list
Doxygen-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/doxygen-users

Reply via email to