class AnalysisDeclContextManager
Declaration
class AnalysisDeclContextManager { /* full declaration omitted */ };
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:425
Member Variables
- private clang::AnalysisDeclContextManager::ContextMap Contexts
- private clang::LocationContextManager LocCtxMgr
- private CFG::BuildOptions cfgBuildOptions
- private std::unique_ptr<CodeInjector> Injector
- private clang::BodyFarm FunctionBodyFarm
- private bool SynthesizeBodies
Method Overview
- public AnalysisDeclContextManager(clang::ASTContext & ASTCtx, bool useUnoptimizedCFG = false, bool addImplicitDtors = false, bool addInitializers = false, bool addTemporaryDtors = false, bool addLifetime = false, bool addLoopExit = false, bool addScopes = false, bool synthesizeBodies = false, bool addStaticInitBranches = false, bool addCXXNewAllocator = true, bool addRichCXXConstructors = true, bool markElidedCXXConstructors = true, bool addVirtualBaseBranches = true, clang::CodeInjector * injector = nullptr)
- public void clear()
- public clang::BodyFarm & getBodyFarm()
- public CFG::BuildOptions & getCFGBuildOptions()
- public clang::AnalysisDeclContext * getContext(const clang::Decl * D)
- private clang::LocationContextManager & getLocationContextManager()
- public const clang::StackFrameContext * getStackFrame(const clang::Decl * D)
- public const clang::StackFrameContext * getStackFrame(clang::AnalysisDeclContext * ADC, const clang::LocationContext * Parent, const clang::Stmt * S, const clang::CFGBlock * Block, unsigned int BlockCount, unsigned int Index)
- public bool getUseUnoptimizedCFG() const
- public bool synthesizeBodies() const
Methods
¶AnalysisDeclContextManager(
clang::ASTContext& ASTCtx,
bool useUnoptimizedCFG = false,
bool addImplicitDtors = false,
bool addInitializers = false,
bool addTemporaryDtors = false,
bool addLifetime = false,
bool addLoopExit = false,
bool addScopes = false,
bool synthesizeBodies = false,
bool addStaticInitBranches = false,
bool addCXXNewAllocator = true,
bool addRichCXXConstructors = true,
bool markElidedCXXConstructors = true,
bool addVirtualBaseBranches = true,
clang::CodeInjector* injector = nullptr)
AnalysisDeclContextManager(
clang::ASTContext& ASTCtx,
bool useUnoptimizedCFG = false,
bool addImplicitDtors = false,
bool addInitializers = false,
bool addTemporaryDtors = false,
bool addLifetime = false,
bool addLoopExit = false,
bool addScopes = false,
bool synthesizeBodies = false,
bool addStaticInitBranches = false,
bool addCXXNewAllocator = true,
bool addRichCXXConstructors = true,
bool markElidedCXXConstructors = true,
bool addVirtualBaseBranches = true,
clang::CodeInjector* injector = nullptr)
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:446
Parameters
- clang::ASTContext& ASTCtx
- bool useUnoptimizedCFG = false
- bool addImplicitDtors = false
- bool addInitializers = false
- bool addTemporaryDtors = false
- bool addLifetime = false
- bool addLoopExit = false
- bool addScopes = false
- bool synthesizeBodies = false
- bool addStaticInitBranches = false
- bool addCXXNewAllocator = true
- bool addRichCXXConstructors = true
- bool markElidedCXXConstructors = true
- bool addVirtualBaseBranches = true
- clang::CodeInjector* injector = nullptr
¶void clear()
void clear()
Description
Discard all previously created AnalysisDeclContexts.
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:486
¶clang::BodyFarm& getBodyFarm()
clang::BodyFarm& getBodyFarm()
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:483
¶CFG::BuildOptions& getCFGBuildOptions()
CFG::BuildOptions& getCFGBuildOptions()
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:462
¶clang::AnalysisDeclContext* getContext(
const clang::Decl* D)
clang::AnalysisDeclContext* getContext(
const clang::Decl* D)
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:456
Parameters
- const clang::Decl* D
¶clang::LocationContextManager&
getLocationContextManager()
clang::LocationContextManager&
getLocationContextManager()
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:491
¶const clang::StackFrameContext* getStackFrame(
const clang::Decl* D)
const clang::StackFrameContext* getStackFrame(
const clang::Decl* D)
Description
Obtain the beginning context of the analysis.
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:470
Parameters
- const clang::Decl* D
Returns
The top level stack frame for \p D.
¶const clang::StackFrameContext* getStackFrame(
clang::AnalysisDeclContext* ADC,
const clang::LocationContext* Parent,
const clang::Stmt* S,
const clang::CFGBlock* Block,
unsigned int BlockCount,
unsigned int Index)
const clang::StackFrameContext* getStackFrame(
clang::AnalysisDeclContext* ADC,
const clang::LocationContext* Parent,
const clang::Stmt* S,
const clang::CFGBlock* Block,
unsigned int BlockCount,
unsigned int Index)
Description
\copydoc LocationContextManager::getStackFrame()
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:476
Parameters
- clang::AnalysisDeclContext* ADC
- const clang::LocationContext* Parent
- const clang::Stmt* S
- const clang::CFGBlock* Block
- unsigned int BlockCount
- unsigned int Index
¶bool getUseUnoptimizedCFG() const
bool getUseUnoptimizedCFG() const
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:458
¶bool synthesizeBodies() const
bool synthesizeBodies() const
Declared at: clang/include/clang/Analysis/AnalysisDeclContext.h:465
Returns
Whether faux bodies should be synthesized for known functions.