Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

visitor.h

Go to the documentation of this file.
00001 #ifndef VISITOR_H
00002 #define VISITOR_H
00003 
00004 #include "visitorreturn.h"
00005 
00006 class Action;
00007 class ActStatement;
00008 class ArrayReference;
00009 class ArrayType;
00010 class AssignStatement;
00011 class Ast;
00012 class Behavior;
00013 class BehaviorStatement;
00014 class BinaryExpression;
00015 class Declaration;
00016 class DoStatement;
00017 class Expression;
00018 class ExpressionList;
00019 class FieldDeclaration;
00020 class FieldReference;
00021 class FieldType;
00022 class Guard;
00023 class GuardedStatement;
00024 class GuardExpression;
00025 class GuardReceive;
00026 class GuardTimeout;
00027 class Identifier;
00028 class IdentifierList;
00029 class IfStatement;
00030 class Import;
00031 class IntegerLiteral;
00032 class LeftSide;
00033 class LeftSideList;
00034 class Message;
00035 class MultipleArrayReference;
00036 class Process;
00037 class Program;
00038 class RangeType;
00039 class ReceiveStatement;
00040 class SendStatement;
00041 class SequentialAction;
00042 class SequentialBehavior;
00043 class SequentialDeclaration;
00044 class SequentialExpressionList;
00045 class SequentialFieldDeclaration;
00046 class SequentialGuardedStatement;
00047 class SequentialIdentifierList;
00048 class SequentialImport;
00049 class SequentialLeftSideList;
00050 class SequentialMessage;
00051 class SequentialProcess;
00052 class SequentialStatement;
00053 class SimpleAction;
00054 class SimpleArrayReference;
00055 class SimpleBehavior;
00056 class SimpleDeclaration;
00057 class SimpleExpressionList;
00058 class SimpleFieldDeclaration;
00059 class SimpleGuardedStatement;
00060 class SimpleIdentifierList;
00061 class SimpleImport;
00062 class SimpleLeftSideList;
00063 class SimpleMessage;
00064 class SimpleProcess;
00065 class SimpleStatement;
00066 class SkipStatement;
00067 class StartStatement;
00068 class Statement;
00069 class StopStatement;
00070 class StringLiteral;
00071 class Type;
00072 class UnaryExpression;
00073 class Visitor {
00074         public:
00075                 virtual ~Visitor() {}
00076                 virtual VisitorReturn *visitAction(Action *action) = 0;
00077                 virtual VisitorReturn *visitActStatement(ActStatement *actStatement) = 0;
00078                 virtual VisitorReturn *visitArrayReference(ArrayReference *arrayReference) = 0;
00079                 virtual VisitorReturn *visitArrayType(ArrayType *arrayType) = 0;
00080                 virtual VisitorReturn *visitAssignStatement(AssignStatement *assignStatement) = 0;
00081                 virtual VisitorReturn *visitAst(Ast *ast) = 0;
00082                 virtual VisitorReturn *visitBehavior(Behavior *behavior) = 0;
00083                 virtual VisitorReturn *visitBehaviorStatement(BehaviorStatement *behaviorStatement) = 0;
00084                 virtual VisitorReturn *visitBinaryExpression(BinaryExpression *binaryExpression) = 0;
00085                 virtual VisitorReturn *visitDeclaration(Declaration *declaration) = 0;
00086                 virtual VisitorReturn *visitDoStatement(DoStatement *doStatement) = 0;
00087                 virtual VisitorReturn *visitExpression(Expression *expression) = 0;
00088                 virtual VisitorReturn *visitExpressionList(ExpressionList *expressionList) = 0;
00089                 virtual VisitorReturn *visitFieldDeclaration(FieldDeclaration *fieldDeclaration) = 0;
00090                 virtual VisitorReturn *visitFieldReference(FieldReference *fieldReference) = 0;
00091                 virtual VisitorReturn *visitFieldType(FieldType *fieldType) = 0;
00092                 virtual VisitorReturn *visitGuard(Guard *guard) = 0;
00093                 virtual VisitorReturn *visitGuardedStatement(GuardedStatement *guardedStatement) = 0;
00094                 virtual VisitorReturn *visitGuardExpression(GuardExpression *guardExpression) = 0;
00095                 virtual VisitorReturn *visitGuardReceive(GuardReceive *guardReceive) = 0;
00096                 virtual VisitorReturn *visitGuardTimeout(GuardTimeout *guardTimeout) = 0;
00097                 virtual VisitorReturn *visitIdentifier(Identifier *identifier) = 0;
00098                 virtual VisitorReturn *visitIdentifierList(IdentifierList *identifierList) = 0;
00099                 virtual VisitorReturn *visitIfStatement(IfStatement *ifStatement) = 0;
00100                 virtual VisitorReturn *visitImport(Import *import) = 0;
00101                 virtual VisitorReturn *visitIntegerLiteral(IntegerLiteral *integerLiteral) = 0;
00102                 virtual VisitorReturn *visitLeftSide(LeftSide *leftSide) = 0;
00103                 virtual VisitorReturn *visitLeftSideList(LeftSideList *leftSideList) = 0;
00104                 virtual VisitorReturn *visitMessage(Message *message) = 0;
00105                 virtual VisitorReturn *visitMultipleArrayReference(MultipleArrayReference *multipleArrayReference) = 0;
00106                 virtual VisitorReturn *visitProcess(Process *process) = 0;
00107                 virtual VisitorReturn *visitProgram(Program *program) = 0;
00108                 virtual VisitorReturn *visitRangeType(RangeType *rangeType) = 0;
00109                 virtual VisitorReturn *visitReceiveStatement(ReceiveStatement *receiveStatement) = 0;
00110                 virtual VisitorReturn *visitSendStatement(SendStatement *sendStatement) = 0;
00111                 virtual VisitorReturn *visitSequentialAction(SequentialAction *sequentialAction) = 0;
00112                 virtual VisitorReturn *visitSequentialBehavior(SequentialBehavior *sequentialBehavior) = 0;
00113                 virtual VisitorReturn *visitSequentialDeclaration(SequentialDeclaration *sequentialDeclaration) = 0;
00114                 virtual VisitorReturn *visitSequentialExpressionList(SequentialExpressionList *sequentialExpressionList) = 0;
00115                 virtual VisitorReturn *visitSequentialFieldDeclaration(SequentialFieldDeclaration *sequentialFieldDeclaration) = 0;
00116                 virtual VisitorReturn *visitSequentialGuardedStatement(SequentialGuardedStatement *sequentialGuardedStatement) = 0;
00117                 virtual VisitorReturn *visitSequentialIdentifierList(SequentialIdentifierList *sequentialIdentifierList) = 0;
00118                 virtual VisitorReturn *visitSequentialImport(SequentialImport *sequentialImport) = 0;
00119                 virtual VisitorReturn *visitSequentialLeftSideList(SequentialLeftSideList *sequentialLeftSideList) = 0;
00120                 virtual VisitorReturn *visitSequentialMessage(SequentialMessage *sequentialMessage) = 0;
00121                 virtual VisitorReturn *visitSequentialProcess(SequentialProcess *sequentialProcess) = 0;
00122                 virtual VisitorReturn *visitSequentialStatement(SequentialStatement *sequentialStatement) = 0;
00123                 virtual VisitorReturn *visitSimpleAction(SimpleAction *simpleAction) = 0;
00124                 virtual VisitorReturn *visitSimpleArrayReference(SimpleArrayReference *simpleArrayReference) = 0;
00125                 virtual VisitorReturn *visitSimpleBehavior(SimpleBehavior *simpleBehavior) = 0;
00126                 virtual VisitorReturn *visitSimpleDeclaration(SimpleDeclaration *simpleDeclaration) = 0;
00127                 virtual VisitorReturn *visitSimpleExpressionList(SimpleExpressionList *simpleExpressionList) = 0;
00128                 virtual VisitorReturn *visitSimpleFieldDeclaration(SimpleFieldDeclaration *simpleFieldDeclaration) = 0;
00129                 virtual VisitorReturn *visitSimpleGuardedStatement(SimpleGuardedStatement *simpleGuardedStatement) = 0;
00130                 virtual VisitorReturn *visitSimpleIdentifierList(SimpleIdentifierList *simpleIdentifierList) = 0;
00131                 virtual VisitorReturn *visitSimpleImport(SimpleImport *simpleImport) = 0;
00132                 virtual VisitorReturn *visitSimpleLeftSideList(SimpleLeftSideList *simpleLeftSideList) = 0;
00133                 virtual VisitorReturn *visitSimpleMessage(SimpleMessage *simpleMessage) = 0;
00134                 virtual VisitorReturn *visitSimpleProcess(SimpleProcess *simpleProcess) = 0;
00135                 virtual VisitorReturn *visitSimpleStatement(SimpleStatement *simpleStatement) = 0;
00136                 virtual VisitorReturn *visitSkipStatement(SkipStatement *skipStatement) = 0;
00137                 virtual VisitorReturn *visitStartStatement(StartStatement *startStatement) = 0;
00138                 virtual VisitorReturn *visitStatement(Statement *statement) = 0;
00139                 virtual VisitorReturn *visitStopStatement(StopStatement *stopStatement) = 0;
00140                 virtual VisitorReturn *visitStringLiteral(StringLiteral *stringLiteral) = 0;
00141                 virtual VisitorReturn *visitType(Type *type) = 0;
00142                 virtual VisitorReturn *visitUnaryExpression(UnaryExpression *unaryExpression) = 0;
00143 };
00144 
00145 #endif

Generated on Mon Dec 1 17:36:38 2003 for Protomake by doxygen1.3