|
Doxygen
|
#include <stdio.h>#include <stdlib.h>#include <cassert>#include <ctype.h>#include "classlist.h"#include "cmdmapper.h"#include "config.h"#include "debug.h"#include "dir.h"#include "docparser.h"#include "docparser_p.h"#include "doxygen.h"#include "filedef.h"#include "fileinfo.h"#include "groupdef.h"#include "namespacedef.h"#include "message.h"#include "pagedef.h"#include "portable.h"#include "printdocvisitor.h"#include "util.h"#include "indexlist.h"#include "trace.h"#include "stringutil.h"#include "filename.h"#include "textdocvisitor.h"#include "outputlist.h"#include "htmldocvisitor.h"Go to the source code of this file.
Macros | |
| #define | AUTO_TRACE(...) |
| #define | AUTO_TRACE_ADD(...) |
| #define | AUTO_TRACE_EXIT(...) |
| #define | CHECK_FOR_COMMAND(str, action) |
Functions | |
| IDocParserPtr | createDocParser () |
| factory function to create a parser | |
| static DString | extractCopyDocId (const char *data, size_t &j, size_t len) |
| static size_t | isCopyBriefOrDetailsCmd (const char *data, size_t i, size_t len, bool &brief) |
| static size_t | isVerbatimSection (const char *data, size_t i, size_t len, DString &endMarker) |
| static size_t | skipToEndMarker (const char *data, size_t i, size_t len, const DString &endMarker) |
| IDocNodeASTPtr | validatingParseDoc (IDocParser &parserIntf, const DString &fileName, int startLine, const Definition *ctx, const MemberDef *md, const DString &input, const DocOptions &options) |
| IDocNodeASTPtr | validatingParseTitle (IDocParser &parserIntf, const DString &fileName, int lineNr, const DString &input) |
| IDocNodeASTPtr | validatingParseText (IDocParser &parserIntf, const DString &input) |
| IDocNodeASTPtr | createRef (IDocParser &parserIntf, const DString &target, const DString &context, const DString &srcFile, int srcLine) |
| void | docFindSections (const DString &input, const Definition *d, const DString &fileName) |
| static int | nextUTF8CharPosition (const DString &utf8Str, uint32_t len, uint32_t startPos) |
| DString | parseCommentAsText (const Definition *scope, const MemberDef *md, const DString &doc, const DString &fileName, int lineNr) |
| DString | parseCommentAsHtml (const Definition *scope, const MemberDef *member, const DString &doc, const DString &fileName, int lineNr) |
| #define AUTO_TRACE | ( | ... | ) |
Definition at line 51 of file docparser.cpp.
| #define AUTO_TRACE_ADD | ( | ... | ) |
Definition at line 52 of file docparser.cpp.
| #define AUTO_TRACE_EXIT | ( | ... | ) |
Definition at line 53 of file docparser.cpp.
| #define CHECK_FOR_COMMAND | ( | str, | |
| action ) |
Definition at line 2019 of file docparser.cpp.
Referenced by isCopyBriefOrDetailsCmd(), and isVerbatimSection().
| IDocParserPtr createDocParser | ( | ) |
factory function to create a parser
Definition at line 59 of file docparser.cpp.
Referenced by addPerlModDocBlock(), convertMapFile(), RTFGenerator::endIndexSection(), generateBriefDoc(), OutputList::generateDoc(), generateHtmlOutput(), getSQLDocBlock(), parseCommentAsHtml(), 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 & | parserIntf, |
| const DString & | target, | ||
| const DString & | context, | ||
| const DString & | srcFile, | ||
| int | srcLine ) |
Definition at line 2445 of file docparser.cpp.
References DocParser::context, DString::empty(), DocParserContext::fileName, DocTokenizer::setFileName(), DocTokenizer::setLineNr(), and DocParser::tokenizer.
Referenced by convertMapFile(), replaceRef(), and LayoutNavEntry::url().
| void docFindSections | ( | const DString & | input, |
| const Definition * | d, | ||
| const DString & | fileName ) |
Searches for section and anchor commands in the input Sections found will be added to the SectionManager.
Definition at line 2459 of file docparser.cpp.
References DocTokenizer::findSections(), and DocParser::tokenizer.
Referenced by ClassDefImpl::findSectionsInDocumentation(), ConceptDefImpl::findSectionsInDocumentation(), DirDefImpl::findSectionsInDocumentation(), FileDefImpl::findSectionsInDocumentation(), GroupDefImpl::findSectionsInDocumentation(), MemberDefImpl::findSectionsInDocumentation(), MemberGroup::findSectionsInDocumentation(), ModuleDefImpl::findSectionsInDocumentation(), NamespaceDefImpl::findSectionsInDocumentation(), and PageDefImpl::findSectionsInDocumentation().
|
static |
Definition at line 1946 of file docparser.cpp.
References literal_at().
Referenced by DocParser::processCopyDoc().
|
static |
Definition at line 2023 of file docparser.cpp.
References CHECK_FOR_COMMAND.
Referenced by DocParser::processCopyDoc().
|
static |
Definition at line 2034 of file docparser.cpp.
References CHECK_FOR_COMMAND.
Referenced by DocParser::processCopyDoc().
|
static |
Definition at line 2469 of file docparser.cpp.
References getUTF8CharNumBytes().
Referenced by parseCommentAsText().
| DString parseCommentAsHtml | ( | const Definition * | scope, |
| const MemberDef * | member, | ||
| const DString & | doc, | ||
| const DString & | fileName, | ||
| int | lineNr ) |
Definition at line 2578 of file docparser.cpp.
References OutputCodeList::add(), createDocParser(), filterTitle(), DString::insert(), DString::str(), TextStream::str(), and validatingParseTitle().
Referenced by PageDefImpl::addSectionsToIndex(), SearchTerm::makeTitle(), DefinitionImpl::navigationPathAsString(), and writeJavasScriptSearchDataPage().
| DString parseCommentAsText | ( | const Definition * | scope, |
| const MemberDef * | md, | ||
| const DString & | doc, | ||
| const DString & | fileName, | ||
| int | lineNr ) |
Definition at line 2514 of file docparser.cpp.
References DString::at(), HtmlEntityMapper::convertCharEntitiesToUTF8(), createDocParser(), DString::data(), DString::empty(), DString::insert(), HtmlEntityMapper::instance(), DString::left(), DString::length(), nextUTF8CharPosition(), DString::str(), TextStream::str(), DString::stripWhiteSpace(), and validatingParseDoc().
Referenced by RequirementManager::addRequirement(), PageDefImpl::addSectionsToIndex(), DefinitionImpl::computeTooltip(), GroupDefImpl::setGroupTitleLocal(), PageDefImpl::setTitle(), and RequirementManager::writeRef().
|
static |
Definition at line 2059 of file docparser.cpp.
References DString::data(), dstrncmp(), and DString::length().
Referenced by DocParser::processCopyDoc().
| IDocNodeASTPtr validatingParseDoc | ( | IDocParser & | parserIntf, |
| const DString & | fileName, | ||
| int | startLine, | ||
| const Definition * | ctx, | ||
| const MemberDef * | md, | ||
| const DString & | input, | ||
| const DocOptions & | options ) |
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. |
| options | Optional parameters. |
Definition at line 2191 of file docparser.cpp.
References Definition::anchor(), MemberDef::argumentList(), DString::at(), DocOptions::autolinkSupport(), DocParserContext::autolinkSupport, DocParser::checkUnOrMultipleDocumentedParams(), DocParser::context, DocParserContext::context, DString::data(), MemberDef::declArgumentList(), Definition::definitionType(), MemberDef::detectUndocumentedParams(), DString::empty(), SearchIndexIntf::enabled(), DocOptions::exampleName(), DocParserContext::exampleName, DocParserContext::fileName, Definition::getLanguage(), getLanguageFromFileName(), getLanguageSpecificSeparator(), Definition::getOutputFileBase(), Doxygen::globalScope, DocParserContext::hasParamCommand, DocParserContext::hasReturnCommand, DocParserContext::includeFileLength, DocParserContext::includeFileOffset, DocParserContext::includeFileText, DocParserContext::inCodeStyle, DocOptions::indexWords(), DocTokenizer::init(), DocParserContext::initialStyleStack, DocParserContext::inSeeBlock, DocParserContext::insideHtmlLink, MemberDef::isDocsForDefinition(), DocOptions::isExample(), DocParserContext::isExample, Debug::isFlagSet(), MemberDef::isFunction(), DocParserContext::lang, DString::length(), DocOptions::linkFromIndex(), DocOptions::markdownSupport(), DocParserContext::markdownSupport, DocParserContext::memberDef, Definition::name(), DocParserContext::nodeStack, DocParserContext::numParameters, DocParserContext::paramPosition, DocParserContext::paramsFound, Debug::PrintTree, DocParser::processCopyDoc(), Definition::qualifiedName(), relativePathToRoot(), DocParserContext::relPath, DocTokenizer::resetToken(), DocParserContext::retvalsFound, DocParserContext::scope, Doxygen::searchIndex, DocParserContext::searchUrl, SearchIndexIntf::setCurrentDoc(), DocTokenizer::setFileName(), DocTokenizer::setLineNr(), DocOptions::singleLine(), ArgumentList::size(), 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 DString & | input ) |
Main entry point for parsing simple text fragments. These fragments are limited to words, whitespace and symbols.
Definition at line 2386 of file docparser.cpp.
References DocParserContext::autolinkSupport, Config_getBool, DocParser::context, DocParserContext::context, DString::data(), DString::empty(), DocParserContext::exampleName, DocParserContext::fileName, DocParserContext::hasParamCommand, DocParserContext::hasReturnCommand, DocParserContext::includeFileLength, DocParserContext::includeFileOffset, DocParserContext::includeFileText, DocParserContext::inCodeStyle, DocTokenizer::init(), DocParserContext::initialStyleStack, DocParserContext::inSeeBlock, DocParserContext::insideHtmlLink, 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, and DocParserContext::xmlComment.
Referenced by RTFGenerator::endIndexSection(), and OutputList::parseText().
| IDocNodeASTPtr validatingParseTitle | ( | IDocParser & | parserIntf, |
| const DString & | fileName, | ||
| int | lineNr, | ||
| const DString & | input ) |
Main entry point for parsing titles. These allow limited markup commands
Definition at line 2333 of file docparser.cpp.
References DocParserContext::autolinkSupport, Config_getBool, DocParser::context, DocParserContext::context, DString::empty(), DocParserContext::exampleName, DocParserContext::fileName, DocParserContext::hasParamCommand, DocParserContext::hasReturnCommand, DocParserContext::includeFileLength, DocParserContext::includeFileOffset, DocParserContext::includeFileText, DocParserContext::inCodeStyle, DocParserContext::initialStyleStack, DocParserContext::inSeeBlock, DocParserContext::insideHtmlLink, DocParserContext::isExample, Debug::isFlagSet(), DocParserContext::lang, DocParserContext::markdownSupport, DocParserContext::memberDef, DocParserContext::nodeStack, DocParserContext::paramsFound, Debug::PrintTree, DocParserContext::relPath, DocTokenizer::resetToken(), DocParserContext::retvalsFound, DocParserContext::searchUrl, DocParserContext::styleStack, DocParserContext::token, DocParser::tokenizer, and DocParserContext::xmlComment.
Referenced by parseCommentAsHtml().