15 #include "llvm/ADT/DenseMap.h"
20 using namespace clang;
22 typedef llvm::DenseMap<const Stmt*, CFGBlock*>
SMap;
57 CFGBlock *&Entry = SM[CS->getStmt()];
static void Accumulate(SMap &SM, CFGBlock *B)
detail::InMemoryDirectory::const_iterator I
CFGBlock - Represents a single basic block in a source-level CFG.
CFG - Represents a source-level, intra-procedural CFG that represents the control-flow of a Stmt...
CFGBlock * getBlock(Stmt *S)
Returns the CFGBlock the specified Stmt* appears in.
ElementList::iterator iterator
CFGTerminator getTerminator()
const TemplateArgument * iterator
Stmt * getParentIgnoreParens(Stmt *) const
static CFGStmtMap * Build(CFG *C, ParentMap *PM)
Returns a new CFGMap for the given CFG.
detail::InMemoryDirectory::const_iterator E
static SMap * AsMap(void *m)
X
Add a minimal nested name specifier fixit hint to allow lookup of a tag name from an outer enclosing ...
CFGElement - Represents a top-level expression in a basic block.
llvm::DenseMap< const Stmt *, CFGBlock * > SMap
Optional< T > getAs() const
Convert to the specified CFGElement type, returning None if this CFGElement is not of the desired typ...