LLDB mainline
lldb_private::ASTConsumerForwarder Class Reference

Wraps an ASTConsumer into an SemaConsumer. More...

#include <ASTUtils.h>

Inheritance diagram for lldb_private::ASTConsumerForwarder:
[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.
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 178 of file ASTUtils.h.

Constructor & Destructor Documentation

◆ ASTConsumerForwarder()

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

Definition at line 183 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 233 of file ASTUtils.h.

References m_c.

◆ CompleteTentativeDefinition()

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

Definition at line 229 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 261 of file ASTUtils.h.

References m_sc.

◆ GetASTDeserializationListener()

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

Definition at line 249 of file ASTUtils.h.

References m_c.

◆ GetASTMutationListener()

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

Definition at line 245 of file ASTUtils.h.

References m_c.

◆ HandleCXXImplicitFunctionInstantiation()

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

Definition at line 217 of file ASTUtils.h.

References m_c.

◆ HandleCXXStaticMemberVarInstantiation()

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

Definition at line 237 of file ASTUtils.h.

References m_c.

◆ HandleImplicitImportDecl()

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

Definition at line 225 of file ASTUtils.h.

References m_c.

◆ HandleInlineFunctionDefinition()

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

Definition at line 197 of file ASTUtils.h.

References m_c.

◆ HandleInterestingDecl()

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

Definition at line 201 of file ASTUtils.h.

References m_c.

◆ HandleTagDeclDefinition()

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

Definition at line 209 of file ASTUtils.h.

References m_c.

◆ HandleTagDeclRequiredDefinition()

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

Definition at line 213 of file ASTUtils.h.

References m_c.

◆ HandleTopLevelDecl()

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

Definition at line 193 of file ASTUtils.h.

References m_c.

◆ HandleTopLevelDeclInObjCContainer()

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

Definition at line 221 of file ASTUtils.h.

References m_c.

◆ HandleTranslationUnit()

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

Definition at line 205 of file ASTUtils.h.

References m_c.

◆ HandleVTable()

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

Definition at line 241 of file ASTUtils.h.

References m_c.

◆ Initialize()

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

Definition at line 189 of file ASTUtils.h.

References m_c.

◆ InitializeSema()

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

Definition at line 255 of file ASTUtils.h.

References m_sc.

◆ PrintStats()

void lldb_private::ASTConsumerForwarder::PrintStats ( )
override

Definition at line 19 of file ASTUtils.cpp.

References m_c.

◆ shouldSkipFunctionBody()

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

Definition at line 266 of file ASTUtils.h.

References m_c.

Member Data Documentation

◆ m_c

◆ m_sc

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

Definition at line 180 of file ASTUtils.h.

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


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