cppalliance / mrdocs

MrDocs: A Clang/LLVM tool for building reference documentation from C++ code and javadoc comments.
https://mrdocs.com
Other
66 stars 16 forks source link

Alias templates are not qualified #587

Closed alandefreitas closed 1 month ago

alandefreitas commented 1 month ago

This issue has been split from #480 (Features missing for Boost.URL) as it turned out to be more complex than we initially thought.

Aliases are documented with the alias itself on the right-hand side: using error_category = error_category; (now they are using error_category = system::error_category;, which is not relative to the current alias namespace as in https://www.boost.org/doc/libs/master/libs/url/doc/html/url/ref/boost__urls__error_category.html.

I don't know if this has been completely fixed by @fpelliccioni's changes but we have to compare that with whatever doxygen does here.

alandefreitas commented 1 month ago

It seems like the original example, using error_category = error_category, is a little better now. It says system::error_category on the right-hand side. But we have other cases that are just as bad:

template<class T>
using optional = optional<T>;

We need to do what doxygen does here and we can try to be fancy later. In other words, just the fully qualified name on the right-hand side, and we call it a day.

@sdkrystian I'm assigning you here because I tried to fix this once and you had to revert it because I broke something else.