[prev in list] [next in list] [prev in thread] [next in thread]
List: doxygen-users
Subject: [Doxygen-users] Documenting templates/specializations
From: Dan Delgado <dandelgado () optonline ! net>
Date: 2005-07-31 21:03:48
Message-ID: 200507311703.48318.dandelgado () optonline ! net
[Download RAW message or body]
I've not been able to generate Doxygen docs for my template classes. I looked
at the first url below and was able to generate a template if I removed the
specialization and the @class / @brief lines. The second URL seems to
indicate that what I want to be done can be done. I am using 1.4.2
http://www.bearcave.com/software/templates/doxygen_docs/hierarchy.html
http://software.sandia.gov/trilinos/packages/docs/r5.0/packages/anasazi/doc/html/annotated.html
Excerpts from the "bad" attempt:
/**
* @class Pointer Pointer.h
* @brief An abstraction of a pointer type that helps enforce correct use
through type-checking.
*
* Template parameters:
* T : The type of object that Pointer points to in memory.
* canBeDeleted: A boolean used to indicate whether it is
* legal to delete the Pointer object. The default is NON_DELETABLE.
* AllocationPolicy: A Concept/Policy class that defines, at minimum
* create() and destroy(T*) methods.
*/
template <typename T,
bool canBeDeleted = PointerType::NON_DELETABLE,
template <typename> class AllocationPolicy = OperatorNewAllocator>
class Pointer
{
public:
/**
* @brief Default constructor.
* Creates a "null" pointer of type T.
* @exception None
*/
Pointer() : ptr_(0)
{}
...
};
/**
* @class Pointer Pointer.h <sw_memory/Pointer.h>
* @brief Specialization of Pointer representing deletable pointers.
*
*/
template <typename T,
template <typename> class AllocationPolicy>
class Pointer<T, PointerType::DELETABLE, AllocationPolicy>
{
public:
/**
* @brief Default constructor.
* @exception None
* Creates a "null" pointer of type T.
*/
Pointer() : ptr_(0)
{}
...
};
Removing the @class/brief and just placing
@param T ...
@param canBeDeleted ...
@param AllocationPolicy ....
allows the first template (primary) to appear with method docs (and no
class/brief of course) but I must ALSO remove the specialization for this to
work. If I add the @params to both, only the second (specialization) appears.
Thanks and sorry for the bother!
---Dan
-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Doxygen-users mailing list
Doxygen-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/doxygen-users
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic