Skip to main content

The DocVisitor Class Reference

Helper base class for functionality shared by all visitors. More...

Declaration

class DocVisitor { ... }

Included Headers

#include <src/docvisitor.h>

Derived Classes

classDocbookDocVisitor

Concrete visitor implementation for Docbook output. More...

classHtmlDocVisitor

Concrete visitor implementation for HTML output. More...

classLatexDocVisitor

Concrete visitor implementation for LaTeX output. More...

classManDocVisitor

Concrete visitor implementation for LaTeX output. More...

classPerlModDocVisitor

Concrete visitor implementation for PerlMod output. More...

classRTFDocVisitor

Concrete visitor implementation for RTF output. More...

classTextDocVisitor

Concrete visitor implementation for TEXT output. More...

classXmlDocVisitor

Concrete visitor implementation for XML output. More...

Public Constructors Index

DocVisitor ()

Public Destructor Index

~DocVisitor ()

Public Member Functions Index

CodeParserInterface &getCodeParser (const QCString &langExt)
voidpushHidden (bool hide)
boolpopHidden ()

Private Member Attributes Index

std::unique_ptr< Private >m_p

Description

Helper base class for functionality shared by all visitors.

Definition at line 28 of file docvisitor.h.

Public Constructors

DocVisitor()

DocVisitor::DocVisitor ()

Declaration at line 33 of file docvisitor.h, definition at line 32 of file docvisitor.cpp.

32DocVisitor::DocVisitor() : m_p(std::make_unique<Private>())
33{
34}

Reference m_p.

Public Destructor

~DocVisitor()

DocVisitor::~DocVisitor ()
virtual

Declaration at line 34 of file docvisitor.h, definition at line 36 of file docvisitor.cpp.

Public Member Functions

getCodeParser()

CodeParserInterface & DocVisitor::getCodeParser (const QCString & langExt)

Declaration at line 36 of file docvisitor.h, definition at line 40 of file docvisitor.cpp.

41{
42 std::string ext = extension.str();
43 // for each extension we create a code parser once per visitor, so that
44 // the context of the same parser object is reused throughout multiple passes for instance
45 // for code fragments shown via dontinclude.
46 auto it = m_p->parserFactoryMap.find(ext);
47 if (it==m_p->parserFactoryMap.end())
48 {
49 auto factory = Doxygen::parserManager->getCodeParserFactory(extension);
50 auto result = m_p->parserFactoryMap.emplace(ext,factory());
51 it = result.first;
52 }
53 return *it->second.get();
54}

References m_p, Doxygen::parserManager and QCString::str.

Referenced by DocbookDocVisitor::operator(), DocbookDocVisitor::operator(), DocbookDocVisitor::operator(), HtmlDocVisitor::operator(), HtmlDocVisitor::operator(), HtmlDocVisitor::operator(), LatexDocVisitor::operator(), LatexDocVisitor::operator(), LatexDocVisitor::operator(), ManDocVisitor::operator(), ManDocVisitor::operator(), ManDocVisitor::operator(), RTFDocVisitor::operator(), RTFDocVisitor::operator(), RTFDocVisitor::operator(), XmlDocVisitor::operator(), XmlDocVisitor::operator() and XmlDocVisitor::operator().

popHidden()

bool DocVisitor::popHidden ()

Declaration at line 38 of file docvisitor.h, definition at line 61 of file docvisitor.cpp.

62{
63 if (m_p->hidden.empty()) return false;
64 bool v = m_p->hidden.top();
65 m_p->hidden.pop();
66 return v;
67}

Reference m_p.

Referenced by RTFDocVisitor::includePicturePostRTF, DocbookDocVisitor::operator(), HtmlDocVisitor::operator(), LatexDocVisitor::operator(), ManDocVisitor::operator(), RTFDocVisitor::operator() and XmlDocVisitor::operator().

pushHidden()

void DocVisitor::pushHidden (bool hide)

Private Member Attributes

m_p

std::unique_ptr<Private> DocVisitor::m_p

Definition at line 31 of file docvisitor.h.

31 std::unique_ptr<Private> m_p;

Referenced by DocVisitor, getCodeParser, popHidden and pushHidden.


The documentation for this class was generated from the following files:


Generated via doxygen2docusaurus by Doxygen 1.14.0.