Doxygen可以识别std :: shared_ptr或std :: map

时间:2016-03-09 11:11:44

标签: c++ doxygen

是否可以教Doxygen将std::shared_ptr<T>类型的成员识别为聚合?我认为它适用于普通指针,尽管我添加了BUILTIN_STL_SUPPORT=YES

这个问题也延伸到std::unique_ptr,它应该是一个组合,我认为std::map<K,V>std::vector<V>等可以记录为具有多重性1 ... N的组合,尽管我是我确定在所有情况下都不想要这个。

如果Doxygen无法做到这一点,我会对C ++的替代文档系统感兴趣。

1 个答案:

答案 0 :(得分:2)

从版本1.8.14开始,当std::shared_ptr<T>开启时,Doxygen不会将BUILTIN_STL_SUPPORT添加到std类的内部列表中。

但通过修改Doxygen源来添加它相对容易。在src/doxygen.cpp中,有一个全局变量g_stlinfo,它包含标准类的定义。此外,同一类中的addSTLClasses()函数具有智能指针类的分支。

请参阅this changeset以获取最小化更改以启用shared_ptr支持。

不幸的是,我还没有回答你的其余问题。