TAO_Constraint Class Reference

TAO_Constraint is the base class of all nodes on the constraint expression tree. More...

#include <Constraint_Nodes.h>

Inheritance diagram for TAO_Constraint:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual int accept (TAO_Constraint_Visitor *visitor)=0
virtual TAO_Expression_Type expr_type (void) const=0
 Return the expression type represented by this node.

virtual ~TAO_Constraint (void)

Detailed Description

TAO_Constraint is the base class of all nodes on the constraint expression tree.

An TAO_Constraint knows what type of operation or entity it represents, and which method on TAO_Constraint_Visitor correlates to its type. When the accept method is invoked, a subclass dispatches the method on an TAO_Constraint_Visitor correlating to its type.

Definition at line 56 of file Constraint_Nodes.h.


Constructor & Destructor Documentation

virtual TAO_Constraint::~TAO_Constraint void   )  [inline, virtual]
 

Definition at line 70 of file Constraint_Nodes.h.

00070 {}


Member Function Documentation

virtual int TAO_Constraint::accept TAO_Constraint_Visitor visitor  )  [pure virtual]
 

Implementing the pattern of double dispatching, each subclass of TAO_Constraint will call back on an InterpreterVisitor the method to handle a node of its ExpressionType.

Implemented in TAO_Noop_Constraint, TAO_Binary_Constraint, TAO_Unary_Constraint, TAO_Property_Constraint, and TAO_Literal_Constraint.

Referenced by TAO_Constraint_Evaluator::evaluate_constraint(), TAO_Constraint_Evaluator::evaluate_preference(), TAO_Constraint_Validator::validate(), TAO_Constraint_Validator::visit_add(), TAO_Constraint_Validator::visit_and(), TAO_Constraint_Evaluator::visit_and(), TAO_Constraint_Evaluator::visit_bin_op(), TAO_Constraint_Validator::visit_constraint(), TAO_Constraint_Evaluator::visit_constraint(), TAO_Constraint_Validator::visit_div(), TAO_Constraint_Validator::visit_equal(), TAO_Constraint_Validator::visit_exist(), TAO_Constraint_Validator::visit_in(), TAO_Constraint_Evaluator::visit_in(), TAO_Constraint_Validator::visit_less_than(), TAO_Constraint_Evaluator::visit_max(), TAO_Constraint_Evaluator::visit_min(), TAO_Constraint_Validator::visit_not(), TAO_Constraint_Evaluator::visit_not(), TAO_Constraint_Evaluator::visit_or(), TAO_Constraint_Validator::visit_twiddle(), TAO_Constraint_Evaluator::visit_twiddle(), TAO_Constraint_Validator::visit_unary_minus(), TAO_Constraint_Evaluator::visit_unary_minus(), and TAO_Constraint_Evaluator::visit_with().

virtual TAO_Expression_Type TAO_Constraint::expr_type void   )  const [pure virtual]
 

Return the expression type represented by this node.

Implemented in TAO_Noop_Constraint, TAO_Binary_Constraint, TAO_Unary_Constraint, TAO_Property_Constraint, and TAO_Literal_Constraint.

Referenced by TAO_Constraint_Validator::extract_type(), TAO_Preference_Interpreter::order_offer(), and TAO_Constraint_Validator::visit_exist().


The documentation for this class was generated from the following file:
Generated on Thu Nov 9 14:00:46 2006 for TAO_CosTrader by doxygen 1.3.6