Doxygen
ClangParser类 参考

Wrapper for to let libclang assisted parsing. 更多...

#include <clangparser.h>

+ ClangParser 的协作图:

class  Private
 

Public 成员函数

std::unique_ptr< ClangTUParsercreateTUParser (const FileDef *fd) const
 

静态 Public 成员函数

static ClangParserinstance ()
 Returns the one and only instance of the class 更多...
 

Private 成员函数

const clang::tooling::CompilationDatabase * database () const
 
 ClangParser ()
 
virtual ~ClangParser ()
 

Private 属性

std::unique_ptr< Privatep
 

静态 Private 属性

static ClangParsers_instance = 0
 

友元

class ClangTUParser
 

详细描述

Wrapper for to let libclang assisted parsing.

在文件 clangparser.h75 行定义.

构造及析构函数说明

◆ ClangParser()

ClangParser::ClangParser ( )
private

在文件 clangparser.cpp929 行定义.

929  : p(std::make_unique<Private>())
930 {
931 }

被这些函数引用 instance().

◆ ~ClangParser()

ClangParser::~ClangParser ( )
privatevirtual

在文件 clangparser.cpp933 行定义.

934 {
935 }

成员函数说明

◆ createTUParser()

std::unique_ptr< ClangTUParser > ClangParser::createTUParser ( const FileDef fd) const

在文件 clangparser.cpp937 行定义.

938 {
939  return nullptr;
940 }

被这些函数引用 generateFileSources(), parseFilesMultiThreading() , 以及 parseFilesSingleThreading().

◆ database()

const clang::tooling::CompilationDatabase* ClangParser::database ( ) const
private

◆ instance()

ClangParser * ClangParser::instance ( )
static

Returns the one and only instance of the class

在文件 clangparser.cpp29 行定义.

30 {
31  std::lock_guard<std::mutex> lock(g_clangMutex);
32  if (!s_instance) s_instance = new ClangParser;
33  return s_instance;
34 }

引用了 ClangParser(), g_clangMutex , 以及 s_instance.

被这些函数引用 generateFileSources(), parseFilesMultiThreading() , 以及 parseFilesSingleThreading().

友元及相关函数文档

◆ ClangTUParser

friend class ClangTUParser
friend

在文件 clangparser.h77 行定义.

类成员变量说明

◆ p

std::unique_ptr<Private> ClangParser::p
private

在文件 clangparser.h85 行定义.

◆ s_instance

ClangParser * ClangParser::s_instance = 0
staticprivate

在文件 clangparser.h89 行定义.

被这些函数引用 instance().


该类的文档由以下文件生成:
ClangParser::ClangParser
ClangParser()
Definition: clangparser.cpp:929
ClangParser::s_instance
static ClangParser * s_instance
Definition: clangparser.h:89
ClangParser::p
std::unique_ptr< Private > p
Definition: clangparser.h:85
g_clangMutex
static std::mutex g_clangMutex
Definition: clangparser.cpp:27