<?xml version="1.0" encoding="UTF-8"?> <!-- This XSL transform converts Doxygen XML output for a header file into Sphinx/Breathe compatible list of APIs --> <!-- Usage: xsltproc doxygen_xml_to_rst.xslt xml/esp__xxxx_8h.xml --> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text" encoding="UTF-8"/> <xsl:template match="/"> <xsl:text>Macros
</xsl:text> <xsl:text>^^^^^^

</xsl:text> <xsl:for-each select="doxygen/compounddef/sectiondef/memberdef[@kind='define']"> <xsl:text>.. doxygendefine:: </xsl:text> <xsl:value-of select="name"/> <xsl:text>
</xsl:text> </xsl:for-each> <xsl:text>
</xsl:text> <xsl:text>Type Definitions
</xsl:text> <xsl:text>^^^^^^^^^^^^^^^^

</xsl:text> <xsl:for-each select="doxygen/compounddef/sectiondef/memberdef[@kind='typedef']"> <xsl:text>.. doxygentypedef:: </xsl:text> <xsl:value-of select="name"/> <xsl:text>
</xsl:text> </xsl:for-each> <xsl:text>
</xsl:text> <xsl:text>Enumerations
</xsl:text> <xsl:text>^^^^^^^^^^^^

</xsl:text> <xsl:for-each select="doxygen/compounddef/sectiondef/memberdef[@kind='enum']"> <xsl:text>.. doxygenenum:: </xsl:text> <xsl:value-of select="name"/> <xsl:text>
</xsl:text> </xsl:for-each> <xsl:text>
</xsl:text> <!-- TODO: figure out why structures are listed as innerclass instances --> <xsl:text>Structures
</xsl:text> <xsl:text>^^^^^^^^^^

</xsl:text> <xsl:for-each select="doxygen/compounddef/innerclass"> <xsl:text>.. doxygenstruct:: </xsl:text> <xsl:value-of select="."/> <xsl:text>
</xsl:text> <xsl:text> :members:
</xsl:text> <xsl:text>
</xsl:text> </xsl:for-each> <xsl:text>
</xsl:text> <xsl:text>Functions
</xsl:text> <xsl:text>^^^^^^^^^

</xsl:text> <xsl:for-each select="doxygen/compounddef/sectiondef/memberdef[@kind='function']"> <xsl:text>.. doxygenfunction:: </xsl:text> <xsl:value-of select="name"/> <xsl:text>
</xsl:text> </xsl:for-each> <xsl:text>
</xsl:text> </xsl:template> </xsl:stylesheet>