Type of variables doxygen python12/29/2023 ![]() Some data that is later needed is extracted like section labels, xref items, and formulas. During this pass the comment block is split into multiple parts if needed. When a parser finds a special comment block in the input, it will do a first pass parsing via CommentScanner::parseCommentBlock(). Each Entry object roughly contains the raw data for a symbol and is later converted into a Definition object. The result of parsing is a tree of Entry objects. The third step is the actual language parsing and is done by calling OutlineParserInterface::parseInput() on the parser interface returned by the ParserManager. Note: Alias resolution should better be done in a separate step as it is now coupled to C/C++ code and does not work automatically for other languages! ![]() The function that performs these 2 tasks is called convertCppComments(). As side effect of this step also aliases (ALIASES option) are resolved. ![]() If the parser indicates it needs preprocessing via OutlineParserInterface::needsPreprocessing(), doxygen will call Preprocessor::processFile() on the file.Ī second step is to convert multiline C++-style comments into C style comments for easier processing later on. The CodeParserInterface is used for syntax highlighting, but also to collect the symbol references needed for cross reference relations. The OutlineParserInterface is used to collect information about the symbols that can be documented but does not look into the body of functions. Each parser implements two abstract interfaces: OutlineParserInterface en CodeParserInterface. These functions use the ParserManager singleton factory to create a suitable parser object for each file. The function parseFilesSingleThreading() takes care of parsing all files (in case NUM_PROC_THREADS!=1, the function parseFilesMultiThreading() is used instead). The script configgen.py will also create the documentation for the configuration items, creating the file config.doc.Īfter the configuration is known, the input files are searched using searchInputFiles() and any tag files are read using readTagFile() As part of the build process, the python script configgen.py will create the files configoptions.cpp, configvalues.h and configvalues.cpp from this, which serves as the input for the configuration file parser that is invoked using Config::parse(). The format of the configuration file (options and types) is defined by the file config.xml. The generic starting point of the application is of course the main() function.Ĭonfiguration file data is stored in singleton class Config and can be accessed using wrapper macros Config_getString(), Config_getInt(), Config_getList(), Config_getEnum(), and Config_getBool() depending on the type of the option. Users of doxygen are referred to the User Manual. This document is intended for developers who want to work on doxygen. This page provides a high-level overview of the internals of doxygen, with links to the relevant parts of the code.
0 Comments
Leave a Reply.AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |