clang  3.9.0svn
Public Member Functions | Friends | List of all members
clang::ento::nonloc::ConcreteInt Class Reference

Value representing integer constant. More...

#include <SVals.h>

Inheritance diagram for clang::ento::nonloc::ConcreteInt:
Inheritance graph
[legend]
Collaboration diagram for clang::ento::nonloc::ConcreteInt:
Collaboration graph
[legend]

Public Member Functions

 ConcreteInt (const llvm::APSInt &V)
 
const llvm::APSInt & getValue () const
 
SVal evalBinOp (SValBuilder &svalBuilder, BinaryOperator::Opcode Op, const ConcreteInt &R) const
 
ConcreteInt evalComplement (SValBuilder &svalBuilder) const
 
ConcreteInt evalMinus (SValBuilder &svalBuilder) const
 
- Public Member Functions inherited from clang::ento::NonLoc
void dumpToStream (raw_ostream &Out) const
 
- Public Member Functions inherited from clang::ento::SVal
 SVal ()
 
template<typename T >
castAs () const
 Convert to the specified SVal type, asserting that this SVal is of the desired type. More...
 
template<typename T >
Optional< T > getAs () const
 Convert to the specified SVal type, returning None if this SVal is not of the desired type. More...
 
unsigned getRawKind () const
 
BaseKind getBaseKind () const
 
unsigned getSubKind () const
 
void Profile (llvm::FoldingSetNodeID &ID) const
 
bool operator== (const SVal &R) const
 
bool operator!= (const SVal &R) const
 
bool isUnknown () const
 
bool isUndef () const
 
bool isUnknownOrUndef () const
 
bool isValid () const
 
bool isConstant () const
 
bool isConstant (int I) const
 
bool isZeroConstant () const
 
bool hasConjuredSymbol () const
 hasConjuredSymbol - If this SVal wraps a conjured symbol, return true; More...
 
const FunctionDeclgetAsFunctionDecl () const
 getAsFunctionDecl - If this SVal is a MemRegionVal and wraps a CodeTextRegion wrapping a FunctionDecl, return that FunctionDecl. More...
 
SymbolRef getAsLocSymbol (bool IncludeBaseRegions=false) const
 If this SVal is a location and wraps a symbol, return that SymbolRef. More...
 
SymbolRef getLocSymbolInBase () const
 Get the symbol in the SVal or its base region. More...
 
SymbolRef getAsSymbol (bool IncludeBaseRegions=false) const
 If this SVal wraps a symbol return that SymbolRef. More...
 
const SymExprgetAsSymbolicExpression () const
 getAsSymbolicExpression - If this Sval wraps a symbolic expression then return that expression. More...
 
const SymExprgetAsSymExpr () const
 
const MemRegiongetAsRegion () const
 
void dumpToStream (raw_ostream &OS) const
 
void dump () const
 
SymExpr::symbol_iterator symbol_begin () const
 
SymExpr::symbol_iterator symbol_end () const
 

Friends

class SVal
 

Additional Inherited Members

- Public Types inherited from clang::ento::SVal
enum  BaseKind
 
enum  { BaseBits = 2, BaseMask = 0x3 }
 
typedef SmallVector< SVal, 5 > BufferTy
 BufferTy - A temporary buffer to hold a set of SVals. More...
 
- Protected Member Functions inherited from clang::ento::NonLoc
 NonLoc ()
 
 NonLoc (unsigned SubKind, const void *d)
 
- Protected Member Functions inherited from clang::ento::DefinedSVal
 DefinedSVal ()
 
 DefinedSVal (const void *d, bool isLoc, unsigned ValKind)
 
- Protected Member Functions inherited from clang::ento::DefinedOrUnknownSVal
 DefinedOrUnknownSVal ()
 
 DefinedOrUnknownSVal (const void *d, bool isLoc, unsigned ValKind)
 
 DefinedOrUnknownSVal (BaseKind k, void *D=nullptr)
 
- Protected Member Functions inherited from clang::ento::SVal
 SVal (const void *d, bool isLoc, unsigned ValKind)
 
 SVal (BaseKind k, const void *D=nullptr)
 
- Protected Attributes inherited from clang::ento::SVal
const void * Data
 
unsigned Kind
 The lowest 2 bits are a BaseKind (0 – 3). More...
 

Detailed Description

Value representing integer constant.

Definition at line 341 of file SVals.h.

Constructor & Destructor Documentation

clang::ento::nonloc::ConcreteInt::ConcreteInt ( const llvm::APSInt &  V)
inlineexplicit

Definition at line 343 of file SVals.h.

Member Function Documentation

SVal nonloc::ConcreteInt::evalBinOp ( SValBuilder svalBuilder,
BinaryOperator::Opcode  Op,
const ConcreteInt R 
) const
nonloc::ConcreteInt nonloc::ConcreteInt::evalComplement ( SValBuilder svalBuilder) const

Definition at line 208 of file SVals.cpp.

References getValue(), and clang::ento::SValBuilder::makeIntVal().

nonloc::ConcreteInt nonloc::ConcreteInt::evalMinus ( SValBuilder svalBuilder) const

Definition at line 213 of file SVals.cpp.

References getValue(), and clang::ento::SValBuilder::makeIntVal().

const llvm::APSInt& clang::ento::nonloc::ConcreteInt::getValue ( ) const
inline

Friends And Related Function Documentation

friend class SVal
friend

Definition at line 358 of file SVals.h.


The documentation for this class was generated from the following files: