clang
6.0.0
|
CFGElement - Represents a top-level expression in a basic block. More...
#include "clang/Analysis/CFG.h"
Public Types | |
enum | Kind { Statement, Initializer, NewAllocator, LifetimeEnds, LoopExit, AutomaticObjectDtor, DeleteDtor, BaseDtor, MemberDtor, TemporaryDtor, DTOR_BEGIN = AutomaticObjectDtor, DTOR_END = TemporaryDtor } |
Public Member Functions | |
template<typename T > | |
T | castAs () const |
Convert to the specified CFGElement type, asserting that this CFGElement is of the desired type. More... | |
template<typename T > | |
Optional< T > | getAs () const |
Convert to the specified CFGElement type, returning None if this CFGElement is not of the desired type. More... | |
Kind | getKind () const |
Protected Member Functions | |
CFGElement (Kind kind, const void *Ptr1, const void *Ptr2=nullptr) | |
CFGElement ()=default | |
Protected Attributes | |
llvm::PointerIntPair< void *, 2 > | Data1 |
llvm::PointerIntPair< void *, 2 > | Data2 |
CFGElement - Represents a top-level expression in a basic block.
|
inlineprotected |
Definition at line 78 of file CFG.h.
References CFGElement(), and getKind().
|
protecteddefault |
Referenced by CFGElement().
|
inline |
Convert to the specified CFGElement type, asserting that this CFGElement is of the desired type.
Definition at line 90 of file CFG.h.
References clang::T.
Referenced by clang::ento::CoreEngine::enqueueStmtNode(), getLocationForCaller(), clang::ento::ExprEngine::ProcessImplicitDtor(), clang::consumed::ConsumedAnalyzer::run(), clang::ento::ExprEngine::VisitLogicalExpr(), and clang::threadSafety::CFGWalker::walk().
Convert to the specified CFGElement type, returning None if this CFGElement is not of the desired type.
Definition at line 101 of file CFG.h.
References clang::None, and clang::T.
Referenced by canHaveDirectConstructor(), neverReturns(), and print_elem().
|
inline |
Definition at line 110 of file CFG.h.
Referenced by canHaveDirectConstructor(), CFGElement(), getLocationForCaller(), and clang::ento::ExprEngine::ProcessImplicitDtor().
|
protected |
Definition at line 75 of file CFG.h.
Referenced by clang::CFGNewAllocator::getAllocatorExpr(), clang::CFGBaseDtor::getBaseSpecifier(), clang::CFGTemporaryDtor::getBindTemporaryExpr(), clang::CFGDeleteDtor::getCXXRecordDecl(), clang::CFGMemberDtor::getFieldDecl(), clang::CFGInitializer::getInitializer(), clang::CFGLoopExit::getLoopStmt(), clang::CFGStmt::getStmt(), clang::CFGLifetimeEnds::getVarDecl(), and clang::CFGAutomaticObjDtor::getVarDecl().
|
protected |
Definition at line 76 of file CFG.h.
Referenced by clang::CFGDeleteDtor::getDeleteExpr(), clang::CFGLifetimeEnds::getTriggerStmt(), and clang::CFGAutomaticObjDtor::getTriggerStmt().