LLDB  mainline
Public Member Functions | Private Attributes | List of all members
lldb_private::ASTConsumerForwarder Class Reference

Wraps an ASTConsumer into an SemaConsumer. More...

#include <ASTUtils.h>

Inheritance diagram for lldb_private::ASTConsumerForwarder:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::ASTConsumerForwarder:
Collaboration graph
[legend]

Public Member Functions

 ASTConsumerForwarder (clang::ASTConsumer *c)
 
 ~ASTConsumerForwarder () override
 
void Initialize (clang::ASTContext &Context) override
 
bool HandleTopLevelDecl (clang::DeclGroupRef D) override
 
void HandleInlineFunctionDefinition (clang::FunctionDecl *D) override
 
void HandleInterestingDecl (clang::DeclGroupRef D) override
 
void HandleTranslationUnit (clang::ASTContext &Ctx) override
 
void HandleTagDeclDefinition (clang::TagDecl *D) override
 
void HandleTagDeclRequiredDefinition (const clang::TagDecl *D) override
 
void HandleCXXImplicitFunctionInstantiation (clang::FunctionDecl *D) override
 
void HandleTopLevelDeclInObjCContainer (clang::DeclGroupRef D) override
 
void HandleImplicitImportDecl (clang::ImportDecl *D) override
 
void CompleteTentativeDefinition (clang::VarDecl *D) override
 
void AssignInheritanceModel (clang::CXXRecordDecl *RD) override
 
void HandleCXXStaticMemberVarInstantiation (clang::VarDecl *D) override
 
void HandleVTable (clang::CXXRecordDecl *RD) override
 
clang::ASTMutationListener * GetASTMutationListener () override
 
clang::ASTDeserializationListener * GetASTDeserializationListener () override
 
void PrintStats () override
 
void InitializeSema (clang::Sema &S) override
 
void ForgetSema () override
 Inform the semantic consumer that Sema is no longer available. More...
 
bool shouldSkipFunctionBody (clang::Decl *D) override
 

Private Attributes

clang::ASTConsumer * m_c
 
clang::SemaConsumer * m_sc
 

Detailed Description

Wraps an ASTConsumer into an SemaConsumer.

Doesn't take ownership of the provided consumer. If the provided ASTConsumer is also a SemaConsumer, the wrapper will also forward SemaConsumer functions.

Definition at line 136 of file ASTUtils.h.

Constructor & Destructor Documentation

◆ ASTConsumerForwarder()

lldb_private::ASTConsumerForwarder::ASTConsumerForwarder ( clang::ASTConsumer *  c)
inline

Definition at line 141 of file ASTUtils.h.

References m_c, and m_sc.

◆ ~ASTConsumerForwarder()

lldb_private::ASTConsumerForwarder::~ASTConsumerForwarder ( )
overridedefault

Member Function Documentation

◆ AssignInheritanceModel()

void lldb_private::ASTConsumerForwarder::AssignInheritanceModel ( clang::CXXRecordDecl *  RD)
inlineoverride

Definition at line 191 of file ASTUtils.h.

References m_c.

◆ CompleteTentativeDefinition()

void lldb_private::ASTConsumerForwarder::CompleteTentativeDefinition ( clang::VarDecl *  D)
inlineoverride

Definition at line 187 of file ASTUtils.h.

References m_c.

◆ ForgetSema()

void lldb_private::ASTConsumerForwarder::ForgetSema ( )
inlineoverride

Inform the semantic consumer that Sema is no longer available.

Definition at line 219 of file ASTUtils.h.

References m_sc.

◆ GetASTDeserializationListener()

clang::ASTDeserializationListener* lldb_private::ASTConsumerForwarder::GetASTDeserializationListener ( )
inlineoverride

Definition at line 207 of file ASTUtils.h.

References m_c.

◆ GetASTMutationListener()

clang::ASTMutationListener* lldb_private::ASTConsumerForwarder::GetASTMutationListener ( )
inlineoverride

Definition at line 203 of file ASTUtils.h.

