Doxygen
|
#include <stdio.h>
#include <memory>
#include "qcstring.h"
#include "growvector.h"
#include "construct.h"
#include "types.h"
Go to the source code of this file.
Classes | |
class | IDocParser |
opaque parser interface More... | |
class | IDocNodeAST |
opaque representation of the abstract syntax tree (AST) More... | |
Typedefs | |
using | IDocParserPtr = std::unique_ptr<IDocParser> |
pointer to parser interface | |
using | IDocNodeASTPtr = std::unique_ptr<IDocNodeAST> |
Functions | |
IDocParserPtr | createDocParser () |
factory function to create a parser | |
IDocNodeASTPtr | validatingParseDoc (IDocParser &parserIntf, const QCString &fileName, int startLine, const Definition *ctx, const MemberDef *md, const QCString &input, bool indexWords, bool isExample, const QCString &exampleName, bool singleLine, bool linkFromIndex, bool markdownSupport) |
IDocNodeASTPtr | validatingParseText (IDocParser &parser, const QCString &input) |
IDocNodeASTPtr | createRef (IDocParser &parser, const QCString &target, const QCString &context, const QCString &srcFile="", int srcLine=-1) |
void | docFindSections (const QCString &input, const Definition *d, const QCString &fileName) |
using IDocNodeASTPtr = std::unique_ptr<IDocNodeAST> |
Definition at line 56 of file docparser.h.
using IDocParserPtr = std::unique_ptr<IDocParser> |
pointer to parser interface
Definition at line 40 of file docparser.h.
IDocParserPtr createDocParser | ( | ) |
factory function to create a parser
Definition at line 54 of file docparser.cpp.
Referenced by addPerlModDocBlock(), convertMapFile(), RTFGenerator::endIndexSection(), generateBriefDoc(), OutputList::generateDoc(), generateHtmlOutput(), getSQLDocBlock(), parseCommentAsText(), OutputList::parseText(), replaceRef(), LayoutNavEntry::url(), ConceptDefImpl::writeBriefDescription(), DirDefImpl::writeBriefDescription(), FileDefImpl::writeBriefDescription(), GroupDefImpl::writeBriefDescription(), ModuleDefImpl::writeBriefDescription(), NamespaceDefImpl::writeBriefDescription(), MemberDefImpl::writeDeclaration(), ClassDefImpl::writeDeclarationLink(), ConceptDefImpl::writeDeclarationLink(), ModuleDefImpl::writeDeclarationLink(), MemberList::writePlainDeclarations(), and writeXMLDocBlock().
IDocNodeASTPtr createRef | ( | IDocParser & | parser, |
const QCString & | target, | ||
const QCString & | context, | ||
const QCString & | srcFile = "", | ||
int | srcLine = -1 ) |
Definition at line 2208 of file docparser.cpp.
References DocParser::context, DocParserContext::fileName, QCString::isEmpty(), DocTokenizer::setLineNr(), and DocParser::tokenizer.
Referenced by convertMapFile(), replaceRef(), and LayoutNavEntry::url().
void docFindSections | ( | const QCString & | input, |
const Definition * | d, | ||
const QCString & | fileName ) |
Searches for section and anchor commands in the input Sections found will be added to the SectionManager.
Definition at line 2221 of file docparser.cpp.
References DocTokenizer::findSections(), and DocParser::tokenizer.
Referenced by ClassDefImpl::findSectionsInDocumentation(), ConceptDefImpl::findSectionsInDocumentation(), FileDefImpl::findSectionsInDocumentation(), GroupDefImpl::findSectionsInDocumentation(), MemberDefImpl::findSectionsInDocumentation(), MemberGroup::findSectionsInDocumentation(), ModuleDefImpl::findSectionsInDocumentation(), NamespaceDefImpl::findSectionsInDocumentation(), and PageDefImpl::findSectionsInDocumentation().
IDocNodeASTPtr validatingParseDoc | ( | IDocParser & | parserIntf, |
const QCString & | fileName, | ||
int | startLine, | ||
const Definition * | ctx, | ||
const MemberDef * | md, | ||
const QCString & | input, | ||
bool | indexWords, | ||
bool | isExample, | ||
const QCString & | exampleName, | ||
bool | singleLine, | ||
bool | linkFromIndex, | ||
bool | markdownSupport ) |
Main entry point for the comment block parser.
parserIntf | The parser object created via createDocParser() |
fileName | File in which the documentation block is found (or the name of the example file in case isExample is TRUE). |
startLine | Line at which the documentation block is found. |
ctx | Class or namespace to which this block belongs. |
md | Member definition to which the documentation belongs. Can be 0. |
input | String representation of the documentation block. |
indexWords | Indicates whether or not words should be put in the search index. |
isExample | TRUE if the documentation belongs to an example. |
exampleName | Base name of the example file (0 if isExample is FALSE). |
singleLine | Output should be presented on a single line, so without starting a new paragraph at the end. |
linkFromIndex | TRUE if the documentation is generated from an index page. In this case context is not used to determine the relative path when making a link. |
markdownSupport | TRUE if the input needs to take markdown markup into account. |
Definition at line 2022 of file docparser.cpp.
References Definition::anchor(), QCString::at(), DocParser::checkUnOrMultipleDocumentedParams(), DocParser::context, DocParserContext::context, QCString::data(), Definition::definitionType(), MemberDef::detectUndocumentedParams(), DocParserContext::exampleName, FALSE, DocParserContext::fileName, Definition::getLanguage(), getLanguageFromFileName(), getLanguageSpecificSeparator(), Definition::getOutputFileBase(), Doxygen::globalScope, DocParserContext::hasParamCommand, DocParserContext::hasReturnCommand, DocParserContext::includeFileLength, DocParserContext::includeFileOffset, DocParserContext::includeFileText, DocTokenizer::init(), DocParserContext::initialStyleStack, DocParserContext::inSeeBlock, DocParserContext::insideHtmlLink, QCString::isEmpty(), DocParserContext::isExample, Debug::isFlagSet(), MemberDef::isFunction(), DocParserContext::lang, QCString::length(), DocParserContext::markdownSupport, DocParserContext::memberDef, Definition::name(), DocParserContext::nodeStack, DocParserContext::paramsFound, Debug::PrintTree, DocParser::processCopyDoc(), Definition::qualifiedName(), relativePathToRoot(), DocParserContext::relPath, DocTokenizer::resetToken(), DocParserContext::retvalsFound, DocParserContext::scope, Doxygen::searchIndex, DocParserContext::searchUrl, DocTokenizer::setLineNr(), DocParserContext::styleStack, substitute(), toGroupDef(), DocParserContext::token, DocParser::tokenizer, toPageDef(), Definition::TypeClass, Definition::TypeGroup, Definition::TypeNamespace, Definition::TypePage, and DocParserContext::xmlComment.
Referenced by addPerlModDocBlock(), generateBriefDoc(), OutputList::generateDoc(), generateHtmlOutput(), getSQLDocBlock(), parseCommentAsText(), ConceptDefImpl::writeBriefDescription(), DirDefImpl::writeBriefDescription(), FileDefImpl::writeBriefDescription(), GroupDefImpl::writeBriefDescription(), ModuleDefImpl::writeBriefDescription(), NamespaceDefImpl::writeBriefDescription(), MemberDefImpl::writeDeclaration(), ClassDefImpl::writeDeclarationLink(), ConceptDefImpl::writeDeclarationLink(), ModuleDefImpl::writeDeclarationLink(), MemberList::writePlainDeclarations(), and writeXMLDocBlock().
IDocNodeASTPtr validatingParseText | ( | IDocParser & | parser, |
const QCString & | input ) |
Main entry point for parsing simple text fragments. These fragments are limited to words, whitespace and symbols.
Definition at line 2151 of file docparser.cpp.
References Config_getBool, DocParser::context, DocParserContext::context, QCString::data(), DocParserContext::exampleName, FALSE, DocParserContext::fileName, DocParserContext::hasParamCommand, DocParserContext::hasReturnCommand, DocParserContext::includeFileLength, DocParserContext::includeFileOffset, DocParserContext::includeFileText, DocTokenizer::init(), DocParserContext::initialStyleStack, DocParserContext::inSeeBlock, DocParserContext::insideHtmlLink, QCString::isEmpty(), DocParserContext::isExample, Debug::isFlagSet(), DocParserContext::lang, DocParserContext::markdownSupport, DocParserContext::memberDef, DocParserContext::nodeStack, DocParserContext::paramsFound, Debug::PrintTree, DocParserContext::relPath, DocTokenizer::resetToken(), DocParserContext::retvalsFound, DocParserContext::searchUrl, DocTokenizer::setLineNr(), DocParserContext::styleStack, DocParserContext::token, DocParser::tokenizer, Unknown, and DocParserContext::xmlComment.
Referenced by RTFGenerator::endIndexSection(), and OutputList::parseText().