JavaParser Source Viewer

Home|JavaParser/com/github/javaparser/ast/visitor/GenericVisitor.java
1/*
2 * Copyright (C) 2007-2010 JĂșlio Vilmar Gesser.
3 * Copyright (C) 2011, 2013-2020 The JavaParser Team.
4 *
5 * This file is part of JavaParser.
6 *
7 * JavaParser can be used either under the terms of
8 * a) the GNU Lesser General Public License as published by
9 *     the Free Software Foundation, either version 3 of the License, or
10 *     (at your option) any later version.
11 * b) the terms of the Apache License
12 *
13 * You should have received a copy of both licenses in LICENCE.LGPL and
14 * LICENCE.APACHE. Please refer to those files for details.
15 *
16 * JavaParser is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 * GNU Lesser General Public License for more details.
20 */
21package com.github.javaparser.ast.visitor;
22
23import com.github.javaparser.ast.*;
24import com.github.javaparser.ast.body.*;
25import com.github.javaparser.ast.comments.BlockComment;
26import com.github.javaparser.ast.comments.JavadocComment;
27import com.github.javaparser.ast.comments.LineComment;
28import com.github.javaparser.ast.expr.*;
29import com.github.javaparser.ast.modules.*;
30import com.github.javaparser.ast.stmt.*;
31import com.github.javaparser.ast.type.*;
32
33/**
34 * A visitor that has a return value.
35 *
36 * @author Julio Vilmar Gesser
37 */
38public interface GenericVisitor<RA> {
39
40    // - Compilation Unit ----------------------------------
41    R visit(CompilationUnit nA arg);
42
43    R visit(PackageDeclaration nA arg);
44
45    R visit(TypeParameter nA arg);
46
47    R visit(LineComment nA arg);
48
49    R visit(BlockComment nA arg);
50
51    // - Body ----------------------------------------------
52    R visit(ClassOrInterfaceDeclaration nA arg);
53
54    R visit(EnumDeclaration nA arg);
55
56    R visit(EnumConstantDeclaration nA arg);
57
58    R visit(AnnotationDeclaration nA arg);
59
60    R visit(AnnotationMemberDeclaration nA arg);
61
62    R visit(FieldDeclaration nA arg);
63
64    R visit(VariableDeclarator nA arg);
65
66    R visit(ConstructorDeclaration nA arg);
67
68    R visit(MethodDeclaration nA arg);
69
70    R visit(Parameter nA arg);
71
72    R visit(InitializerDeclaration nA arg);
73
74    R visit(JavadocComment nA arg);
75
76    // - Type ----------------------------------------------
77    R visit(ClassOrInterfaceType nA arg);
78
79    R visit(PrimitiveType nA arg);
80
81    R visit(ArrayType nA arg);
82
83    R visit(ArrayCreationLevel nA arg);
84
85    R visit(IntersectionType nA arg);
86
87    R visit(UnionType nA arg);
88
89    R visit(VoidType nA arg);
90
91    R visit(WildcardType nA arg);
92
93    R visit(UnknownType nA arg);
94
95    // - Expression ----------------------------------------
96    R visit(ArrayAccessExpr nA arg);
97
98    R visit(ArrayCreationExpr nA arg);
99
100    R visit(ArrayInitializerExpr nA arg);
101
102    R visit(AssignExpr nA arg);
103
104    R visit(BinaryExpr nA arg);
105
106    R visit(CastExpr nA arg);
107
108    R visit(ClassExpr nA arg);
109
110    R visit(ConditionalExpr nA arg);
111
112    R visit(EnclosedExpr nA arg);
113
114    R visit(FieldAccessExpr nA arg);
115
116    R visit(InstanceOfExpr nA arg);
117
118    R visit(StringLiteralExpr nA arg);
119
120    R visit(IntegerLiteralExpr nA arg);
121
122    R visit(LongLiteralExpr nA arg);
123
124    R visit(CharLiteralExpr nA arg);
125
126    R visit(DoubleLiteralExpr nA arg);
127
128    R visit(BooleanLiteralExpr nA arg);
129
130    R visit(NullLiteralExpr nA arg);
131
132    R visit(MethodCallExpr nA arg);
133
134    R visit(NameExpr nA arg);
135
136    R visit(ObjectCreationExpr nA arg);
137
138    R visit(ThisExpr nA arg);
139
140    R visit(SuperExpr nA arg);
141
142    R visit(UnaryExpr nA arg);
143
144    R visit(VariableDeclarationExpr nA arg);
145
146    R visit(MarkerAnnotationExpr nA arg);
147
148    R visit(SingleMemberAnnotationExpr nA arg);
149
150    R visit(NormalAnnotationExpr nA arg);
151
152    R visit(MemberValuePair nA arg);
153
154    // - Statements ----------------------------------------
155    R visit(ExplicitConstructorInvocationStmt nA arg);
156
157    R visit(LocalClassDeclarationStmt nA arg);
158
159    R visit(AssertStmt nA arg);
160
161    R visit(BlockStmt nA arg);
162
163    R visit(LabeledStmt nA arg);
164
165    R visit(EmptyStmt nA arg);
166
167    R visit(ExpressionStmt nA arg);
168
169    R visit(SwitchStmt nA arg);
170
171    R visit(SwitchEntry nA arg);
172
173    R visit(BreakStmt nA arg);
174
175    R visit(ReturnStmt nA arg);
176
177    R visit(IfStmt nA arg);
178
179    R visit(WhileStmt nA arg);
180
181    R visit(ContinueStmt nA arg);
182
183    R visit(DoStmt nA arg);
184
185    R visit(ForEachStmt nA arg);
186
187    R visit(ForStmt nA arg);
188
189    R visit(ThrowStmt nA arg);
190
191    R visit(SynchronizedStmt nA arg);
192
193    R visit(TryStmt nA arg);
194
195    R visit(CatchClause nA arg);
196
197    R visit(LambdaExpr nA arg);
198
199    R visit(MethodReferenceExpr nA arg);
200
201    R visit(TypeExpr nA arg);
202
203    R visit(NodeList nA arg);
204
205    R visit(Name nA arg);
206
207    R visit(SimpleName nA arg);
208
209    R visit(ImportDeclaration nA arg);
210
211    R visit(ModuleDeclaration nA arg);
212
213    R visit(ModuleRequiresDirective nA arg);
214
215    R visit(ModuleExportsDirective nA arg);
216
217    R visit(ModuleProvidesDirective nA arg);
218
219    R visit(ModuleUsesDirective nA arg);
220
221    R visit(ModuleOpensDirective nA arg);
222
223    R visit(UnparsableStmt nA arg);
224
225    R visit(ReceiverParameter nA arg);
226
227    R visit(VarType nA arg);
228
229    R visit(Modifier nA arg);
230
231    R visit(SwitchExpr nA arg);
232
233    R visit(YieldStmt nA arg);
234
235    R visit(TextBlockLiteralExpr nA arg);
236}
237
MembersX
GenericVisitor:visit
Members
X