summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2017-12-24 09:33:59 (GMT)
committerGitHub <noreply@github.com>2017-12-24 09:33:59 (GMT)
commitef77c30f9fbdb46dd78795cdb0a325eb8c29cf2f (patch)
tree328b31f3cd81858e24ea31041b74e7e62158f84f
parent8acdd3ca5719be461674847341a6d9f93a27f367 (diff)
parent21f0ca0085c034a37df07c1ab690472bada0a1f1 (diff)
downloadDoxygen-ef77c30f9fbdb46dd78795cdb0a325eb8c29cf2f.zip
Doxygen-ef77c30f9fbdb46dd78795cdb0a325eb8c29cf2f.tar.gz
Doxygen-ef77c30f9fbdb46dd78795cdb0a325eb8c29cf2f.tar.bz2
Merge pull request #626 from mosra/xml-using-templates
Provide template parameters also for type aliases in the XML output
-rw-r--r--src/xmlgen.cpp5
-rw-r--r--testing/067/067__using_8cpp.xml32
-rw-r--r--testing/067_using.cpp7
3 files changed, 40 insertions, 4 deletions
diff --git a/src/xmlgen.cpp b/src/xmlgen.cpp
index 6e8c4cc..28809db 100644
--- a/src/xmlgen.cpp
+++ b/src/xmlgen.cpp
@@ -791,10 +791,7 @@ static void generateXMLForMember(MemberDef *md,FTextStream &ti,FTextStream &t,De
md->memberType()!=MemberType_Enumeration
)
{
- if (md->memberType()!=MemberType_Typedef)
- {
- writeMemberTemplateLists(md,t);
- }
+ writeMemberTemplateLists(md,t);
QCString typeStr = md->typeString(); //replaceAnonymousScopes(md->typeString());
stripQualifiers(typeStr);
t << " <type>";
diff --git a/testing/067/067__using_8cpp.xml b/testing/067/067__using_8cpp.xml
new file mode 100644
index 0000000..c278161
--- /dev/null
+++ b/testing/067/067__using_8cpp.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="">
+ <compounddef id="067__using_8cpp" kind="file" language="C++">
+ <compoundname>067_using.cpp</compoundname>
+ <sectiondef kind="typedef">
+ <memberdef kind="typedef" id="067__using_8cpp_1a1b01c504448c96cd2191a5184dd31acf" prot="public" static="no">
+ <templateparamlist>
+ <param>
+ <type>class T</type>
+ </param>
+ </templateparamlist>
+ <type>std::vector&lt; T &gt;</type>
+ <definition>using Vec = std::vector&lt;T&gt;</definition>
+ <argsstring/>
+ <name>Vec</name>
+ <briefdescription>
+ <para>A vector. </para>
+ </briefdescription>
+ <detaileddescription>
+ </detaileddescription>
+ <inbodydescription>
+ </inbodydescription>
+ <location file="067_using.cpp" line="7" column="1" bodyfile="067_using.cpp" bodystart="7" bodyend="-1"/>
+ </memberdef>
+ </sectiondef>
+ <briefdescription>
+ </briefdescription>
+ <detaileddescription>
+ </detaileddescription>
+ <location file="067_using.cpp"/>
+ </compounddef>
+</doxygen>
diff --git a/testing/067_using.cpp b/testing/067_using.cpp
new file mode 100644
index 0000000..eb2f5cc
--- /dev/null
+++ b/testing/067_using.cpp
@@ -0,0 +1,7 @@
+// objective: test template parameters for a type alias
+// check: 067__using_8cpp.xml
+
+/** \file */
+
+/** @brief A vector */
+template<class T> using Vec = std::vector<T>;