Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

TAO_Constraint_Visitor Class Reference

This is the base class for all visitors who wish to preform some operation from the state of the expression tree. Using double dispatching, subclasses of Constraint expression call back to the InterpreterVisitor subclass from the accept method. More...

#include <Constraint_Visitors.h>

Inheritance diagram for TAO_Constraint_Visitor:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual ~TAO_Constraint_Visitor (void)
virtual int visit_constraint (TAO_Unary_Constraint *constraint)=0
virtual int visit_with (TAO_Unary_Constraint *unary_with)=0
virtual int visit_min (TAO_Unary_Constraint *unary_min)=0
virtual int visit_max (TAO_Unary_Constraint *unary_max)=0
virtual int visit_first (TAO_Noop_Constraint *noop_first)=0
virtual int visit_random (TAO_Noop_Constraint *noop_random)=0
virtual int visit_and (TAO_Binary_Constraint *boolean_and)=0
virtual int visit_or (TAO_Binary_Constraint *boolean_or)=0
virtual int visit_not (TAO_Unary_Constraint *unary_not)=0
virtual int visit_exist (TAO_Unary_Constraint *unary_exist)=0
virtual int visit_unary_minus (TAO_Unary_Constraint *unary_minus)=0
virtual int visit_add (TAO_Binary_Constraint *boolean_add)=0
virtual int visit_sub (TAO_Binary_Constraint *boolean_sub)=0
virtual int visit_mult (TAO_Binary_Constraint *boolean_mult)=0
virtual int visit_div (TAO_Binary_Constraint *boolean_div)=0
virtual int visit_twiddle (TAO_Binary_Constraint *binary_twiddle)=0
virtual int visit_in (TAO_Binary_Constraint *binary_in)=0
virtual int visit_less_than (TAO_Binary_Constraint *boolean_lt)=0
virtual int visit_less_than_equal (TAO_Binary_Constraint *boolean_lte)=0
virtual int visit_greater_than (TAO_Binary_Constraint *boolean_gt)=0
virtual int visit_greater_than_equal (TAO_Binary_Constraint *boolean_gte)=0
virtual int visit_equal (TAO_Binary_Constraint *boolean_eq)=0
virtual int visit_not_equal (TAO_Binary_Constraint *boolean_neq)=0
virtual int visit_literal (TAO_Literal_Constraint *literal)=0
virtual int visit_property (TAO_Property_Constraint *literal)=0

Detailed Description

This is the base class for all visitors who wish to preform some operation from the state of the expression tree. Using double dispatching, subclasses of Constraint expression call back to the InterpreterVisitor subclass from the accept method.

Traversal of the expression tree uses the "Visitor" pattern. To "visit" a node, a client invokes the "accept" method on a subclass of ConstraintExpression, which, in turn, invokes the appropriate method on the visitor passed to it, based on its own type. So, the Constraint_Visitor has a method to deal with each possible type of node in an expression tree; one for each operator in the grammar.


Constructor & Destructor Documentation

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


Member Function Documentation

virtual int TAO_Constraint_Visitor::visit_add TAO_Binary_Constraint boolean_add  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_and TAO_Binary_Constraint boolean_and  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_constraint TAO_Unary_Constraint constraint  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_div TAO_Binary_Constraint boolean_div  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_equal TAO_Binary_Constraint boolean_eq  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_exist TAO_Unary_Constraint unary_exist  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_first TAO_Noop_Constraint noop_first  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_greater_than TAO_Binary_Constraint boolean_gt  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_greater_than_equal TAO_Binary_Constraint boolean_gte  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_in TAO_Binary_Constraint binary_in  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_less_than TAO_Binary_Constraint boolean_lt  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_less_than_equal TAO_Binary_Constraint boolean_lte  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_literal TAO_Literal_Constraint literal  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_max TAO_Unary_Constraint unary_max  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_min TAO_Unary_Constraint unary_min  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_mult TAO_Binary_Constraint boolean_mult  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_not TAO_Unary_Constraint unary_not  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_not_equal TAO_Binary_Constraint boolean_neq  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_or TAO_Binary_Constraint boolean_or  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_property TAO_Property_Constraint literal  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, TAO_Constraint_Evaluator, and TAO_Trader_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_random TAO_Noop_Constraint noop_random  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_sub TAO_Binary_Constraint boolean_sub  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_twiddle TAO_Binary_Constraint binary_twiddle  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_unary_minus TAO_Unary_Constraint unary_minus  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.

virtual int TAO_Constraint_Visitor::visit_with TAO_Unary_Constraint unary_with  )  [pure virtual]
 

Implemented in TAO_Constraint_Validator, and TAO_Constraint_Evaluator.


The documentation for this class was generated from the following file:
Generated on Thu Feb 10 21:03:41 2005 for TAO_CosTrader by  doxygen 1.3.9.1