[Doxygen-users] problem with class hierarchies with templates
Brought to you by:
dimitri
|
From: Kris T. <kri...@cs...> - 2001-06-13 22:15:48
|
Hi,
this is essentially a repost of a half-year old question, prompted by the
following in the Changelog of version 1.2.8.1
---------------------
The dot generated inheritance and collaboration graphs for classes should
now show the proper template instantation for the derived/used classes. For
instance it should show that class S uses class V (indirectly) in the
following example:
class V {};
template<class T> class U1 { T *m_t; };
template<class T> class U2 { U1<T> *m_t; };
template<class T> class B1 { U2<T> *m_t; };
template<class T> class B2 : public B1<T> {};
class S : public B2<V> {};
---------------------
So, I went and tried this new version on my code. However, the Class
Hierarchy (as documented in hierarchy.html) is still wrong. The simplest
example of my problem is the following hierarchy
//! V
class V {};
//! K
template <class T> class K : public T {};
//! KV
class KV : public K<V> {};
In the Class Hierarchy, it is not recognised that the hierarchy is KV : K<V>
: V. (It just mentions KV: K)
Dimitri mentioned at the time that handling the above example wouldn't be
too difficult, but he wasn't sure about the most general case. I'm sort of
thinking that a fix for the simple cases would make already a lot of people
happy... Any developments? (This problem really screws up the documentation
of our project).
Just doing what the Changelog tells me:
---------------------
Please report any example of class hierarchies that are not shown properly.
---------------------
All the best,
Kris Thielemans
PS: please reply to me personally as well, as I'm not on the mailing list
anymore.
|