summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergei Izmailov <sergei.a.izmailov@gmail.com>2020-06-13 12:56:14 (GMT)
committerGitHub <noreply@github.com>2020-06-13 12:56:14 (GMT)
commit963b8da31e03d149eefb9d61033db9f7263728da (patch)
tree964cb607c2d67b93cf26eedcd8dae140438fa662
parente53fa89addc9659ad406298d27a6376d1eb53e0d (diff)
downloadDoxygen-963b8da31e03d149eefb9d61033db9f7263728da.zip
Doxygen-963b8da31e03d149eefb9d61033db9f7263728da.tar.gz
Doxygen-963b8da31e03d149eefb9d61033db9f7263728da.tar.bz2
Add namespace inline flag in xml output (#7828)
* Flag namespace as inline in xml output * Add inline namespace flag to innernamespace tag as well suggested by @mosra
-rw-r--r--src/xmlgen.cpp7
-rw-r--r--templates/xml/compound.xsd2
2 files changed, 7 insertions, 2 deletions
diff --git a/src/xmlgen.cpp b/src/xmlgen.cpp
index 3a649e9..593f69a 100644
--- a/src/xmlgen.cpp
+++ b/src/xmlgen.cpp
@@ -1150,7 +1150,8 @@ static void writeInnerNamespaces(const NamespaceSDict *nl,FTextStream &t)
if (!nd->isHidden() && !nd->isAnonymous())
{
t << " <innernamespace refid=\"" << nd->getOutputFileBase()
- << "\">" << convertToXML(nd->name()) << "</innernamespace>" << endl;
+ << "\"" << (nd->isInline() ? " inline=\"yes\"" : "")
+ << ">" << convertToXML(nd->name()) << "</innernamespace>" << endl;
}
}
}
@@ -1458,7 +1459,9 @@ static void generateXMLForNamespace(const NamespaceDef *nd,FTextStream &ti)
writeXMLHeader(t);
t << " <compounddef id=\"" << nd->getOutputFileBase()
- << "\" kind=\"namespace\" language=\""
+ << "\" kind=\"namespace\" "
+ << (nd->isInline()?"inline=\"yes\" ":"")
+ << "language=\""
<< langToString(nd->getLanguage()) << "\">" << endl;
t << " <compoundname>";
writeXMLString(t,nd->name());
diff --git a/templates/xml/compound.xsd b/templates/xml/compound.xsd
index e17d2fa..4df19ce 100644
--- a/templates/xml/compound.xsd
+++ b/templates/xml/compound.xsd
@@ -43,6 +43,7 @@
<xsd:attribute name="language" type="DoxLanguage" use="optional"/>
<xsd:attribute name="prot" type="DoxProtectionKind" />
<xsd:attribute name="final" type="DoxBool" use="optional"/>
+ <xsd:attribute name="inline" type="DoxBool" use="optional"/>
<xsd:attribute name="sealed" type="DoxBool" use="optional"/>
<xsd:attribute name="abstract" type="DoxBool" use="optional"/>
</xsd:complexType>
@@ -104,6 +105,7 @@
<xsd:extension base="xsd:string">
<xsd:attribute name="refid" type="xsd:string" />
<xsd:attribute name="prot" type="DoxProtectionKind" use="optional"/>
+ <xsd:attribute name="inline" type="DoxBool" use="optional"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>