CGEM BOSS 6.6.5.h
BESIII Offline Software System
Loading...
Searching...
No Matches
rdbModel::Visitor Class Referenceabstract

#include <Visitor.h>

+ Inheritance diagram for rdbModel::Visitor:

Public Types

enum  VisitorState {
  VCONTINUE = 0 , VDONE , VBRANCHDONE , VERROR ,
  VERRORABORT
}
 

Public Member Functions

virtual VisitorState visitRdb (Rdb *)=0
 This method says if the visitor is recursive or not.
 
virtual VisitorState visitTable (Table *)=0
 
virtual VisitorState visitColumn (Column *)=0
 
virtual VisitorState visitIndex (Index *)=0
 
virtual VisitorState visitAssertion (Assertion *)=0
 
virtual VisitorState visitInsertNew (InsertNew *)=0
 
virtual VisitorState visitSupersede (Supersede *)=0
 
virtual VisitorState visitQuery (Query *)=0
 
virtual VisitorState visitSet (Set *)=0
 
virtual VisitorState visitInterRow (InterRow *)=0
 

Detailed Description

This abstract class is the base for the visitors hierarchy; its main purpouse is to provide an abstract interface common to all the different kind of visitor; in this way the manager can hold a list of visitors that the client can start.

One likly visitor would be something which instantiates a suitable representation, e.g. in a MySQL database, of the tables described

Author
J. Bogart, but owing heavily to Visitor class in detModel; thanks to
D.Favretto and R.Giannitrapani

Definition at line 32 of file Visitor.h.

Member Enumeration Documentation

◆ VisitorState

Enumerator
VCONTINUE 
VDONE 
VBRANCHDONE 
VERROR 
VERRORABORT 

Definition at line 34 of file Visitor.h.

34 {
35 VCONTINUE = 0,
36 VDONE, // visitor has had its fill of visiting
37 VBRANCHDONE, // don't descend further; go to next sibling, if any
38 VERROR, // error during visit; perhaps can continue, though
39 VERRORABORT // error during visit; can't handle more
40 };

Member Function Documentation

◆ visitAssertion()

virtual VisitorState rdbModel::Visitor::visitAssertion ( Assertion * )
pure virtual

Implemented in rdbModel::MysqlConnection.

◆ visitColumn()

virtual VisitorState rdbModel::Visitor::visitColumn ( Column * )
pure virtual

Implemented in rdbModel::MysqlConnection.

◆ visitIndex()

virtual VisitorState rdbModel::Visitor::visitIndex ( Index * )
pure virtual

Implemented in rdbModel::MysqlConnection.

◆ visitInsertNew()

virtual VisitorState rdbModel::Visitor::visitInsertNew ( InsertNew * )
pure virtual

Implemented in rdbModel::MysqlConnection.

◆ visitInterRow()

virtual VisitorState rdbModel::Visitor::visitInterRow ( InterRow * )
pure virtual

Implemented in rdbModel::MysqlConnection.

◆ visitQuery()

virtual VisitorState rdbModel::Visitor::visitQuery ( Query * )
pure virtual

Implemented in rdbModel::MysqlConnection.

◆ visitRdb()

virtual VisitorState rdbModel::Visitor::visitRdb ( Rdb * )
pure virtual

This method says if the visitor is recursive or not.

This method sets if the visitor is recursive or not

Implemented in rdbModel::MysqlConnection.

◆ visitSet()

virtual VisitorState rdbModel::Visitor::visitSet ( Set * )
pure virtual

Implemented in rdbModel::MysqlConnection.

◆ visitSupersede()

virtual VisitorState rdbModel::Visitor::visitSupersede ( Supersede * )
pure virtual

Implemented in rdbModel::MysqlConnection.

◆ visitTable()

virtual VisitorState rdbModel::Visitor::visitTable ( Table * )
pure virtual

Implemented in rdbModel::MysqlConnection.


The documentation for this class was generated from the following file: