class SymbolicRegion
Declaration
class SymbolicRegion : public SubRegion { /* full declaration omitted */ };
Description
SymbolicRegion - A special, "non-concrete" region. Unlike other region classes, SymbolicRegion represents a region that serves as an alias for either a real region, a NULL pointer, etc. It essentially is used to map the concept of symbolic values into the domain of regions. Symbolic regions do not need to be typed.
Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:770
Inherits from: SubRegion
Member Variables
- private const clang::ento::SymbolRef sym
Inherited from SubRegion:
Method Overview
- public void Profile(llvm::FoldingSetNodeID & ID) const
- public static void ProfileRegion(llvm::FoldingSetNodeID & ID, clang::ento::SymbolRef sym, const clang::ento::MemRegion * superRegion)
- private SymbolicRegion(const clang::ento::SymbolRef s, const clang::ento::MemSpaceRegion * sreg)
- public static bool classof(const clang::ento::MemRegion * R)
- public void dumpToStream(llvm::raw_ostream & os) const
- public clang::ento::SymbolRef getSymbol() const
- public bool isBoundable() const
Inherited from SubRegion:
Inherited from MemRegion:
- public Profile
- public StripCasts
- public canPrintPretty
- public canPrintPrettyAsExpr
- public castAs
- public dump
- public dumpToStream
- public getAs
- public getAsOffset
- public getBaseRegion
- public getContext
- public getDescriptiveName
- public getKind
- public getMemRegionManager
- public getMemorySpace
- public getMostDerivedObjectRegion
- public getString
- public getSymbolicBase
- public hasGlobalsOrParametersStorage
- public hasStackNonParametersStorage
- public hasStackParametersStorage
- public hasStackStorage
- public isBoundable
- public isSubRegionOf
- public printPretty
- public printPrettyAsExpr
- public sourceRange
Inherited from FoldingSetBase::Node:
Methods
¶void Profile(llvm::FoldingSetNodeID& ID) const
void Profile(llvm::FoldingSetNodeID& ID) const
Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:793
Parameters
¶static void ProfileRegion(
llvm::FoldingSetNodeID& ID,
clang::ento::SymbolRef sym,
const clang::ento::MemRegion* superRegion)
static void ProfileRegion(
llvm::FoldingSetNodeID& ID,
clang::ento::SymbolRef sym,
const clang::ento::MemRegion* superRegion)
Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:795
Parameters
- llvm::FoldingSetNodeID& ID
- clang::ento::SymbolRef sym
- const clang::ento::MemRegion* superRegion
¶SymbolicRegion(
const clang::ento::SymbolRef s,
const clang::ento::MemSpaceRegion* sreg)
SymbolicRegion(
const clang::ento::SymbolRef s,
const clang::ento::MemSpaceRegion* sreg)
Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:775
Parameters
- const clang::ento::SymbolRef s
- const clang::ento::MemSpaceRegion* sreg
¶static bool classof(
const clang::ento::MemRegion* R)
static bool classof(
const clang::ento::MemRegion* R)
Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:801
Parameters
- const clang::ento::MemRegion* R
¶void dumpToStream(llvm::raw_ostream& os) const
void dumpToStream(llvm::raw_ostream& os) const
Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:799
Parameters
¶clang::ento::SymbolRef getSymbol() const
clang::ento::SymbolRef getSymbol() const
Description
It might return null.
Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:789
¶bool isBoundable() const
bool isBoundable() const
Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:791