clang API Documentation
#include <SymbolManager.h>
Public Member Functions | |
SymbolMetadata (SymbolID sym, const MemRegion *r, const Stmt *s, QualType t, unsigned count, const void *tag) | |
const MemRegion * | getRegion () const |
const Stmt * | getStmt () const |
unsigned | getCount () const |
const void * | getTag () const |
QualType | getType () const override |
void | dumpToStream (raw_ostream &os) const override |
void | Profile (llvm::FoldingSetNodeID &profile) override |
Static Public Member Functions | |
static void | Profile (llvm::FoldingSetNodeID &profile, const MemRegion *R, const Stmt *S, QualType T, unsigned Count, const void *Tag) |
static bool | classof (const SymExpr *SE) |
SymbolMetadata - Represents path-dependent metadata about a specific region. Metadata symbols remain live as long as they are marked as in use before dead-symbol sweeping AND their associated regions are still alive. Intended for use by checkers.
Definition at line 267 of file SymbolManager.h.
clang::ento::SymbolMetadata::SymbolMetadata | ( | SymbolID | sym, |
const MemRegion * | r, | ||
const Stmt * | s, | ||
QualType | t, | ||
unsigned | count, | ||
const void * | tag | ||
) | [inline] |
Definition at line 274 of file SymbolManager.h.
static bool clang::ento::SymbolMetadata::classof | ( | const SymExpr * | SE | ) | [inline, static] |
Reimplemented from clang::ento::SymbolData.
Definition at line 303 of file SymbolManager.h.
References clang::ento::SymExpr::getKind(), and clang::ento::SymExpr::MetadataKind.
void SymbolMetadata::dumpToStream | ( | raw_ostream & | os | ) | const [override, virtual] |
Reimplemented from clang::ento::SymExpr.
Definition at line 80 of file SymbolManager.cpp.
References clang::QualType::getAsString(), getRegion(), and clang::ento::SymbolData::getSymbolID().
unsigned clang::ento::SymbolMetadata::getCount | ( | ) | const [inline] |
Definition at line 280 of file SymbolManager.h.
const MemRegion* clang::ento::SymbolMetadata::getRegion | ( | ) | const [inline] |
Definition at line 278 of file SymbolManager.h.
Referenced by dumpToStream().
const Stmt* clang::ento::SymbolMetadata::getStmt | ( | ) | const [inline] |
Definition at line 279 of file SymbolManager.h.
const void* clang::ento::SymbolMetadata::getTag | ( | ) | const [inline] |
Definition at line 281 of file SymbolManager.h.
QualType SymbolMetadata::getType | ( | ) | const [override, virtual] |
Implements clang::ento::SymExpr.
Definition at line 320 of file SymbolManager.cpp.
static void clang::ento::SymbolMetadata::Profile | ( | llvm::FoldingSetNodeID & | profile, |
const MemRegion * | R, | ||
const Stmt * | S, | ||
QualType | T, | ||
unsigned | Count, | ||
const void * | Tag | ||
) | [inline, static] |
Definition at line 287 of file SymbolManager.h.
References clang::ento::SymExpr::MetadataKind.
Referenced by Profile().
void clang::ento::SymbolMetadata::Profile | ( | llvm::FoldingSetNodeID & | profile | ) | [inline, override, virtual] |
Implements clang::ento::SymExpr.
Definition at line 298 of file SymbolManager.h.
References Profile().