clang
3.9.0
|
CFGElement - Represents a top-level expression in a basic block. More...
#include <CFG.h>
Public Types | |
enum | Kind { Statement, Initializer, NewAllocator, 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 () | |
Protected Attributes | |
llvm::PointerIntPair< void *, 2 > | Data1 |
llvm::PointerIntPair< void *, 2 > | Data2 |
CFGElement - Represents a top-level expression in a basic block.
|
inlineprotected |
|
inline |
Convert to the specified CFGElement type, asserting that this CFGElement is of the desired type.
Definition at line 87 of file CFG.h.
Referenced by CheckFallThrough(), clang::ento::CoreEngine::enqueueStmtNode(), getLocationForCaller(), clang::ento::ExprEngine::processCFGElement(), clang::ento::ExprEngine::ProcessImplicitDtor(), clang::consumed::ConsumedAnalyzer::run(), clang::ento::ExprEngine::VisitLogicalExpr(), and clang::threadSafety::CFGWalker::walk().
|
inline |
Convert to the specified CFGElement type, returning None if this CFGElement is not of the desired type.
Definition at line 98 of file CFG.h.
References clang::None.
Referenced by Accumulate(), canHaveDirectConstructor(), CheckFallThrough(), clang::CallEventManager::getCaller(), neverReturns(), print_elem(), and ResolveCondition().
|
inline |
Definition at line 107 of file CFG.h.
Referenced by canHaveDirectConstructor(), CFGElement(), clang::CFGImplicitDtor::getDestructorDecl(), getLocationForCaller(), clang::ento::ExprEngine::processCFGElement(), and clang::ento::ExprEngine::ProcessImplicitDtor().
|
protected |
Definition at line 72 of file CFG.h.
Referenced by clang::CFGNewAllocator::getAllocatorExpr(), clang::CFGBaseDtor::getBaseSpecifier(), clang::CFGTemporaryDtor::getBindTemporaryExpr(), clang::CFGDeleteDtor::getCXXRecordDecl(), clang::CFGMemberDtor::getFieldDecl(), clang::CFGInitializer::getInitializer(), getKind(), clang::CFGStmt::getStmt(), and clang::CFGAutomaticObjDtor::getVarDecl().
|
protected |
Definition at line 73 of file CFG.h.
Referenced by clang::CFGDeleteDtor::getDeleteExpr(), getKind(), and clang::CFGAutomaticObjDtor::getTriggerStmt().