私のライブラリには、次の形式の関数オーバーロードがたくさんあります。
/// \brief Does thing.
///
/// \details The thing that is done is very special.
template<typename T>
void do_stuff(const T& t);
/// \brief Does thing repeatedly.
/// \copydetails do_stuff()
template<typename T>
void do_stuff(const T& t, std::size_t x);
これは、一般的に機能し、非常に優れていますが、同じドキュメントセクションを複数回作成します。私が望むのは、これらの機能をグループ化することです。詳細な説明と、簡単な説明で注釈が付けられた各オーバーロードがあります。また、このようなことを行うエイリアスや入力フィルターも嫌いではありません。
これが想像できる1つの方法は次のとおりです。
ドキュメントの結果は次のようになります。
template<typename T>
void do_stuff(const T& t); (1)
template<typename T>
void do_stuff(const T& t, std::size_t x); (2)
The things that is done is very special.
(1) Does thing.
(2) Does thing repeatedly.
もちろん、新しいページを作成してその種のドキュメントを手動で書くことはできますが、そのページで関数宣言を繰り返してから、実際の関数ドキュメントへのリンクを打ち込む必要がありますが、それは他の何よりもハックです。
これを簡単に達成する方法はありますか?それを doxygen にハックするヒントさえあれば幸いです。