DiaDes
0.1
DIAgnosis of Discrete-Event System
|
#include <Expression.hh>
Public Member Functions | |
AndExpression (Expression *conjunction, Expression *logicalComparison) | |
int | type () const |
Expression * | left () const |
Expression * | right () const |
virtual bool | valid () const |
bool | eval (Value &result) const |
virtual Type | valueType () const |
virtual bool | isConstant () const |
Public Member Functions inherited from Diades::Altarica::Expression | |
Expression () | |
VariableIterator | beginOfVariables () const |
VariableIterator | endOfVariables () const |
SizeType | supportSize () const |
Private Attributes | |
Expression * | _conjunction |
Expression * | _logicalComparison |
Friends | |
ostream & | operator<< (ostream &os, const Expression &expression) |
Additional Inherited Members | |
Public Types inherited from Diades::Altarica::Expression | |
typedef Utils::Exception< Expression > | Exception |
typedef vector< Variable >::const_iterator | VariableIterator |
typedef vector< Variable >::size_type | SizeType |
typedef vector< Variable > | Support |
Static Public Member Functions inherited from Diades::Altarica::Expression | |
static string | typeName () |
Protected Attributes inherited from Diades::Altarica::Expression | |
Support | _varSupport |
Type | _returnedType |
Variables that are supporting the Expression. More... | |
Definition at line 316 of file Expression.hh.
|
inline |
Definition at line 322 of file Expression.hh.
References _conjunction, _logicalComparison, Diades::Altarica::Expression::_varSupport, and Diades::Altarica::mergeExpressionSupports().
|
virtual |
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.
|
inlinevirtual |
Implements Diades::Altarica::Expression.
Definition at line 352 of file Expression.hh.
References Diades::Altarica::Expression::isConstant(), left(), and right().
|
inline |
|
inline |
Definition at line 335 of file Expression.hh.
References _logicalComparison.
Referenced by isConstant().
|
inlinevirtual |
Type of an expression
Implements Diades::Altarica::Expression.
Definition at line 330 of file Expression.hh.
|
inlinevirtual |
Validity of an Expression
Implements Diades::Altarica::Expression.
Definition at line 339 of file Expression.hh.
References Diades::Altarica::Expression::valid().
|
inlinevirtual |
Type of the Value returned by the Expression (lazy computation)
Implements Diades::Altarica::Expression.
Definition at line 344 of file Expression.hh.
References Diades::Altarica::Expression::_returnedType, Diades::Altarica::TypeFactory::factory(), Diades::Altarica::TypeFactory::getBoolean(), and Diades::Altarica::Type::valid().
|
friend |
|
private |
Definition at line 319 of file Expression.hh.
Referenced by AndExpression(), and left().
|
private |
Definition at line 320 of file Expression.hh.
Referenced by AndExpression(), and right().