clang
17.0.0git
|
#include "clang/Analysis/ProgramPoint.h"
Public Member Functions | |
PostStmt (const Stmt *S, Kind k, const LocationContext *L, const ProgramPointTag *tag=nullptr) | |
PostStmt (const Stmt *S, const LocationContext *L, const ProgramPointTag *tag=nullptr) | |
![]() | |
StmtPoint (const Stmt *S, const void *p2, Kind k, const LocationContext *L, const ProgramPointTag *tag) | |
const Stmt * | getStmt () const |
template<typename T > | |
const T * | getStmtAs () const |
![]() | |
ProgramPoint | withTag (const ProgramPointTag *tag) const |
Create a new ProgramPoint object that is the same as the original except for using the specified tag value. More... | |
template<typename T > | |
T | castAs () const |
Convert to the specified ProgramPoint type, asserting that this ProgramPoint is of the desired type. More... | |
template<typename T > | |
std::optional< T > | getAs () const |
Convert to the specified ProgramPoint type, returning std::nullopt if this ProgramPoint is not of the desired type. More... | |
Kind | getKind () const |
bool | isPurgeKind () |
Is this a program point corresponding to purge/removal of dead symbols and bindings. More... | |
const ProgramPointTag * | getTag () const |
const LocationContext * | getLocationContext () const |
const StackFrameContext * | getStackFrame () const |
unsigned | getHashValue () const |
bool | operator== (const ProgramPoint &RHS) const |
bool | operator!= (const ProgramPoint &RHS) const |
void | Profile (llvm::FoldingSetNodeID &ID) const |
void | printJson (llvm::raw_ostream &Out, const char *NL="\n") const |
LLVM_DUMP_METHOD void | dump () const |
Protected Member Functions | |
PostStmt ()=default | |
PostStmt (const Stmt *S, const void *data, Kind k, const LocationContext *L, const ProgramPointTag *tag=nullptr) | |
![]() | |
StmtPoint ()=default | |
![]() | |
ProgramPoint ()=default | |
ProgramPoint (const void *P, Kind k, const LocationContext *l, const ProgramPointTag *tag=nullptr) | |
ProgramPoint (const void *P1, const void *P2, Kind k, const LocationContext *l, const ProgramPointTag *tag=nullptr) | |
const void * | getData1 () const |
const void * | getData2 () const |
void | setData2 (const void *d) |
Friends | |
class | ProgramPoint |
Additional Inherited Members | |
![]() | |
enum | Kind { BlockEdgeKind, BlockEntranceKind, BlockExitKind, PreStmtKind, PreStmtPurgeDeadSymbolsKind, PostStmtPurgeDeadSymbolsKind, PostStmtKind, PreLoadKind, PostLoadKind, PreStoreKind, PostStoreKind, PostConditionKind, PostLValueKind, PostAllocatorCallKind, MinPostStmtKind = PostStmtKind, MaxPostStmtKind = PostAllocatorCallKind, PostInitializerKind, CallEnterKind, CallExitBeginKind, CallExitEndKind, FunctionExitKind, PreImplicitCallKind, PostImplicitCallKind, MinImplicitCallKind = PreImplicitCallKind, MaxImplicitCallKind = PostImplicitCallKind, LoopExitKind, EpsilonKind } |
![]() | |
static ProgramPoint | getProgramPoint (const Stmt *S, ProgramPoint::Kind K, const LocationContext *LC, const ProgramPointTag *tag) |
Definition at line 309 of file ProgramPoint.h.
|
protecteddefault |
|
inlineprotected |
Definition at line 312 of file ProgramPoint.h.
|
inlineexplicit |
Definition at line 317 of file ProgramPoint.h.
|
inlineexplicit |
Definition at line 321 of file ProgramPoint.h.
|
friend |
Definition at line 326 of file ProgramPoint.h.