clang 22.0.0git
|
A symbol representing the result of an expression in the case when we do not know anything about what the expression is. More...
#include "clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h"
Public Member Functions | |
ConstCFGElementRef | getCFGElementRef () const |
const Stmt * | getStmt () const |
unsigned | getCount () const |
const void * | getTag () const |
It might return null. | |
QualType | getType () const override |
StringRef | getKindStr () const override |
Get a string representation of the kind of the region. | |
void | dumpToStream (raw_ostream &os) const override |
void | Profile (llvm::FoldingSetNodeID &profile) override |
Public Member Functions inherited from clang::ento::SymbolData | |
~SymbolData () override=default | |
unsigned | computeComplexity () const override |
Public Member Functions inherited from clang::ento::SymExpr | |
virtual | ~SymExpr ()=default |
Kind | getKind () const |
SymbolID | getSymbolID () const |
Get a unique identifier for this symbol. | |
virtual void | dump () const |
llvm::iterator_range< symbol_iterator > | symbols () const |
virtual const MemRegion * | getOriginRegion () const |
Find the region from which this symbol originates. |
Static Public Member Functions | |
static void | Profile (llvm::FoldingSetNodeID &profile, ConstCFGElementRef Elem, const LocationContext *LCtx, QualType T, unsigned Count, const void *SymbolTag) |
static bool | classof (const SymExpr *SE) |
static constexpr bool | classof (Kind K) |
Static Public Member Functions inherited from clang::ento::SymbolData | |
static bool | classof (const SymExpr *SE) |
static constexpr bool | classof (Kind K) |
Static Public Attributes | |
static constexpr Kind | ClassKind = SymbolConjuredKind |
Friends | |
class | SymExprAllocator |
Additional Inherited Members | |
Public Types inherited from clang::ento::SymExpr | |
enum | Kind |
Protected Member Functions inherited from clang::ento::SymbolData | |
SymbolData (Kind k, SymbolID sym) | |
Protected Member Functions inherited from clang::ento::SymExpr | |
SymExpr (Kind k, SymbolID Sym) | |
Static Protected Member Functions inherited from clang::ento::SymExpr | |
static bool | isValidTypeForSymbol (QualType T) |
Protected Attributes inherited from clang::ento::SymExpr | |
unsigned | Complexity = 0 |
A symbol representing the result of an expression in the case when we do not know anything about what the expression is.
Definition at line 82 of file SymbolManager.h.
Definition at line 132 of file SymbolManager.h.
References classof(), and clang::ento::SymExpr::getKind().
Referenced by classof().
Definition at line 133 of file SymbolManager.h.
References ClassKind.
|
overridevirtual |
Reimplemented from clang::ento::SymExpr.
Definition at line 122 of file SymbolManager.cpp.
References getKindStr(), getStmt(), and clang::ento::SymExpr::getSymbolID().
|
inline |
Definition at line 100 of file SymbolManager.h.
Referenced by clang::ento::SValExplainer::VisitSymbolConjured().
|
inline |
Definition at line 105 of file SymbolManager.h.
|
overridevirtual |
Get a string representation of the kind of the region.
Implements clang::ento::SymbolData.
Definition at line 34 of file SymbolManager.cpp.
Referenced by dumpToStream().
const Stmt * SymbolConjured::getStmt | ( | ) | const |
Definition at line 79 of file SymbolManager.cpp.
References clang::CFGElement::AutomaticObjectDtor, clang::CFGElement::BaseDtor, clang::CFGElement::CleanupFunction, clang::CFGElement::Constructor, clang::CFGElement::CXXRecordTypedCall, clang::CFGElement::DeleteDtor, clang::CFGInitializer::getInitializer(), getStmt(), clang::Init, clang::CFGElement::Initializer, clang::CFGElement::LifetimeEnds, clang::CFGElement::LoopExit, clang::CFGElement::MemberDtor, clang::CFGElement::NewAllocator, clang::CFGElement::ScopeBegin, clang::CFGElement::ScopeEnd, clang::CFGElement::Statement, and clang::CFGElement::TemporaryDtor.
Referenced by dumpToStream(), and getStmt().
|
inline |
It might return null.
Definition at line 107 of file SymbolManager.h.
|
overridevirtual |
Implements clang::ento::SymExpr.
Definition at line 205 of file SymbolManager.cpp.
Referenced by clang::ento::SValExplainer::VisitSymbolConjured().
|
inlineoverridevirtual |
Implements clang::ento::SymExpr.
Definition at line 126 of file SymbolManager.h.
References Profile().
|
inlinestatic |
|
friend |
Definition at line 89 of file SymbolManager.h.
References ClassKind, clang::ento::SymbolData::SymbolData(), and SymExprAllocator.
Referenced by SymExprAllocator.
|
staticconstexpr |
Definition at line 131 of file SymbolManager.h.
Referenced by classof(), Profile(), and SymExprAllocator.