References m_c.

◆ HandleCXXImplicitFunctionInstantiation()

void lldb_private::ASTConsumerForwarder::HandleCXXImplicitFunctionInstantiation ( clang::FunctionDecl *  D)
inlineoverride

Definition at line 175 of file ASTUtils.h.

References m_c.

◆ HandleCXXStaticMemberVarInstantiation()

void lldb_private::ASTConsumerForwarder::HandleCXXStaticMemberVarInstantiation ( clang::VarDecl *  D)
inlineoverride

Definition at line 195 of file ASTUtils.h.

References m_c.

◆ HandleImplicitImportDecl()

void lldb_private::ASTConsumerForwarder::HandleImplicitImportDecl ( clang::ImportDecl *  D)
inlineoverride

Definition at line 183 of file ASTUtils.h.

References m_c.

◆ HandleInlineFunctionDefinition()

void lldb_private::ASTConsumerForwarder::HandleInlineFunctionDefinition ( clang::FunctionDecl *  D)
inlineoverride

Definition at line 155 of file ASTUtils.h.

References m_c.

◆ HandleInterestingDecl()

void lldb_private::ASTConsumerForwarder::HandleInterestingDecl ( clang::DeclGroupRef  D)
inlineoverride

Definition at line 159 of file ASTUtils.h.

References m_c.

◆ HandleTagDeclDefinition()

void lldb_private::ASTConsumerForwarder::HandleTagDeclDefinition ( clang::TagDecl *  D)
inlineoverride

Definition at line 167 of file ASTUtils.h.

References m_c.

◆ HandleTagDeclRequiredDefinition()

void lldb_private::ASTConsumerForwarder::HandleTagDeclRequiredDefinition ( const clang::TagDecl *  D)
inlineoverride

Definition at line 171 of file ASTUtils.h.

References m_c.

◆ HandleTopLevelDecl()

bool lldb_private::ASTConsumerForwarder::HandleTopLevelDecl ( clang::DeclGroupRef  D)
inlineoverride

Definition at line 151 of file ASTUtils.h.

References m_c.

◆ HandleTopLevelDeclInObjCContainer()

void lldb_private::ASTConsumerForwarder::HandleTopLevelDeclInObjCContainer ( clang::DeclGroupRef  D)
inlineoverride

Definition at line 179 of file ASTUtils.h.

References m_c.

◆ HandleTranslationUnit()

void lldb_private::ASTConsumerForwarder::HandleTranslationUnit ( clang::ASTContext &  Ctx)
inlineoverride

Definition at line 163 of file ASTUtils.h.

References m_c.

◆ HandleVTable()

void lldb_private::ASTConsumerForwarder::HandleVTable ( clang::CXXRecordDecl *  RD)
inlineoverride

Definition at line 199 of file ASTUtils.h.

References m_c.

◆ Initialize()

void lldb_private::ASTConsumerForwarder::Initialize ( clang::ASTContext &  Context)
inlineoverride

Definition at line 147 of file ASTUtils.h.

References m_c.

◆ InitializeSema()

void lldb_private::ASTConsumerForwarder::InitializeSema ( clang::Sema &  S)
inlineoverride

Definition at line 213 of file ASTUtils.h.

References m_sc.

◆ PrintStats()

void lldb_private::ASTConsumerForwarder::PrintStats ( )
override

Definition at line 19 of file ASTUtils.cpp.

◆ shouldSkipFunctionBody()

bool lldb_private::ASTConsumerForwarder::shouldSkipFunctionBody ( clang::Decl *  D)
inlineoverride

Definition at line 224 of file ASTUtils.h.

References m_c.

Member Data Documentation

◆ m_c

clang::ASTConsumer* lldb_private::ASTConsumerForwarder::m_c
private

◆ m_sc

clang::SemaConsumer* lldb_private::ASTConsumerForwarder::m_sc
private

Definition at line 138 of file ASTUtils.h.

Referenced by ASTConsumerForwarder(), ForgetSema(), and InitializeSema().


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