001 // -*- mode: java -*-
002 /* Copyright 2000, 2001, Compaq Computer Corporation */
003
004 /* IF THIS IS A JAVA FILE, DO NOT EDIT IT!
005
006 Most Java files in this directory which are part of the Javafe AST
007 are automatically generated using the astgen comment (see
008 ESCTools/Javafe/astgen) from the input file 'hierarchy.h'. If you
009 wish to modify AST classes or introduce new ones, modify
010 'hierarchy.j.'
011 */
012
013 package escjava.ast;
014
015 import java.util.Hashtable;
016 import java.util.Set;
017 import java.util.ArrayList;
018
019 import javafe.ast.*;
020 import javafe.util.Assert;
021 import javafe.util.Location;
022 import escjava.ParsedRoutineSpecs;
023
024 // Convention: unless otherwise noted, integer fields named "loc" refer
025 // to the location of the first character of the syntactic unit
026
027 //# TagBase javafe.tc.TagConstants.LAST_TAG + 1
028 //# VisitorRoot javafe.ast.Visitor
029
030 public abstract class Visitor extends javafe.ast.Visitor {
031 public abstract void visitAnOverview(/*@non_null*/ AnOverview x);
032
033 public abstract void visitGCExpr(/*@non_null*/ GCExpr x);
034
035 public void visitNaryExpr(/*@non_null*/ NaryExpr x) {
036 visitGCExpr(x);
037 }
038
039 public void visitQuantifiedExpr(/*@non_null*/ QuantifiedExpr x) {
040 visitGCExpr(x);
041 }
042
043 public void visitGeneralizedQuantifiedExpr(/*@non_null*/ GeneralizedQuantifiedExpr x) {
044 visitGCExpr(x);
045 }
046
047 public void visitNumericalQuantifiedExpr(/*@non_null*/ NumericalQuantifiedExpr x) {
048 visitGCExpr(x);
049 }
050
051 public void visitSubstExpr(/*@non_null*/ SubstExpr x) {
052 visitGCExpr(x);
053 }
054
055 public void visitTypeExpr(/*@non_null*/ TypeExpr x) {
056 visitGCExpr(x);
057 }
058
059 public void visitLabelExpr(/*@non_null*/ LabelExpr x) {
060 visitGCExpr(x);
061 }
062
063 public abstract void visitWildRefExpr(/*@non_null*/ WildRefExpr x);
064
065 public abstract void visitGuardExpr(/*@non_null*/ GuardExpr x);
066
067 public abstract void visitResExpr(/*@non_null*/ ResExpr x);
068
069 public abstract void visitSetCompExpr(/*@non_null*/ SetCompExpr x);
070
071 public abstract void visitLockSetExpr(/*@non_null*/ LockSetExpr x);
072
073 public abstract void visitEverythingExpr(/*@non_null*/ EverythingExpr x);
074
075 public abstract void visitNothingExpr(/*@non_null*/ NothingExpr x);
076
077 public abstract void visitNotSpecifiedExpr(/*@non_null*/ NotSpecifiedExpr x);
078
079 public abstract void visitNotModifiedExpr(/*@non_null*/ NotModifiedExpr x);
080
081 public abstract void visitArrayRangeRefExpr(/*@non_null*/ ArrayRangeRefExpr x);
082
083 public abstract void visitDefPredLetExpr(/*@non_null*/ DefPredLetExpr x);
084
085 public abstract void visitDefPredApplExpr(/*@non_null*/ DefPredApplExpr x);
086
087 public abstract void visitEscPrimitiveType(/*@non_null*/ EscPrimitiveType x);
088
089 public abstract void visitGuardedCmd(/*@non_null*/ GuardedCmd x);
090
091 public void visitSimpleCmd(/*@non_null*/ SimpleCmd x) {
092 visitGuardedCmd(x);
093 }
094
095 public void visitExprCmd(/*@non_null*/ ExprCmd x) {
096 visitGuardedCmd(x);
097 }
098
099 public void visitAssignCmd(/*@non_null*/ AssignCmd x) {
100 visitGuardedCmd(x);
101 }
102
103 public void visitGetsCmd(/*@non_null*/ GetsCmd x) {
104 visitAssignCmd(x);
105 }
106
107 public void visitSubGetsCmd(/*@non_null*/ SubGetsCmd x) {
108 visitAssignCmd(x);
109 }
110
111 public void visitSubSubGetsCmd(/*@non_null*/ SubSubGetsCmd x) {
112 visitAssignCmd(x);
113 }
114
115 public void visitRestoreFromCmd(/*@non_null*/ RestoreFromCmd x) {
116 visitAssignCmd(x);
117 }
118
119 public void visitVarInCmd(/*@non_null*/ VarInCmd x) {
120 visitGuardedCmd(x);
121 }
122
123 public void visitDynInstCmd(/*@non_null*/ DynInstCmd x) {
124 visitGuardedCmd(x);
125 }
126
127 public void visitSeqCmd(/*@non_null*/ SeqCmd x) {
128 visitGuardedCmd(x);
129 }
130
131 public abstract void visitDecreasesInfo(/*@non_null*/ DecreasesInfo x);
132
133 public void visitLoopCmd(/*@non_null*/ LoopCmd x) {
134 visitGuardedCmd(x);
135 }
136
137 public void visitCmdCmdCmd(/*@non_null*/ CmdCmdCmd x) {
138 visitGuardedCmd(x);
139 }
140
141 public void visitCall(/*@non_null*/ Call x) {
142 visitGuardedCmd(x);
143 }
144
145 public abstract void visitExprDeclPragma(/*@non_null*/ ExprDeclPragma x);
146
147 public abstract void visitIdExprDeclPragma(/*@non_null*/ IdExprDeclPragma x);
148
149 public abstract void visitNamedExprDeclPragma(/*@non_null*/ NamedExprDeclPragma x);
150
151 public abstract void visitModelDeclPragma(/*@non_null*/ ModelDeclPragma x);
152
153 public abstract void visitDependsPragma(/*@non_null*/ DependsPragma x);
154
155 public abstract void visitModelConstructorDeclPragma(/*@non_null*/ ModelConstructorDeclPragma x);
156
157 public abstract void visitModelTypePragma(/*@non_null*/ ModelTypePragma x);
158
159 public abstract void visitModelMethodDeclPragma(/*@non_null*/ ModelMethodDeclPragma x);
160
161 public abstract void visitGhostDeclPragma(/*@non_null*/ GhostDeclPragma x);
162
163 public abstract void visitStillDeferredDeclPragma(/*@non_null*/ StillDeferredDeclPragma x);
164
165 public abstract void visitSimpleStmtPragma(/*@non_null*/ SimpleStmtPragma x);
166
167 public abstract void visitIdentifierModifierPragma(/*@non_null*/ IdentifierModifierPragma x);
168
169 public abstract void visitExprStmtPragma(/*@non_null*/ ExprStmtPragma x);
170
171 public abstract void visitSetStmtPragma(/*@non_null*/ SetStmtPragma x);
172
173 public abstract void visitSkolemConstantPragma(/*@non_null*/ SkolemConstantPragma x);
174
175 public abstract void visitModelProgamModifierPragma(/*@non_null*/ ModelProgamModifierPragma x);
176
177 public abstract void visitNestedModifierPragma(/*@non_null*/ NestedModifierPragma x);
178
179 public abstract void visitParsedSpecs(/*@non_null*/ ParsedSpecs x);
180
181 public abstract void visitSimpleModifierPragma(/*@non_null*/ SimpleModifierPragma x);
182
183 public abstract void visitExprModifierPragma(/*@non_null*/ ExprModifierPragma x);
184
185 public abstract void visitModifiesGroupPragma(/*@non_null*/ ModifiesGroupPragma x);
186
187 public abstract void visitCondExprModifierPragma(/*@non_null*/ CondExprModifierPragma x);
188
189 public abstract void visitMapsExprModifierPragma(/*@non_null*/ MapsExprModifierPragma x);
190
191 public abstract void visitReachModifierPragma(/*@non_null*/ ReachModifierPragma x);
192
193 public abstract void visitVarDeclModifierPragma(/*@non_null*/ VarDeclModifierPragma x);
194
195 public abstract void visitVarExprModifierPragma(/*@non_null*/ VarExprModifierPragma x);
196
197 public abstract void visitNowarnPragma(/*@non_null*/ NowarnPragma x);
198
199 public abstract void visitImportPragma(/*@non_null*/ ImportPragma x);
200
201 public abstract void visitRefinePragma(/*@non_null*/ RefinePragma x);
202
203 public abstract void visitSpec(/*@non_null*/ Spec x);
204
205 public abstract void visitCondition(/*@non_null*/ Condition x);
206
207 public abstract void visitDefPred(/*@non_null*/ DefPred x);
208
209 }