DiaDes
0.1
DIAgnosisofDiscrete-EventSystem
|
#include <Expression.hh>
Public Member Functions | |
IdExpression (const NodeDecl &owner, unsigned id, const Identifier &identifier) | |
const Identifier & | identifier () const |
virtual bool | valid () const |
Category | category () const |
virtual const Type & | valueType () const |
virtual bool | isConstant () const |
virtual | ~IdExpression () |
Public Member Functions inherited from Diades::Altarica::Expression | |
virtual | ~Expression () |
const AltaricaModel & | model () const |
const NodeDecl & | owner () const |
bool | operator== (const Expression &e) const |
Expression (const NodeDecl &owner, unsigned id) | |
unsigned | id () const |
VariableIterator | variableBegin () const |
VariableIterator | variableEnd () const |
SizeType | supportSize () const |
const Support & | support () const |
Private Attributes | |
Identifier | _ident |
Friends | |
ostream & | operator<< (ostream &os, const Expression &expression) |
Additional Inherited Members | |
Public Types inherited from Diades::Altarica::Expression | |
enum | Category { IfThenElse =0, Case =1, Or =2, And =3, Eq =4, Neq =5, Imply =6, Lt =7, Gt =8, Leq =9, Geq =10, Add =11, Sub =12, Mul =13, Div =14, Mod =15, Neg =16, Not =17, Paren =18, StructMember =19, ArrayMember =20, Var =21, Id =22, Min =23, Max =24, True =25, False =26, Integer =27, ForAll =28, Exist =29, FunctionCall =30, Struct =31, Array =32 } |
typedef reference_wrapper< Expression const > | ConstReference |
typedef reference_wrapper< Expression > | Reference |
typedef std::vector< ConstReference > | ExprVector |
typedef Utils::Exception< Expression > | Exception |
typedef std::vector< VariableDecl::ConstReference >::const_iterator | VariableIterator |
typedef std::vector< VariableDecl::ConstReference >::size_type | SizeType |
typedef std::vector< VariableDecl::ConstReference > | Support |
Static Public Member Functions inherited from Diades::Altarica::Expression | |
static string | typeName () |
Protected Attributes inherited from Diades::Altarica::Expression | |
Support | _varSupport |
const NodeDecl & | _owner |
VariableDecls that are supporting the Expression. More... | |
unsigned | _id |
Definition at line 546 of file Expression.hh.
Diades::Altarica::IdExpression::IdExpression | ( | const NodeDecl & | owner, |
unsigned | id, | ||
const Identifier & | identifier | ||
) |
|
inlinevirtual |
Definition at line 565 of file Expression.hh.
References Diades::Altarica::Expression::operator<<.
|
inlinevirtual |
Expression evaluation: this operation evaluates the expression with the current value associated to the variables that support the Expression. The evaluation is failing if there is a variable of the support that is still free (that is an unassigned variable).
value | the Value resulting from the evaluation of the current Expression. |
Implements Diades::Altarica::Expression.
Definition at line 558 of file Expression.hh.
References Diades::Altarica::Expression::Id, and Diades::Altarica::Expression::valueType().
|
inline |
Definition at line 553 of file Expression.hh.
|
inlinevirtual |
Implements Diades::Altarica::Expression.
Definition at line 561 of file Expression.hh.
|
inlinevirtual |
Validity of an Expression
Implements Diades::Altarica::Expression.
Definition at line 554 of file Expression.hh.
References Diades::Utils::Identifier::str().
|
virtual |
Type of the Value returned by the Expression (lazy computation)
Implements Diades::Altarica::Expression.
|
friend |
|
private |
Definition at line 549 of file Expression.hh.