clang 20.0.0git
|
It represents a stack frame of the call stack (based on CallEvent). More...
#include "clang/Analysis/AnalysisDeclContext.h"
Public Member Functions | |
~StackFrameContext () override=default | |
const Stmt * | getCallSite () const |
const CFGBlock * | getCallSiteBlock () const |
bool | inTopFrame () const override |
unsigned | getIndex () const |
CFGElement | getCallSiteCFGElement () const |
void | Profile (llvm::FoldingSetNodeID &ID) override |
Public Member Functions inherited from clang::LocationContext | |
virtual | ~LocationContext () |
ContextKind | getKind () const |
int64_t | getID () const |
LLVM_ATTRIBUTE_RETURNS_NONNULL AnalysisDeclContext * | getAnalysisDeclContext () const |
const LocationContext * | getParent () const |
It might return null. | |
bool | isParentOf (const LocationContext *LC) const |
const Decl * | getDecl () const |
CFG * | getCFG () const |
template<typename T > | |
T * | getAnalysis () const |
const ParentMap & | getParentMap () const |
const ImplicitParamDecl * | getSelfDecl () const |
const StackFrameContext * | getStackFrame () const |
virtual bool | inTopFrame () const |
virtual void | Profile (llvm::FoldingSetNodeID &ID)=0 |
LLVM_DUMP_METHOD void | dumpStack (raw_ostream &Out) const |
Prints out the call stack. | |
void | printJson (raw_ostream &Out, const char *NL="\n", unsigned int Space=0, bool IsDot=false, std::function< void(const LocationContext *)> printMoreInfoPerContext=[](const LocationContext *) {}) const |
Prints out the call stack in json format. | |
LLVM_DUMP_METHOD void | dump () const |
Static Public Member Functions | |
static void | Profile (llvm::FoldingSetNodeID &ID, AnalysisDeclContext *ADC, const LocationContext *ParentLC, const Stmt *S, const CFGBlock *Block, unsigned BlockCount, unsigned Index) |
static bool | classof (const LocationContext *LC) |
Static Public Member Functions inherited from clang::LocationContext | |
static void | ProfileCommon (llvm::FoldingSetNodeID &ID, ContextKind ck, AnalysisDeclContext *ctx, const LocationContext *parent, const void *data) |
Friends | |
class | LocationContextManager |
Additional Inherited Members | |
Public Types inherited from clang::LocationContext | |
enum | ContextKind { StackFrame , Block } |
Protected Member Functions inherited from clang::LocationContext | |
LocationContext (ContextKind k, AnalysisDeclContext *ctx, const LocationContext *parent, int64_t ID) | |
It represents a stack frame of the call stack (based on CallEvent).
Definition at line 299 of file AnalysisDeclContext.h.
|
overridedefault |
|
inlinestatic |
Definition at line 347 of file AnalysisDeclContext.h.
References clang::LocationContext::getKind(), and clang::LocationContext::StackFrame.
|
inline |
Definition at line 325 of file AnalysisDeclContext.h.
Referenced by clang::ento::ExprEngine::computeObjectUnderConstruction(), clang::ento::CallEventManager::getCaller(), clang::ento::CXXInheritedConstructorCall::getInheritingStackFrame(), clang::ento::StackHintGeneratorForSymbol::getMessage(), clang::ento::MemRegionManager::getVarRegion(), clang::ento::ExprEngine::processCallExit(), clang::ento::ExprEngine::updateObjectsUnderConstruction(), and clang::ento::retaincountchecker::RefCountReportVisitor::VisitNode().
|
inline |
Definition at line 327 of file AnalysisDeclContext.h.
References Block.
Referenced by clang::ento::ExprEngine::computeObjectUnderConstruction(), clang::ento::CallEventManager::getCaller(), getLocationForCaller(), clang::ento::ExprEngine::processCallExit(), and clang::ento::ExprEngine::updateObjectsUnderConstruction().
|
inline |
Definition at line 333 of file AnalysisDeclContext.h.
References Block.
Referenced by clang::ento::CallEvent::getConstructionContext().
|
inline |
Definition at line 331 of file AnalysisDeclContext.h.
Referenced by clang::ento::ExprEngine::computeObjectUnderConstruction(), clang::ento::CallEventManager::getCaller(), getLocationForCaller(), clang::ento::ExprEngine::processCallExit(), and clang::ento::ExprEngine::updateObjectsUnderConstruction().
|
inlineoverridevirtual |
Reimplemented from clang::LocationContext.
Definition at line 329 of file AnalysisDeclContext.h.
References clang::LocationContext::getParent().
Referenced by getCalleeNode(), clang::LocationContext::inTopFrame(), and clang::ento::ExprEngine::processEndOfFunction().
|
overridevirtual |
Implements clang::LocationContext.
Definition at line 414 of file AnalysisDeclContext.cpp.
References clang::LocationContext::getAnalysisDeclContext(), clang::LocationContext::getParent(), and Profile().
Referenced by clang::LocationContextManager::getStackFrame(), and Profile().
|
inlinestatic |
Definition at line 337 of file AnalysisDeclContext.h.
References Block, ID, clang::LocationContext::ProfileCommon(), and clang::LocationContext::StackFrame.
|
friend |
Definition at line 300 of file AnalysisDeclContext.h.