Cppcheck
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
ExprEngine::ArrayValue Class Reference

#include <exprengine.h>

Inheritance diagram for ExprEngine::ArrayValue:
ExprEngine::Value

Classes

struct  IndexAndValue
 

Public Types

enum  { MAXSIZE = 0x7fffffff }
 

Public Member Functions

 ArrayValue (const std::string &name, ValuePtr size, ValuePtr value, bool pointer, bool nullPointer, bool uninitPointer)
 
 ArrayValue (DataBase *data, const Variable *var)
 
 ArrayValue (const std::string &name, const ArrayValue &arrayValue)
 
std::string getRange () const override
 
std::string getSymbolicExpression () const override
 
void assign (ValuePtr index, ValuePtr value)
 
void clear ()
 
ConditionalValue::Vector read (ValuePtr index) const
 
- Public Member Functions inherited from ExprEngine::Value
 Value (const std::string &name, const ValueType type)
 
virtual ~Value ()
 
virtual bool isEqual (const DataBase *dataBase, int value) const
 
virtual bool isGreaterThan (const DataBase *dataBase, int value) const
 
virtual bool isLessThan (const DataBase *dataBase, int value) const
 
virtual bool isUninit (const DataBase *dataBase) const
 

Public Attributes

bool pointer
 
bool nullPointer
 
bool uninitPointer
 
std::vector< IndexAndValuedata
 
std::vector< ValuePtrsize
 
- Public Attributes inherited from ExprEngine::Value
const std::string name
 
ValueType type
 

Detailed Description

Definition at line 194 of file exprengine.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
MAXSIZE 

Definition at line 196 of file exprengine.h.

Constructor & Destructor Documentation

◆ ArrayValue() [1/3]

ExprEngine::ArrayValue::ArrayValue ( const std::string &  name,
ExprEngine::ValuePtr  size,
ExprEngine::ValuePtr  value,
bool  pointer,
bool  nullPointer,
bool  uninitPointer 
)

Definition at line 890 of file exprengine.cpp.

References assign(), and size.

◆ ArrayValue() [2/3]

ExprEngine::ArrayValue::ArrayValue ( DataBase data,
const Variable var 
)

◆ ArrayValue() [3/3]

ExprEngine::ArrayValue::ArrayValue ( const std::string &  name,
const ArrayValue arrayValue 
)

Definition at line 928 of file exprengine.cpp.

Member Function Documentation

◆ assign()

void ExprEngine::ArrayValue::assign ( ExprEngine::ValuePtr  index,
ExprEngine::ValuePtr  value 
)

Definition at line 945 of file exprengine.cpp.

Referenced by ArrayValue().

◆ clear()

void ExprEngine::ArrayValue::clear ( )

Definition at line 965 of file exprengine.cpp.

◆ getRange()

std::string ExprEngine::ArrayValue::getRange ( ) const
overridevirtual

Reimplemented from ExprEngine::Value.

Definition at line 935 of file exprengine.cpp.

◆ getSymbolicExpression()

std::string ExprEngine::ArrayValue::getSymbolicExpression ( ) const
overridevirtual

Reimplemented from ExprEngine::Value.

Definition at line 1073 of file exprengine.cpp.

References ExprEngine::StructValue.

◆ read()

ExprEngine::ConditionalValue::Vector ExprEngine::ArrayValue::read ( ExprEngine::ValuePtr  index) const

Definition at line 992 of file exprengine.cpp.

References isEqual(), isNonOverlapping(), and ExprEngine::StringLiteralValue.

Referenced by checkFunctionCall().

Member Data Documentation

◆ data

std::vector<IndexAndValue> ExprEngine::ArrayValue::data

Definition at line 217 of file exprengine.h.

Referenced by ArrayValue().

◆ nullPointer

bool ExprEngine::ArrayValue::nullPointer

Definition at line 210 of file exprengine.h.

◆ pointer

bool ExprEngine::ArrayValue::pointer

Definition at line 209 of file exprengine.h.

◆ size

std::vector<ValuePtr> ExprEngine::ArrayValue::size

Definition at line 218 of file exprengine.h.

Referenced by ArrayValue(), and calculateArrayIndex().

◆ uninitPointer

bool ExprEngine::ArrayValue::uninitPointer

Definition at line 211 of file exprengine.h.


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