#include <Constraint_Interpreter.h>
Inheritance diagram for TAO_Constraint_Interpreter:
Public Methods | |
TAO_Constraint_Interpreter (const CosTradingRepos::ServiceTypeRepository::TypeStruct &ts, const char *constraints ACE_ENV_ARG_DECL) throw (CosTrading::IllegalConstraint, CORBA::NO_MEMORY) | |
TAO_Constraint_Interpreter (TAO_Constraint_Validator &validator, const char *constraints ACE_ENV_ARG_DECL) throw (CosTrading::IllegalConstraint, CORBA::NO_MEMORY) | |
This constructor builds an expression tree representing the constraint specified in <constraints>, and throws an Illegal Constraint exception if the constraint given has syntax errors or semantic errors, such as mismatched types. More... | |
~TAO_Constraint_Interpreter (void) | |
Destructor. More... | |
CORBA::Boolean | evaluate (CosTrading::Offer *offer) |
CORBA::Boolean | evaluate (TAO_Constraint_Evaluator &evaluator) |
TAO_Constraint_Interpreter will first build an expression tree representing the constraint expression using Lex and Yacc. Then, using a TAO_Constraint_Validator, it will validate the semantic correctness of the tree. When the evaluate method is invoked with an Offer, the TAO_Constraint_Interpreter will construct an EvaluationVisitor, which will evaluate the tree and decide whether the offer meets the constraints.
|
|
|
This constructor builds an expression tree representing the constraint specified in <constraints>, and throws an Illegal Constraint exception if the constraint given has syntax errors or semantic errors, such as mismatched types.
|
|
Destructor.
|
|
|
|
|