clang  10.0.0svn
Public Member Functions | Static Public Member Functions | Friends | List of all members
clang::StackFrameContext Class Reference

#include "clang/Analysis/AnalysisDeclContext.h"

Inheritance diagram for clang::StackFrameContext:
Inheritance graph
Collaboration diagram for clang::StackFrameContext:
Collaboration graph

Public Member Functions

 ~StackFrameContext () override=default
const StmtgetCallSite () const
const CFGBlockgetCallSiteBlock () const
bool inTopFrame () const override
 Return true if the current LocationContext has no caller context. More...
unsigned getIndex () const
void Profile (llvm::FoldingSetNodeID &ID) override
- Public Member Functions inherited from clang::LocationContext
virtual ~LocationContext ()
ContextKind getKind () const
int64_t getID () const
AnalysisDeclContextgetAnalysisDeclContext () const
const LocationContextgetParent () const
bool isParentOf (const LocationContext *LC) const
const DeclgetDecl () const
CFGgetCFG () const
template<typename T >
T * getAnalysis () const
const ParentMapgetParentMap () const
const ImplicitParamDeclgetSelfDecl () const
const StackFrameContextgetStackFrame () const
void dumpStack (raw_ostream &Out, const char *NL="\, std::function< void(const LocationContext *)> printMoreInfoPerContext=[](const LocationContext *) {}) const
void printJson (raw_ostream &Out, const char *NL="\, unsigned int Space=0, bool IsDot=false, std::function< void(const LocationContext *)> printMoreInfoPerContext=[](const LocationContext *) {}) const
void dump () const

Static Public Member Functions

static void Profile (llvm::FoldingSetNodeID &ID, AnalysisDeclContext *ctx, const LocationContext *parent, const Stmt *s, const CFGBlock *blk, unsigned blockCount, unsigned idx)
static bool classof (const LocationContext *Ctx)
- Static Public Member Functions inherited from clang::LocationContext
static void ProfileCommon (llvm::FoldingSetNodeID &ID, ContextKind ck, AnalysisDeclContext *ctx, const LocationContext *parent, const void *data)


class LocationContextManager

Additional Inherited Members

- Public Types inherited from clang::LocationContext
enum  ContextKind { StackFrame, Scope, Block }
- Protected Member Functions inherited from clang::LocationContext
 LocationContext (ContextKind k, AnalysisDeclContext *ctx, const LocationContext *parent, int64_t ID)

Detailed Description

Definition at line 296 of file AnalysisDeclContext.h.

Constructor & Destructor Documentation

◆ ~StackFrameContext()

clang::StackFrameContext::~StackFrameContext ( )

Member Function Documentation

◆ classof()

static bool clang::StackFrameContext::classof ( const LocationContext Ctx)

Definition at line 342 of file AnalysisDeclContext.h.

References clang::LocationContext::getKind().

◆ getCallSite()

const Stmt* clang::StackFrameContext::getCallSite ( ) const

◆ getCallSiteBlock()

const CFGBlock* clang::StackFrameContext::getCallSiteBlock ( ) const

◆ getIndex()

unsigned clang::StackFrameContext::getIndex ( ) const

◆ inTopFrame()

bool clang::StackFrameContext::inTopFrame ( ) const

Return true if the current LocationContext has no caller context.

Reimplemented from clang::LocationContext.

Definition at line 327 of file AnalysisDeclContext.h.

Referenced by clang::LocationContext::inTopFrame(), isPointerToConst(), and clang::ento::ExprEngine::processEndOfFunction().

◆ Profile() [1/2]

void StackFrameContext::Profile ( llvm::FoldingSetNodeID &  ID)

◆ Profile() [2/2]

static void clang::StackFrameContext::Profile ( llvm::FoldingSetNodeID &  ID,
AnalysisDeclContext ctx,
const LocationContext parent,
const Stmt s,
const CFGBlock blk,
unsigned  blockCount,
unsigned  idx 

Definition at line 333 of file AnalysisDeclContext.h.

Friends And Related Function Documentation

◆ LocationContextManager

friend class LocationContextManager

Definition at line 297 of file AnalysisDeclContext.h.

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