clang API Documentation
#include <MemRegion.h>
Public Member Functions | |
QualType | getLocationType () const override |
const BlockDecl * | getDecl () const |
AnalysisDeclContext * | getAnalysisDeclContext () const |
virtual void | dumpToStream (raw_ostream &os) const override |
void | Profile (llvm::FoldingSetNodeID &ID) const override |
Static Public Member Functions | |
static void | ProfileRegion (llvm::FoldingSetNodeID &ID, const BlockDecl *BD, CanQualType, const AnalysisDeclContext *, const MemRegion *) |
static bool | classof (const MemRegion *R) |
Friends | |
class | MemRegionManager |
BlockTextRegion - A region that represents code texts of blocks (closures). Blocks are represented with two kinds of regions. BlockTextRegions represent the "code", while BlockDataRegions represent instances of blocks, which correspond to "code+data". The distinction is important, because like a closure a block captures the values of externally referenced variables.
Definition at line 590 of file MemRegion.h.
static bool clang::ento::BlockTextRegion::classof | ( | const MemRegion * | R | ) | [inline, static] |
Reimplemented from clang::ento::CodeTextRegion.
Definition at line 620 of file MemRegion.h.
References clang::ento::MemRegion::BlockTextRegionKind, and clang::ento::MemRegion::getKind().
void BlockTextRegion::dumpToStream | ( | raw_ostream & | os | ) | const [override, virtual] |
Reimplemented from clang::ento::MemRegion.
Definition at line 464 of file MemRegion.cpp.
AnalysisDeclContext* clang::ento::BlockTextRegion::getAnalysisDeclContext | ( | ) | const [inline] |
Definition at line 610 of file MemRegion.h.
const BlockDecl* clang::ento::BlockTextRegion::getDecl | ( | ) | const [inline] |
Definition at line 606 of file MemRegion.h.
Referenced by clang::ento::MemRegionManager::getBlockDataRegion(), and clang::ento::BlockDataRegion::getDecl().
QualType clang::ento::BlockTextRegion::getLocationType | ( | ) | const [inline, override, virtual] |
Implements clang::ento::TypedRegion.
Definition at line 602 of file MemRegion.h.
Referenced by clang::ento::BlockDataRegion::getLocationType().
void BlockTextRegion::Profile | ( | llvm::FoldingSetNodeID & | ID | ) | const [override, virtual] |
Implements clang::ento::MemRegion.
Definition at line 379 of file MemRegion.cpp.
References ProfileRegion().
void BlockTextRegion::ProfileRegion | ( | llvm::FoldingSetNodeID & | ID, |
const BlockDecl * | BD, | ||
CanQualType | , | ||
const AnalysisDeclContext * | AC, | ||
const MemRegion * | |||
) | [static] |
Definition at line 371 of file MemRegion.cpp.
References clang::ento::MemRegion::BlockTextRegionKind.
Referenced by Profile().
friend class MemRegionManager [friend] |
Reimplemented from clang::ento::MemRegion.
Definition at line 591 of file MemRegion.h.