    001    /* Copyright 2000, 2001, Compaq Computer Corporation */
    002
    003    /* IF THIS IS A JAVA FILE, DO NOT EDIT IT!
    004
    005       Most Java files in this directory which are part of the Javafe AST
    006       are automatically generated using the astgen comment (see
    007       ESCTools/Javafe/astgen) from the input file 'hierarchy.h'.  If you
    008       wish to modify AST classes or introduce new ones, modify
    009       'hierarchy.j.'
    010     */
    011
    012    package javafe.ast;
    013
    014    import javafe.util.Assert;
    015    import javafe.util.Location;
    016    import javafe.util.ErrorSet;
    017
    018    // Convention: unless otherwise noted, integer fields named "loc" refer
    019    // to the location of the first character of the syntactic unit
    020
    021    public abstract class Visitor {
    022      //@ requires x != null;
    023      public abstract void visitASTNode(ASTNode x);
    024
    025      //@ requires x != null;
    026      public void visitCompilationUnit(CompilationUnit x) {
    027        visitASTNode(x);
    028      }
    029
    030      //@ requires x != null;
    031      public void visitImportDecl(ImportDecl x) {
    032        visitASTNode(x);
    033      }
    034
    035      //@ requires x != null;
    036      public void visitSingleTypeImportDecl(SingleTypeImportDecl x) {
    037        visitImportDecl(x);
    038      }
    039
    040      //@ requires x != null;
    041      public void visitOnDemandImportDecl(OnDemandImportDecl x) {
    042        visitImportDecl(x);
    043      }
    044
    045      //@ requires x != null;
    046      public void visitTypeDecl(TypeDecl x) {
    047        visitASTNode(x);
    048      }
    049
    050      //@ requires x != null;
    051      public void visitClassDecl(ClassDecl x) {
    052        visitTypeDecl(x);
    053      }
    054
    055      //@ requires x != null;
    056      public void visitInterfaceDecl(InterfaceDecl x) {
    057        visitTypeDecl(x);
    058      }
    059
    060      //@ requires x != null;
    061      public void visitRoutineDecl(RoutineDecl x) {
    062        visitASTNode(x);
    063      }
    064
    065      //@ requires x != null;
    066      public void visitConstructorDecl(ConstructorDecl x) {
    067        visitRoutineDecl(x);
    068      }
    069
    070      //@ requires x != null;
    071      public void visitMethodDecl(MethodDecl x) {
    072        visitRoutineDecl(x);
    073      }
    074
    075      //@ requires x != null;
    076      public void visitInitBlock(InitBlock x) {
    077        visitASTNode(x);
    078      }
    079
    080      //@ requires x != null;
    081      public void visitTypeDeclElemPragma(TypeDeclElemPragma x) {
    082        visitASTNode(x);
    083      }
    084
    085      //@ requires x != null;
    086      public void visitGenericVarDecl(GenericVarDecl x) {
    087        visitASTNode(x);
    088      }
    089
    090      //@ requires x != null;
    091      public void visitLocalVarDecl(LocalVarDecl x) {
    092        visitGenericVarDecl(x);
    093      }
    094
    095      //@ requires x != null;
    096      public void visitFieldDecl(FieldDecl x) {
    097        visitGenericVarDecl(x);
    098      }
    099
    100      //@ requires x != null;
    101      public void visitFormalParaDecl(FormalParaDecl x) {
    102        visitGenericVarDecl(x);
    103      }
    104
    105      //@ requires x != null;
    106      public void visitStmt(Stmt x) {
    107        visitASTNode(x);
    108      }
    109
    110      //@ requires x != null;
    111      public void visitGenericBlockStmt(GenericBlockStmt x) {
    112        visitStmt(x);
    113      }
    114
    115      //@ requires x != null;
    116      public void visitBlockStmt(BlockStmt x) {
    117        visitGenericBlockStmt(x);
    118      }
    119
    120      //@ requires x != null;
    121      public void visitSwitchStmt(SwitchStmt x) {
    122        visitGenericBlockStmt(x);
    123      }
    124
    125      //@ requires x != null;
    126      public void visitAssertStmt(AssertStmt x) {
    127        visitStmt(x);
    128      }
    129
    130      //@ requires x != null;
    131      public void visitVarDeclStmt(VarDeclStmt x) {
    132        visitStmt(x);
    133      }
    134
    135      //@ requires x != null;
    136      public void visitClassDeclStmt(ClassDeclStmt x) {
    137        visitStmt(x);
    138      }
    139
    140      //@ requires x != null;
    141      public void visitWhileStmt(WhileStmt x) {
    142        visitStmt(x);
    143      }
    144
    145      //@ requires x != null;
    146      public void visitDoStmt(DoStmt x) {
    147        visitStmt(x);
    148      }
    149
    150      //@ requires x != null;
    151      public void visitSynchronizeStmt(SynchronizeStmt x) {
    152        visitStmt(x);
    153      }
    154
    155      //@ requires x != null;
    156      public void visitEvalStmt(EvalStmt x) {
    157        visitStmt(x);
    158      }
    159
    160      //@ requires x != null;
    161      public void visitReturnStmt(ReturnStmt x) {
    162        visitStmt(x);
    163      }
    164
    165      //@ requires x != null;
    166      public void visitThrowStmt(ThrowStmt x) {
    167        visitStmt(x);
    168      }
    169
    170      //@ requires x != null;
    171      public void visitBranchStmt(BranchStmt x) {
    172        visitStmt(x);
    173      }
    174
    175      //@ requires x != null;
    176      public void visitBreakStmt(BreakStmt x) {
    177        visitBranchStmt(x);
    178      }
    179
    180      //@ requires x != null;
    181      public void visitContinueStmt(ContinueStmt x) {
    182        visitBranchStmt(x);
    183      }
    184
    185      //@ requires x != null;
    186      public void visitLabelStmt(LabelStmt x) {
    187        visitStmt(x);
    188      }
    189
    190      //@ requires x != null;
    191      public void visitIfStmt(IfStmt x) {
    192        visitStmt(x);
    193      }
    194
    195      //@ requires x != null;
    196      public void visitForStmt(ForStmt x) {
    197        visitStmt(x);
    198      }
    199
    200      //@ requires x != null;
    201      public void visitSkipStmt(SkipStmt x) {
    202        visitStmt(x);
    203      }
    204
    205      //@ requires x != null;
    206      public void visitSwitchLabel(SwitchLabel x) {
    207        visitStmt(x);
    208      }
    209
    210      //@ requires x != null;
    211      public void visitTryFinallyStmt(TryFinallyStmt x) {
    212        visitStmt(x);
    213      }
    214
    215      //@ requires x != null;
    216      public void visitTryCatchStmt(TryCatchStmt x) {
    217        visitStmt(x);
    218      }
    219
    220      //@ requires x != null;
    221      public void visitStmtPragma(StmtPragma x) {
    222        visitStmt(x);
    223      }
    224
    225      //@ requires x != null;
    226      public void visitConstructorInvocation(ConstructorInvocation x) {
    227        visitStmt(x);
    228      }
    229
    230      //@ requires x != null;
    231      public void visitCatchClause(CatchClause x) {
    232        visitASTNode(x);
    233      }
    234
    235      //@ requires x != null;
    236      public void visitVarInit(VarInit x) {
    237        visitASTNode(x);
    238      }
    239
    240      //@ requires x != null;
    241      public void visitArrayInit(ArrayInit x) {
    242        visitVarInit(x);
    243      }
    244
    245      //@ requires x != null;
    246      public void visitExpr(Expr x) {
    247        visitVarInit(x);
    248      }
    249
    250      //@ requires x != null;
    251      public void visitThisExpr(ThisExpr x) {
    252        visitExpr(x);
    253      }
    254
    255      //@ requires x != null;
    256      public void visitLiteralExpr(LiteralExpr x) {
    257        visitExpr(x);
    258      }
    259
    260      //@ requires x != null;
    261      public void visitArrayRefExpr(ArrayRefExpr x) {
    262        visitExpr(x);
    263      }
    264
    265      //@ requires x != null;
    266      public void visitNewInstanceExpr(NewInstanceExpr x) {
    267        visitExpr(x);
    268      }
    269
    270      //@ requires x != null;
    271      public void visitNewArrayExpr(NewArrayExpr x) {
    272        visitExpr(x);
    273      }
    274
    275      //@ requires x != null;
    276      public void visitCondExpr(CondExpr x) {
    277        visitExpr(x);
    278      }
    279
    280      //@ requires x != null;
    281      public void visitInstanceOfExpr(InstanceOfExpr x) {
    282        visitExpr(x);
    283      }
    284
    285      //@ requires x != null;
    286      public void visitCastExpr(CastExpr x) {
    287        visitExpr(x);
    288      }
    289
    290      //@ requires x != null;
    291      public void visitBinaryExpr(BinaryExpr x) {
    292        visitExpr(x);
    293      }
    294
    295      //@ requires x != null;
    296      public void visitUnaryExpr(UnaryExpr x) {
    297        visitExpr(x);
    298      }
    299
    300      //@ requires x != null;
    301      public void visitParenExpr(ParenExpr x) {
    302        visitExpr(x);
    303      }
    304
    305      //@ requires x != null;
    306      public void visitAmbiguousVariableAccess(AmbiguousVariableAccess x) {
    307        visitExpr(x);
    308      }
    309
    310      //@ requires x != null;
    311      public void visitVariableAccess(VariableAccess x) {
    312        visitExpr(x);
    313      }
    314
    315      //@ requires x != null;
    316      public void visitFieldAccess(FieldAccess x) {
    317        visitExpr(x);
    318      }
    319
    320      //@ requires x != null;
    321      public void visitAmbiguousMethodInvocation(AmbiguousMethodInvocation x) {
    322        visitExpr(x);
    323      }
    324
    325      //@ requires x != null;
    326      public void visitMethodInvocation(MethodInvocation x) {
    327        visitExpr(x);
    328      }
    329
    330      //@ requires x != null;
    331      public void visitClassLiteral(ClassLiteral x) {
    332        visitExpr(x);
    333      }
    334
    335      //@ requires x != null;
    336      public void visitObjectDesignator(ObjectDesignator x) {
    337        visitASTNode(x);
    338      }
    339
    340      //@ requires x != null;
    341      public void visitExprObjectDesignator(ExprObjectDesignator x) {
    342        visitObjectDesignator(x);
    343      }
    344
    345      //@ requires x != null;
    346      public void visitTypeObjectDesignator(TypeObjectDesignator x) {
    347        visitObjectDesignator(x);
    348      }
    349
    350      //@ requires x != null;
    351      public void visitSuperObjectDesignator(SuperObjectDesignator x) {
    352        visitObjectDesignator(x);
    353      }
    354
    355      //@ requires x != null;
    356      public void visitType(Type x) {
    357        visitASTNode(x);
    358      }
    359
    360      //@ requires x != null;
    361      public void visitErrorType(ErrorType x) {
    362        visitType(x);
    363      }
    364
    365      //@ requires x != null;
    366      public void visitPrimitiveType(PrimitiveType x) {
    367        visitType(x);
    368      }
    369
    370      //@ requires x != null;
    371      public void visitTypeName(TypeName x) {
    372        visitType(x);
    373      }
    374
    375      //@ requires x != null;
    376      public void visitArrayType(ArrayType x) {
    377        visitType(x);
    378      }
    379
    380      //@ requires x != null;
    381      public void visitName(Name x) {
    382        visitASTNode(x);
    383      }
    384
    385      //@ requires x != null;
    386      public void visitSimpleName(SimpleName x) {
    387        visitName(x);
    388      }
    389
    390      //@ requires x != null;
    391      public void visitCompoundName(CompoundName x) {
    392        visitName(x);
    393      }
    394
    395      //@ requires x != null;
    396      public void visitModifierPragma(ModifierPragma x) {
    397        visitASTNode(x);
    398      }
    399
    400      //@ requires x != null;
    401      public void visitLexicalPragma(LexicalPragma x) {
    402        visitASTNode(x);
    403      }
    404
    405      //@ requires x != null;
    406      public void visitTypeModifierPragma(TypeModifierPragma x) {
    407        visitASTNode(x);
    408      }
    409
    410    }