summaryrefslogtreecommitdiffstats
path: root/src/xmlgen.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Added 'constexpr' as attribute label and to XML outputDimitri van Heesch2019-01-131-0/+5
|
* Added noexcept attribute to the XML outputDimitri van Heesch2019-01-131-0/+5
|
* Added declfile, declline, and declcolumn attributes to the location element ↵Dimitri van Heesch2019-01-121-1/+7
| | | | in the XML output
* Moved check for page having a title to hasTitle() methodDimitri van Heesch2018-12-311-2/+2
|
* Properly handle empty TOC in XML output.Vladimír Vondruš2018-12-291-2/+2
| | | | | | Caused the test (079) to fail with a SIGSEGV, but larger projects exit with a success return code and the generated XML is either truncated or empty. Weird.
* Renamed option and test case numbersDimitri van Heesch2018-12-261-6/+11
|
* Merge branch 'xml-namespace-members-in-file-scope' of ↵Dimitri van Heesch2018-12-261-2/+2
|\ | | | | | | https://github.com/mosra/doxygen into mosra-xml-namespace-members-in-file-scope
| * Make it possible to list namespace members in file scope for XML output.Vladimír Vondruš2018-02-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For better consistency with the HTML output, where each file documentation lists (and links to) all members of given namespace. This also makes it possible to be consistent with the HTML output in case a namespace is not documented and thus all its member detailed docs should be put into corresponding file docs instead. In order to be backwards compatible and avoid breaking stuff for existing users of the XML output, this is controlled by a new XML_NAMESPACE_MEMBERS_IN_FILE_SCOPE configuration option that defaults to NO. Note that this, unlike the HTML output, will put the whole detailed docs into the file scope instead of just listing them. It's up to the user of the XML output to deduplicate this information. It can be done for example by comparing member ID prefixes with compound ID -- íf different, the detailed docs are already somewhere else.
* | Added *.ice files as a recognized file type.Mark Spruiell2018-10-221-14/+18
| | | | | | | | Added a Slice-optimized output mode.
* | Merge pull request #6482 from abathur/sql3Dimitri van Heesch2018-10-221-131/+102
|\ \ | | | | | | update to the experimental sqlite3 generator
| * | declares XMLCodeGenerator in xmlgen.hTravis A. Everett2018-08-291-131/+102
| | | | | | | | | | | | | | | | | | | | | In order for sqlite3gen to re-use parts of the XML generator, XMLCodeGenerator needs to be declared in a header file. I parroted how other generators handle this and have it working in both the XML and sqlite3 outputs, but I don't have any sense of whether this is otherwise "right".
* | | Update xmlgen.cppArmin Müller2018-10-151-1/+1
| | |
* | | Fixing problem with possible not initialized variable (endless loop in VS ↵albert-github2018-09-121-4/+4
|/ / | | | | | | | | | | 2017 debug) The not initialized variable `l` caused and endless loop in the VS2017 debug version, variable should not have been used.
* | Moved local toc data into a separate type for better encapsulationDimitri van Heesch2018-07-221-2/+2
| |
* | Enable in page table of contents for XML and add maximum level to in page ↵albert-github2018-07-121-3/+56
| | | | | | | | | | | | | | table of contents - add the in page table of contents for XML - add the possibility to have maximum levels in the in page table of contents (possible per output type and per in page table of contents. Default is show all)
* | Misc. typosluz.paz2018-04-251-1/+1
|/ | | | Found via `codespell`
* XML output: avoid warnings with scoped enum values in anonymous namespaces.Vladimír Vondruš2017-12-291-3/+3
| | | | | | | | | | | | | | | | | | | | | | When a C++11 `enum class` was present in an anonymous namespace (usually in *.cpp files), the XML output was emitting warnings similar to the following: Internal inconsistency: member False does not belong to any container! And the XML output was rendering bogus IDs for enum values starting with `dummy_`, such as: dummy_1a96ab6574751fdf6a53ceec8a3896c45daf8320b26d30ab433c5a54546d21f414c The fix is to call memberOutputFileBase() on the enumeration itself and not on the enum value, that way it provides correct file base that corresponds to file base of the enumeration. There's also a new test that checks this. Note: this assumes that enum values belong to the same compound as enums themselves. In my experience that was always the case and there's no broken test after this change, so I hope I didn't break anything.
* Merge pull request #627 from mosra/xml-strong-typed-enumsDimitri van Heesch2017-12-241-0/+14
|\ | | | | Full support for strong and typed enums in the XML output
| * Provide information about enum type "strongness" in the XML output.Vladimír Vondruš2017-11-291-0/+7
| | | | | | | | | | | | | | There's a new boolean `strong` attribute on the `<memberdef>` element that defines whether the enum is a classic or a strong one. Tests were updated to verify both cases.
| * Expose underlying enum type in the XML output.Vladimír Vondruš2017-11-291-0/+7
| | | | | | | | | | | | | | | | | | | | | | The <type> element (used for function return type and variable type) is now reused also for underlying enum type. C++03-style enum types that don't have the underlying type specified have the <type> tag as well, but empty to indicate that the underlying type is unspecified. Added a new test case for this.
* | Merge pull request #626 from mosra/xml-using-templatesDimitri van Heesch2017-12-241-4/+1
|\ \ | | | | | | Provide template parameters also for type aliases in the XML output
| * | Provide template parameters also for type aliases in the XML output.Vladimír Vondruš2017-11-281-4/+1
| |/ | | | | | | | | | | | | | | | | | | | | Until now, probably due to C++03 assumptions, typedefs and type aliases skipped printing of the template parameter specifications to the XML output. That's now fixed, so the following type alias will properly contain <templateparamlist> in the XML output: template<class T> using Vec = std::vector<T>; Added also a test case that verifies this.
* | Merge pull request #625 from mosra/xml-tableofcontentsDimitri van Heesch2017-12-241-0/+4
|\ \ | | | | | | Expose TOC placeholder in XML output
| * | Expose TOC placeholder in XML output.Vladimír Vondruš2017-11-291-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the XML output for a page was generated the same independently of whether the \tableofcontents command was present in the page source or not. Because of that, the users of the XML output had no chance of knowing whether given page should have a TOC or not. There's now a new <tableofcontents> element that gets added in case the TOC was requested. As it is trivial to populate the TOC on user side by simply enumerating the <sectN> elements, the element is empty and acts just as a boolean.
* | | Merge pull request #624 from mosra/xml-page-briefdescriptionDimitri van Heesch2017-12-241-0/+3
|\ \ \ | |/ / | | | Provide page brief in <briefdescription> of XML output
| * | Provide page brief in <briefdescription> of XML output.Vladimír Vondruš2017-11-251-0/+3
| |/ | | | | | | | | | | | | | | | | | | | | Until now the brief description of pages was prepended to the <detaileddescription> element and the <briefdescription> element was not present at all, which meant there was no easy way to extract the brief description for purposes of creating a page index, for example. With this patch, the brief description is included in both <briefdescription> and <detaileddescription>, thus duplicated, to avoid backwards compatibility issues.
* | Encode invalid XML characters instead of skipping them.Vladimír Vondruš2017-11-251-1/+3
|/ | | | | | | | | | | | | | | | | | | The <sp> element in <programlisting> has a new optional attribute `value`, which contains value of given invalid ASCII character. In case of space, the `value` attribute is omitted. Use cases for this: including snippets of *very esoteric* languages, markup that makes use of the advanced ASCII formatting characters or for example highlighting a console output containing ANSI color codes (which is my case, in fact). Regarding backwards compatibility -- as files with such ASCII characters are very rare, I don't expect this minor difference in the output to be a problem. Besides that, such ASCII characters are often replaced by a space in many applications anyway. A test snippet was extended to contain a special character so this difference in behavior could be verified.
* Fix for regression in XML output generation after fixing bug 789168Dimitri van Heesch2017-11-191-1/+1
|
* Bug 776791 - [1.8.13 Regression] Segfault building the breathe docsalbert-github2017-01-041-1/+1
| | | | Protected against NULL pointer of variable al
* Bug 771152 - C++11 ref-qualifiers do not appear in Member Function ↵Dimitri van Heesch2016-09-211-0/+7
| | | | Documentation section
* sqlite3gen: sync with xmlgenAdrian Negreanu2016-08-091-0/+1
| | | | | Modified the memberdef table so that it includes all elements xmlgen dups for a memberdef.
* Bug 764656 - generated xml has errorsalbert-github2016-04-061-1/+1
| | | | Value of <float> in bitfield was not escaped when writing to XML
* Changed configuration mechanism to directly access options in order to ↵Dimitri van Heesch2016-01-171-14/+14
| | | | improve performance
* Further cmake changesDimitri van Heesch2015-05-311-2/+2
| | | | | | | - made static build option for all windows targets - made wizard flex interactive - add 64bit support for libiconv on windows build - updated test mechanism
* xml: use STRIP_FROM_PATH on @file attributes.Adrian Negreanu2015-04-171-5/+5
|
* Fixes for showing type constraint relationsDimitri van Heesch2015-03-151-0/+6
|
* Bump copyright yearDimitri van Heesch2015-02-261-1/+1
|
* Fixed a couple of cases where sharing string data could lead to corruptionDimitri van Heesch2015-01-021-1/+1
| | | | | Also made dangerous string access more visible by introducing rawData(). This replaces data() which will now return a constant string.
* Fixed several Coverity warningsDimitri van Heesch2014-11-151-16/+15
|
* Added language attribute to XML output for classes, namespaces, and filesDimitri van Heesch2014-11-151-5/+8
|
* Introduced template directory for template and resource files and resource ↵Dimitri van Heesch2014-11-131-79/+7
| | | | compiler & manager
* Bug 733722 - XML Output invalid: XML_PROGRAMLISTING=YES copies Unicode form ↵Dimitri van Heesch2014-08-151-6/+11
| | | | feed character (U+000C) to XML files
* Bug 733451 - volatile declaration on member functions is not handled as xml ↵Dimitri van Heesch2014-08-081-1/+5
| | | | attribute
* Documentation generator: added support for C# property accessors visibility ↵Maksim Osipov2014-07-041-0/+16
| | | | modifiers.
* Bug 674851 - Percent to prevent auto-linking in page title is not removed ↵albert-github2014-02-171-1/+1
| | | | | | for navpath remove the % sign from some relevant places. The % sign is to prevent automatic linking.
* Updated copyrightDimitri van Heesch2014-02-111-1/+1
|
* Fixed off-by one error for last character in compound.xsdDimitri van Heesch2014-02-101-1/+1
|
* fixed compile issue on LinuxDimitri van Heesch2014-02-101-1/+1
|
* Restructered html entity handlingDimitri van Heesch2014-02-101-38/+23
|
* Recognize all HTML4 special character entitiesalbert-github2014-02-081-1/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In doxygen a limited number of HTML4 special character entities are recognized, with this patch the full list of HTML4 special character entities (see http://www.w3.org/TR/html4/sgml/entities.html) is supported (as far as they can be represented in the output format). - doxygen_manual.tex - latexgen.cpp Added wasysym package to support per thousand sign (perthousand command from textcomp didn't work properly) Added option for textcomp package so currency symbol would work properly - htmlcmds.doc Adjusted documentation, listing all entities - compound.xsd - xmlgen.cpp Removed in xsd file all references for special HTML4 character entities and placed placeholder so doxygen (in xmlgen.cpp)can automatically add the right element names. - util.cpp - util.h Define all entities with their representation for all output formats. Define access routines to the different representations Mapping (for recognition of the entities) based on running through the list of available entities, after validation of the order of the entities. A few entities contain now besides letters also numbers at the end. - docparser.h Define symbols for all entities as well as a helper struct and enum. The member m_letter is not used anymore and thus removed. All existing symbols were renamed so no confusion (i.e. errors when forgetting to rename some symbols) can occur. Obsolete references to letter removed, all letters with accents etc. are explicitly defined and not through the generic accent name plus an extra letter. - docparser.cpp Adjust used symbols to their new names. Remove references to letter (as used for accents etc.) Replace list of explicitly supported entities with call to symbol code access routine. - docbookvisitor.cpp - htmldocvisitor.cpp - latexdocvisitor.cpp - mandocvisitor.cpp - perlmodgen.cpp - printdocvisitor.h - rtfdocvisitor.cpp - textdocvisitor.cpp - xmldocvisitor.cpp Replace list of explicitly supported entities with call to access routine and use returned value to output.