90 if (e.intf->type()!=o) e.setEnabled(
false);
120 if (e.intf->type()==o) e.setEnabled(
false);
130 if (e.intf->type()==o) e.setEnabled(
true);
139 if (e.intf->type()==o) {
return e.enabled; }
149 e.enabledStack.push(e.enabled);
159 if (!e.enabledStack.empty())
161 e.enabled = e.enabledStack.top();
162 e.enabledStack.pop();
170 const QCString &docStr,
bool indexWords,
171 bool isExample,
const QCString &exampleName,
172 bool singleLine,
bool linkFromIndex,
173 bool markdownSupport,
174 bool autolinkSupport)
179 [](
const auto &e) { return e.enabled; });
187 ctx,md,docStr,indexWords,isExample,exampleName,
188 singleLine,linkFromIndex,markdownSupport,autolinkSupport) };
189 if (ast && count>0)
writeDoc(ast.get(),ctx,md);
203 [](
const auto &e) { return e.enabled; });
212 if (ast && count>0)
writeDoc(ast.get(),
nullptr,
nullptr);
223 for (
int i=orgSize;i<lineNr;i++)
233 m_calls.emplace_back([]() {
return true; },
242 m_calls.emplace_back([]() {
return true; },
250 m_calls.emplace_back([]() {
return true; },
262 m_calls.emplace_back([](){
return true; },
269 int lineNumber,
bool writeLineAnchor)
273 [=](
OutputCodeList *ol) { ol->writeLineNumber(ref,file,anchor,lineNumber,writeLineAnchor); },
281 m_calls.emplace_back([](){
return true; },
282 [=](
OutputCodeList *ol) { ol->writeTooltip(
id,docInfo,decl,desc,defInfo,declInfo); },
290 m_calls.emplace_back([](){
return true; },
298 m_calls.emplace_back([](){
return true; },
306 m_calls.emplace_back([]() {
return true; },
314 m_calls.emplace_back([]() {
return true; },
322 m_calls.emplace_back([]() {
return true; },
338 m_calls.emplace_back([]() {
return true; },
339 [=](
OutputCodeList *ol) { ol->startFold(lineNr,startMarker,endMarker); },
346 m_calls.emplace_back([]() {
return true; },
364 bool insideSpecialComment =
false;
366 if (startIndex<endIndex &&
m_calls[startIndex].insideSpecialComment)
369 insideSpecialComment =
true;
373 for (
size_t i=startIndex; i<endIndex; i++)
377 insideSpecialComment =
m_calls[i].insideSpecialComment;
384 if (insideSpecialComment)
The common base class of all entity definitions found in the sources.
A model of a class/file/namespace member symbol.
Class representing a list of different code generators.
void startSpecialComment()
void setStripIndentAmount(size_t amount)
void stripCodeComments(bool b)
void startFontClass(const QCString &c) override
void startFold(int lineNr, const QCString &startMarker, const QCString &endMarker) override
void writeTooltip(const QCString &id, const DocLinkInfo &docInfo, const QCString &decl, const QCString &desc, const SourceLinkInfo &defInfo, const SourceLinkInfo &declInfo) override
void startCodeFragment(const QCString &style) override
void startCodeLine(int) override
void stripCodeComments(bool) override
void endFontClass() override
void startNewLine(int lineNr)
bool m_insideSpecialComment
void writeCodeLink(CodeSymbolType type, const QCString &ref, const QCString &file, const QCString &anchor, const QCString &name, const QCString &tooltip) override
void codify(const QCString &s) override
std::vector< size_t > m_lineOffset
std::vector< CallInfo > m_calls
void replay(OutputCodeList &ol, int startLine, int endLine, bool showLineNumbers, bool stripComment, size_t stripIndentAmount)
void startSpecialComment() override
OutputType type() const override
void writeCodeAnchor(const QCString &name) override
void endSpecialComment() override
void endCodeFragment(const QCString &style) override
void endCodeLine() override
void writeLineNumber(const QCString &ref, const QCString &file, const QCString &anchor, int lineNumber, bool writeLineAnchor) override
virtual void startFile(const QCString &name, const QCString &manName, const QCString &title, int id, int hierarchyLevel)=0
bool isEnabled(OutputType o)
void disable(OutputType o)
OutputCodeList m_codeGenList
void enable(OutputType o)
std::vector< OutputGenElem > m_outputGenList
void writeDoc(const IDocNodeAST *ast, const Definition *ctx, const MemberDef *md)
OutputList & operator=(const OutputList &ol)
void startFile(const QCString &name, const QCString &manName, const QCString &title, int hierarchyLevel=0)
void pushGeneratorState()
void disableAllBut(OutputType o)
void generateDoc(const QCString &fileName, int startLine, const Definition *ctx, const MemberDef *md, const QCString &docStr, bool indexWords, bool isExample, const QCString &exampleName, bool singleLine, bool linkFromIndex, bool markdownSupport=Config_getBool(MARKDOWN_SUPPORT), bool autolinkSupport=Config_getBool(AUTOLINK_SUPPORT))
void parseText(const QCString &textStr)
void refreshCodeGenerators()
This is an alternative implementation of QCString.
bool isEmpty() const
Returns TRUE iff the string is empty.
IDocNodeASTPtr validatingParseText(IDocParser &parserIntf, const QCString &input)
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, bool autolinkSupport)
IDocParserPtr createDocParser()
factory function to create a parser