clang API Documentation
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. | |
template<typename T > | |
Optional< T > | getAs () const |
Convert to the specified CFGElement type, returning None if this CFGElement is not of the desired type. | |
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.
clang::CFGElement::CFGElement | ( | Kind | kind, |
const void * | Ptr1, | ||
const void * | Ptr2 = nullptr |
||
) | [inline, protected] |
clang::CFGElement::CFGElement | ( | ) | [inline, protected] |
T clang::CFGElement::castAs | ( | ) | const [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::threadSafety::ThreadSafetyAnalyzer::runAnalysis(), clang::threadSafety::LocalVariableMap::traverseCFG(), clang::ento::ExprEngine::VisitLogicalExpr(), and clang::threadSafety::CFGWalker::walk().
Optional<T> clang::CFGElement::getAs | ( | ) | const [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.
Referenced by Accumulate(), CheckFallThrough(), clang::CallEventManager::getCaller(), getRegionForConstructedObject(), clang::threadSafety::neverReturns(), print_elem(), ResolveCondition(), and clang::ento::ExprEngine::VisitGuardedExpr().
Kind clang::CFGElement::getKind | ( | ) | const [inline] |
Definition at line 107 of file CFG.h.
Referenced by CFGElement(), clang::CFGImplicitDtor::getDestructorDecl(), getLocationForCaller(), clang::ento::ExprEngine::processCFGElement(), and clang::ento::ExprEngine::ProcessImplicitDtor().
llvm::PointerIntPair<void *, 2> clang::CFGElement::Data1 [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().
llvm::PointerIntPair<void *, 2> clang::CFGElement::Data2 [protected] |
Definition at line 73 of file CFG.h.
Referenced by clang::CFGDeleteDtor::getDeleteExpr(), getKind(), and clang::CFGAutomaticObjDtor::getTriggerStmt().