|
Doxygen
|
#include <stdio.h>#include <unordered_map>#include <functional>#include <atomic>#include <array>#include <string_view>#include "markdown.h"#include "debug.h"#include "util.h"#include "doxygen.h"#include "commentscan.h"#include "entry.h"#include "config.h"#include "message.h"#include "portable.h"#include "regex.h"#include "fileinfo.h"#include "trace.h"#include "anchor.h"#include "stringutil.h"Go to the source code of this file.
Classes | |
| struct | TableCell |
| struct | Markdown::Private |
| struct | Markdown::Private::LinkRef |
| struct | MarkdownOutlineParser::Private |
Macros | |
| #define | AUTO_TRACE(...) |
| #define | AUTO_TRACE_ADD(...) |
| #define | AUTO_TRACE_EXIT(...) |
| #define | isLiTag(i) |
| #define | OPC(x) |
Enumerations | |
| enum class | ExplicitPageResult { explicitPage , explicitMainPage , explicitOtherPage , notExplicit } |
| enum class | Alignment { None , Left , Center , Right } |
Functions | |
| static constexpr bool | isIdChar (char c) |
| static constexpr bool | extraChar (char c) |
| static constexpr bool | isOpenEmphChar (char c) |
| static constexpr bool | isUtf8Nbsp (char c1, char c2) |
| static constexpr bool | isAllowedEmphStr (const std::string_view &data, size_t offset) |
| static constexpr bool | ignoreCloseEmphChar (char c, char cn) |
| size_t | isNewline (std::string_view data) |
| static QCString | escapeDoubleQuotes (const QCString &s) |
| static QCString | escapeSpecialChars (const QCString &s) |
| static constexpr Alignment | markersToAlignment (bool leftMarker, bool rightMarker) |
| helper function to convert presence of left and/or right alignment markers to an alignment value | |
| static QCString | getFilteredImageAttributes (std::string_view fmt, const QCString &attrs) |
| parse the image attributes and return attributes for given format | |
| static bool | isBlockQuote (std::string_view data, size_t indent) |
| returns true if this line starts a block quote | |
| static size_t | isLinkRef (std::string_view data, QCString &refid, QCString &link, QCString &title) |
| returns end of the link ref if this is indeed a link reference. | |
| static bool | isHRuler (std::string_view data) |
| static bool | isEmptyLine (std::string_view data) |
| static size_t | computeIndentExcludingListMarkers (std::string_view data) |
| static size_t | isListMarker (std::string_view data) |
| static bool | isEndOfList (std::string_view data) |
| static bool | isFencedCodeBlock (std::string_view data, size_t refIndent, QCString &lang, size_t &start, size_t &end, size_t &offset) |
| static bool | isCodeBlock (std::string_view data, size_t offset, size_t &indent) |
| static size_t | findTableColumns (std::string_view data, size_t &start, size_t &end, size_t &columns) |
| Finds the location of the table's contains in the string data. | |
| static bool | isTableBlock (std::string_view data) |
| Returns TRUE iff data points to the start of a table block. | |
| static bool | hasLineBreak (std::string_view data) |
| bool | skipOverFileAndLineCommands (std::string_view data, size_t indent, size_t &offset, std::string &location) |
| static bool | isOtherPage (std::string_view data) |
| static ExplicitPageResult | isExplicitPage (const QCString &docs) |
| QCString | markdownFileNameToId (const QCString &fileName) |
| processes string s and converts markdown into doxygen/html commands. | |
Variables | |
| static const char * | g_utf8_nbsp = "\xc2\xa0" |
| static const char * | g_doxy_nbsp = "&_doxy_nbsp;" |
| static const size_t | codeBlockIndent = 4 |
| static const std::unordered_map< std::string, std::string > | g_quotationHeaderMap |
| #define AUTO_TRACE | ( | ... | ) |
Definition at line 61 of file markdown.cpp.
Referenced by escapeDoubleQuotes(), escapeSpecialChars(), and getFilteredImageAttributes().
| #define AUTO_TRACE_ADD | ( | ... | ) |
Definition at line 62 of file markdown.cpp.
| #define AUTO_TRACE_EXIT | ( | ... | ) |
Definition at line 63 of file markdown.cpp.
Referenced by escapeDoubleQuotes(), escapeSpecialChars(), and getFilteredImageAttributes().
| #define isLiTag | ( | i | ) |
Definition at line 2213 of file markdown.cpp.
Referenced by computeIndentExcludingListMarkers().
| #define OPC | ( | x | ) |
Referenced by isOtherPage().
|
strong |
|
strong |
Definition at line 66 of file markdown.cpp.
|
static |
Definition at line 2221 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, FALSE, isLiTag, TRUE, and Trace::trunc().
Referenced by isCodeBlock(), and isListMarker().
Definition at line 238 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, QCString::data(), QCString::isEmpty(), and Trace::trunc().
Referenced by Markdown::Private::writeMarkdownImage().
Definition at line 256 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, Config_getBool, QCString::data(), FALSE, QCString::isEmpty(), and Trace::trunc().
Referenced by Markdown::Private::processCodeSpan().
|
staticconstexpr |
Definition at line 86 of file markdown.cpp.
Referenced by Markdown::Private::processEmphasis().
|
static |
Finds the location of the table's contains in the string data.
Only one line will be inspected.
| [in] | data | pointer to the string buffer. |
| [out] | start | offset of the first character of the table content |
| [out] | end | offset of the last character of the table content |
| [out] | columns | number of table columns found |
Definition at line 2523 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, end(), eol, isNewline(), and Trace::trunc().
Referenced by isTableBlock(), and Markdown::Private::writeTableBlock().
parse the image attributes and return attributes for given format
Definition at line 341 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, QCString::find(), QCString::left(), QCString::lower(), QCString::mid(), split(), QCString::str(), and QCString::stripWhiteSpace().
Referenced by Markdown::Private::writeMarkdownImage().
|
static |
Definition at line 2812 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, and Trace::trunc().
Referenced by Markdown::Private::writeOneLineHeaderOrRuler().
|
staticconstexpr |
Definition at line 116 of file markdown.cpp.
Referenced by Markdown::Private::findEmphasisChar().
|
staticconstexpr |
Definition at line 108 of file markdown.cpp.
References isOpenEmphChar(), and isUtf8Nbsp().
Referenced by Markdown::Private::processEmphasis().
|
static |
returns true if this line starts a block quote
Definition at line 1942 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, codeBlockIndent, and Trace::trunc().
Referenced by Markdown::Private::processQuotations().
|
static |
Definition at line 2426 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, codeBlockIndent, computeIndentExcludingListMarkers(), FALSE, isEmptyLine(), isNewline(), and Trace::trunc().
Referenced by Markdown::Private::processBlocks().
|
static |
Definition at line 2199 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, and Trace::trunc().
Referenced by isCodeBlock(), Markdown::Private::processBlocks(), and Markdown::Private::processQuotations().
|
static |
Definition at line 2302 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, and Trace::trunc().
Referenced by Markdown::Private::processBlocks(), and Markdown::Private::processQuotations().
|
static |
Definition at line 3599 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, explicitMainPage, explicitOtherPage, explicitPage, isOtherPage(), literal_at(), notExplicit, QCString::str(), and Trace::trunc().
Referenced by MarkdownOutlineParser::parseInput().
|
static |
extract python or .py from python... or .py...
Definition at line 2329 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, end(), FALSE, and Trace::trunc().
Referenced by Markdown::Private::processBlocks(), and Markdown::Private::processQuotations().
|
static |
Definition at line 2060 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, and Trace::trunc().
Referenced by Markdown::Private::writeBlockQuote(), and Markdown::Private::writeOneLineHeaderOrRuler().
|
staticconstexpr |
Definition at line 77 of file markdown.cpp.
Referenced by Markdown::Private::findEmphasisChar(), reg::Ex::Private::matchAt(), Markdown::Private::processCodeSpan(), Markdown::Private::processEmphasis(), and Markdown::Private::processHtmlTagWrite().
|
static |
returns end of the link ref if this is indeed a link reference.
Definition at line 1971 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_ADD, AUTO_TRACE_EXIT, QCString::clear(), end(), eol, QCString::isEmpty(), and Trace::trunc().
Referenced by Markdown::Private::processBlocks().
|
static |
Definition at line 2291 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, computeIndentExcludingListMarkers(), and Trace::trunc().
Referenced by Markdown::Private::processBlocks(), Markdown::Private::processQuotations(), and Markdown::Private::writeBlockQuote().
|
inline |
Definition at line 225 of file markdown.cpp.
References literal_at().
Referenced by Markdown::Private::findEndOfLine(), findTableColumns(), and isCodeBlock().
|
staticconstexpr |
Definition at line 95 of file markdown.cpp.
Referenced by isAllowedEmphStr().
|
static |
Definition at line 3586 of file markdown.cpp.
References OPC.
Referenced by isExplicitPage().
|
static |
Returns TRUE iff data points to the start of a table block.
Definition at line 2572 of file markdown.cpp.
References AUTO_TRACE, AUTO_TRACE_EXIT, end(), FALSE, findTableColumns(), and Trace::trunc().
Referenced by Markdown::Private::processBlocks().
|
staticconstexpr |
Definition at line 103 of file markdown.cpp.
Referenced by isAllowedEmphStr().
processes string s and converts markdown into doxygen/html commands.
Definition at line 3749 of file markdown.cpp.
References FileInfo::absFilePath(), AUTO_TRACE, AUTO_TRACE_EXIT, escapeCharsInString(), QCString::findRev(), QCString::left(), QCString::str(), and stripFromPath().
Referenced by DocRef::DocRef(), DocSecRefItem::parse(), and MarkdownOutlineParser::parseInput().
|
staticconstexpr |
helper function to convert presence of left and/or right alignment markers to an alignment value
Definition at line 320 of file markdown.cpp.
References Center, Left, None, and Right.
Referenced by Markdown::Private::writeTableBlock().
| bool skipOverFileAndLineCommands | ( | std::string_view | data, |
| size_t | indent, | ||
| size_t & | offset, | ||
| std::string & | location ) |
Definition at line 3009 of file markdown.cpp.
References literal_at().
Referenced by Markdown::Private::writeCodeBlock().
|
static |
Definition at line 219 of file markdown.cpp.
Referenced by isBlockQuote(), isCodeBlock(), Markdown::Private::processBlocks(), and Markdown::Private::writeCodeBlock().
|
static |
Definition at line 218 of file markdown.cpp.
Referenced by Markdown::Private::addStrEscapeUtf8Nbsp(), and Markdown::process().
|
static |
Definition at line 2882 of file markdown.cpp.
Referenced by Markdown::Private::writeBlockQuote().
|
static |
Definition at line 217 of file markdown.cpp.
Referenced by Markdown::Private::addStrEscapeUtf8Nbsp().