clang
10.0.0svn
|
SymbolMetadata - Represents path-dependent metadata about a specific region. More...
#include "clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h"
Public Member Functions | |
SymbolMetadata (SymbolID sym, const MemRegion *r, const Stmt *s, QualType t, const LocationContext *LCtx, unsigned count, const void *tag) | |
const MemRegion * | getRegion () const |
const Stmt * | getStmt () const |
const LocationContext * | getLocationContext () 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 |
![]() | |
~SymbolData () override=default | |
SymbolID | getSymbolID () const |
unsigned | computeComplexity () const override |
![]() | |
virtual | ~SymExpr ()=default |
Kind | getKind () const |
virtual void | dump () const |
symbol_iterator | symbol_begin () const |
virtual const MemRegion * | getOriginRegion () const |
Find the region from which this symbol originates. More... | |
Static Public Member Functions | |
static void | Profile (llvm::FoldingSetNodeID &profile, const MemRegion *R, const Stmt *S, QualType T, const LocationContext *LCtx, unsigned Count, const void *Tag) |
static bool | classof (const SymExpr *SE) |
![]() | |
static bool | classof (const SymExpr *SE) |
![]() | |
static symbol_iterator | symbol_end () |
Additional Inherited Members | |
![]() | |
enum | Kind |
![]() | |
SymbolData (Kind k, SymbolID sym) | |
![]() | |
SymExpr (Kind k) | |
![]() | |
static bool | isValidTypeForSymbol (QualType T) |
![]() | |
unsigned | Complexity = 0 |
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 201 of file SymbolManager.h.
|
inline |
Definition at line 210 of file SymbolManager.h.
References clang::ento::SymExpr::isValidTypeForSymbol().
Definition at line 248 of file SymbolManager.h.
References clang::ento::SymExpr::getKind().
|
overridevirtual |
Reimplemented from clang::ento::SymExpr.
Definition at line 103 of file SymbolManager.cpp.
|
inline |
Definition at line 224 of file SymbolManager.h.
|
inline |
Definition at line 223 of file SymbolManager.h.
|
inline |
Definition at line 221 of file SymbolManager.h.
Referenced by clang::ento::SValExplainer::VisitSymbolMetadata().
|
inline |
Definition at line 222 of file SymbolManager.h.
|
inline |
Definition at line 225 of file SymbolManager.h.
References clang::ento::SymbolRegionValue::dumpToStream(), and clang::ento::SymbolRegionValue::getType().
|
overridevirtual |
Implements clang::ento::SymExpr.
Definition at line 336 of file SymbolManager.cpp.
Referenced by clang::ento::SValExplainer::VisitSymbolMetadata().
|
inlinestatic |
Definition at line 231 of file SymbolManager.h.
|
inlineoverridevirtual |
Implements clang::ento::SymExpr.
Definition at line 243 of file SymbolManager.h.
References clang::ento::SymbolRegionValue::Profile().