浏览该文件的文档.
16 #include <unordered_map>
28 std::unordered_map< std::string, std::unique_ptr<CodeParserInterface> >
parserFactoryMap;
43 std::string ext = extension.
str();
47 auto it =
m_p->parserFactoryMap.find(ext);
48 if (it==
m_p->parserFactoryMap.end())
51 auto result =
m_p->parserFactoryMap.insert(std::make_pair(ext,factory()));
54 return *it->second.get();
64 m_p->hidden.push(hide);
69 if (
m_p->hidden.empty())
return false;
70 bool v =
m_p->hidden.top();
void pushHidden(bool hide)
This file contains a number of basic enums and types.
Abstract interface for code parsers.
std::unique_ptr< Private > m_p
CodeParserInterface & getCodeParser(const QCString &langExt)
std::stack< bool > hidden
static ParserManager * parserManager
CodeParserFactory & getCodeParserFactory(const QCString &extension)
Get the factory for create code parser objects with a given extension.
A bunch of utility functions.
std::unordered_map< std::string, std::unique_ptr< CodeParserInterface > > parserFactoryMap
This is an alternative implementation of QCString.