View Javadoc
1   // Generated from com/puppycrawl/tools/checkstyle/grammar/java/JavaLanguageParser.g4 by ANTLR 4.13.1
2   package com.puppycrawl.tools.checkstyle.grammar.java;
3   import org.antlr.v4.runtime.tree.ParseTreeVisitor;
4   
5   /**
6    * This interface defines a complete generic visitor for a parse tree produced
7    * by {@link JavaLanguageParser}.
8    *
9    * @param <T> The return type of the visit operation. Use {@link Void} for
10   * operations with no return type.
11   */
12  public interface JavaLanguageParserVisitor<T> extends ParseTreeVisitor<T> {
13  	/**
14  	 * Visit a parse tree produced by {@link JavaLanguageParser#compilationUnit}.
15  	 * @param ctx the parse tree
16  	 * @return the visitor result
17  	 */
18  	T visitCompilationUnit(JavaLanguageParser.CompilationUnitContext ctx);
19  	/**
20  	 * Visit a parse tree produced by {@link JavaLanguageParser#packageDeclaration}.
21  	 * @param ctx the parse tree
22  	 * @return the visitor result
23  	 */
24  	T visitPackageDeclaration(JavaLanguageParser.PackageDeclarationContext ctx);
25  	/**
26  	 * Visit a parse tree produced by the {@code importDec}
27  	 * labeled alternative in {@link JavaLanguageParser#importDeclaration}.
28  	 * @param ctx the parse tree
29  	 * @return the visitor result
30  	 */
31  	T visitImportDec(JavaLanguageParser.ImportDecContext ctx);
32  	/**
33  	 * Visit a parse tree produced by the {@code singleSemiImport}
34  	 * labeled alternative in {@link JavaLanguageParser#importDeclaration}.
35  	 * @param ctx the parse tree
36  	 * @return the visitor result
37  	 */
38  	T visitSingleSemiImport(JavaLanguageParser.SingleSemiImportContext ctx);
39  	/**
40  	 * Visit a parse tree produced by {@link JavaLanguageParser#typeDeclaration}.
41  	 * @param ctx the parse tree
42  	 * @return the visitor result
43  	 */
44  	T visitTypeDeclaration(JavaLanguageParser.TypeDeclarationContext ctx);
45  	/**
46  	 * Visit a parse tree produced by {@link JavaLanguageParser#types}.
47  	 * @param ctx the parse tree
48  	 * @return the visitor result
49  	 */
50  	T visitTypes(JavaLanguageParser.TypesContext ctx);
51  	/**
52  	 * Visit a parse tree produced by {@link JavaLanguageParser#modifier}.
53  	 * @param ctx the parse tree
54  	 * @return the visitor result
55  	 */
56  	T visitModifier(JavaLanguageParser.ModifierContext ctx);
57  	/**
58  	 * Visit a parse tree produced by {@link JavaLanguageParser#variableModifier}.
59  	 * @param ctx the parse tree
60  	 * @return the visitor result
61  	 */
62  	T visitVariableModifier(JavaLanguageParser.VariableModifierContext ctx);
63  	/**
64  	 * Visit a parse tree produced by {@link JavaLanguageParser#classDeclaration}.
65  	 * @param ctx the parse tree
66  	 * @return the visitor result
67  	 */
68  	T visitClassDeclaration(JavaLanguageParser.ClassDeclarationContext ctx);
69  	/**
70  	 * Visit a parse tree produced by {@link JavaLanguageParser#recordDeclaration}.
71  	 * @param ctx the parse tree
72  	 * @return the visitor result
73  	 */
74  	T visitRecordDeclaration(JavaLanguageParser.RecordDeclarationContext ctx);
75  	/**
76  	 * Visit a parse tree produced by {@link JavaLanguageParser#recordComponentsList}.
77  	 * @param ctx the parse tree
78  	 * @return the visitor result
79  	 */
80  	T visitRecordComponentsList(JavaLanguageParser.RecordComponentsListContext ctx);
81  	/**
82  	 * Visit a parse tree produced by {@link JavaLanguageParser#recordComponents}.
83  	 * @param ctx the parse tree
84  	 * @return the visitor result
85  	 */
86  	T visitRecordComponents(JavaLanguageParser.RecordComponentsContext ctx);
87  	/**
88  	 * Visit a parse tree produced by {@link JavaLanguageParser#recordComponent}.
89  	 * @param ctx the parse tree
90  	 * @return the visitor result
91  	 */
92  	T visitRecordComponent(JavaLanguageParser.RecordComponentContext ctx);
93  	/**
94  	 * Visit a parse tree produced by {@link JavaLanguageParser#lastRecordComponent}.
95  	 * @param ctx the parse tree
96  	 * @return the visitor result
97  	 */
98  	T visitLastRecordComponent(JavaLanguageParser.LastRecordComponentContext ctx);
99  	/**
100 	 * Visit a parse tree produced by {@link JavaLanguageParser#recordBody}.
101 	 * @param ctx the parse tree
102 	 * @return the visitor result
103 	 */
104 	T visitRecordBody(JavaLanguageParser.RecordBodyContext ctx);
105 	/**
106 	 * Visit a parse tree produced by {@link JavaLanguageParser#recordBodyDeclaration}.
107 	 * @param ctx the parse tree
108 	 * @return the visitor result
109 	 */
110 	T visitRecordBodyDeclaration(JavaLanguageParser.RecordBodyDeclarationContext ctx);
111 	/**
112 	 * Visit a parse tree produced by {@link JavaLanguageParser#compactConstructorDeclaration}.
113 	 * @param ctx the parse tree
114 	 * @return the visitor result
115 	 */
116 	T visitCompactConstructorDeclaration(JavaLanguageParser.CompactConstructorDeclarationContext ctx);
117 	/**
118 	 * Visit a parse tree produced by {@link JavaLanguageParser#classExtends}.
119 	 * @param ctx the parse tree
120 	 * @return the visitor result
121 	 */
122 	T visitClassExtends(JavaLanguageParser.ClassExtendsContext ctx);
123 	/**
124 	 * Visit a parse tree produced by {@link JavaLanguageParser#implementsClause}.
125 	 * @param ctx the parse tree
126 	 * @return the visitor result
127 	 */
128 	T visitImplementsClause(JavaLanguageParser.ImplementsClauseContext ctx);
129 	/**
130 	 * Visit a parse tree produced by {@link JavaLanguageParser#typeParameters}.
131 	 * @param ctx the parse tree
132 	 * @return the visitor result
133 	 */
134 	T visitTypeParameters(JavaLanguageParser.TypeParametersContext ctx);
135 	/**
136 	 * Visit a parse tree produced by {@link JavaLanguageParser#typeParameter}.
137 	 * @param ctx the parse tree
138 	 * @return the visitor result
139 	 */
140 	T visitTypeParameter(JavaLanguageParser.TypeParameterContext ctx);
141 	/**
142 	 * Visit a parse tree produced by {@link JavaLanguageParser#typeUpperBounds}.
143 	 * @param ctx the parse tree
144 	 * @return the visitor result
145 	 */
146 	T visitTypeUpperBounds(JavaLanguageParser.TypeUpperBoundsContext ctx);
147 	/**
148 	 * Visit a parse tree produced by {@link JavaLanguageParser#typeBound}.
149 	 * @param ctx the parse tree
150 	 * @return the visitor result
151 	 */
152 	T visitTypeBound(JavaLanguageParser.TypeBoundContext ctx);
153 	/**
154 	 * Visit a parse tree produced by {@link JavaLanguageParser#typeBoundType}.
155 	 * @param ctx the parse tree
156 	 * @return the visitor result
157 	 */
158 	T visitTypeBoundType(JavaLanguageParser.TypeBoundTypeContext ctx);
159 	/**
160 	 * Visit a parse tree produced by {@link JavaLanguageParser#enumDeclaration}.
161 	 * @param ctx the parse tree
162 	 * @return the visitor result
163 	 */
164 	T visitEnumDeclaration(JavaLanguageParser.EnumDeclarationContext ctx);
165 	/**
166 	 * Visit a parse tree produced by {@link JavaLanguageParser#enumBody}.
167 	 * @param ctx the parse tree
168 	 * @return the visitor result
169 	 */
170 	T visitEnumBody(JavaLanguageParser.EnumBodyContext ctx);
171 	/**
172 	 * Visit a parse tree produced by {@link JavaLanguageParser#enumConstants}.
173 	 * @param ctx the parse tree
174 	 * @return the visitor result
175 	 */
176 	T visitEnumConstants(JavaLanguageParser.EnumConstantsContext ctx);
177 	/**
178 	 * Visit a parse tree produced by {@link JavaLanguageParser#enumConstant}.
179 	 * @param ctx the parse tree
180 	 * @return the visitor result
181 	 */
182 	T visitEnumConstant(JavaLanguageParser.EnumConstantContext ctx);
183 	/**
184 	 * Visit a parse tree produced by {@link JavaLanguageParser#enumBodyDeclarations}.
185 	 * @param ctx the parse tree
186 	 * @return the visitor result
187 	 */
188 	T visitEnumBodyDeclarations(JavaLanguageParser.EnumBodyDeclarationsContext ctx);
189 	/**
190 	 * Visit a parse tree produced by {@link JavaLanguageParser#interfaceDeclaration}.
191 	 * @param ctx the parse tree
192 	 * @return the visitor result
193 	 */
194 	T visitInterfaceDeclaration(JavaLanguageParser.InterfaceDeclarationContext ctx);
195 	/**
196 	 * Visit a parse tree produced by {@link JavaLanguageParser#interfaceExtends}.
197 	 * @param ctx the parse tree
198 	 * @return the visitor result
199 	 */
200 	T visitInterfaceExtends(JavaLanguageParser.InterfaceExtendsContext ctx);
201 	/**
202 	 * Visit a parse tree produced by {@link JavaLanguageParser#classBody}.
203 	 * @param ctx the parse tree
204 	 * @return the visitor result
205 	 */
206 	T visitClassBody(JavaLanguageParser.ClassBodyContext ctx);
207 	/**
208 	 * Visit a parse tree produced by {@link JavaLanguageParser#interfaceBody}.
209 	 * @param ctx the parse tree
210 	 * @return the visitor result
211 	 */
212 	T visitInterfaceBody(JavaLanguageParser.InterfaceBodyContext ctx);
213 	/**
214 	 * Visit a parse tree produced by the {@code emptyClass}
215 	 * labeled alternative in {@link JavaLanguageParser#classBodyDeclaration}.
216 	 * @param ctx the parse tree
217 	 * @return the visitor result
218 	 */
219 	T visitEmptyClass(JavaLanguageParser.EmptyClassContext ctx);
220 	/**
221 	 * Visit a parse tree produced by the {@code classBlock}
222 	 * labeled alternative in {@link JavaLanguageParser#classBodyDeclaration}.
223 	 * @param ctx the parse tree
224 	 * @return the visitor result
225 	 */
226 	T visitClassBlock(JavaLanguageParser.ClassBlockContext ctx);
227 	/**
228 	 * Visit a parse tree produced by the {@code classDef}
229 	 * labeled alternative in {@link JavaLanguageParser#classBodyDeclaration}.
230 	 * @param ctx the parse tree
231 	 * @return the visitor result
232 	 */
233 	T visitClassDef(JavaLanguageParser.ClassDefContext ctx);
234 	/**
235 	 * Visit a parse tree produced by {@link JavaLanguageParser#memberDeclaration}.
236 	 * @param ctx the parse tree
237 	 * @return the visitor result
238 	 */
239 	T visitMemberDeclaration(JavaLanguageParser.MemberDeclarationContext ctx);
240 	/**
241 	 * Visit a parse tree produced by {@link JavaLanguageParser#methodDeclaration}.
242 	 * @param ctx the parse tree
243 	 * @return the visitor result
244 	 */
245 	T visitMethodDeclaration(JavaLanguageParser.MethodDeclarationContext ctx);
246 	/**
247 	 * Visit a parse tree produced by {@link JavaLanguageParser#methodBody}.
248 	 * @param ctx the parse tree
249 	 * @return the visitor result
250 	 */
251 	T visitMethodBody(JavaLanguageParser.MethodBodyContext ctx);
252 	/**
253 	 * Visit a parse tree produced by {@link JavaLanguageParser#throwsList}.
254 	 * @param ctx the parse tree
255 	 * @return the visitor result
256 	 */
257 	T visitThrowsList(JavaLanguageParser.ThrowsListContext ctx);
258 	/**
259 	 * Visit a parse tree produced by {@link JavaLanguageParser#constructorDeclaration}.
260 	 * @param ctx the parse tree
261 	 * @return the visitor result
262 	 */
263 	T visitConstructorDeclaration(JavaLanguageParser.ConstructorDeclarationContext ctx);
264 	/**
265 	 * Visit a parse tree produced by {@link JavaLanguageParser#fieldDeclaration}.
266 	 * @param ctx the parse tree
267 	 * @return the visitor result
268 	 */
269 	T visitFieldDeclaration(JavaLanguageParser.FieldDeclarationContext ctx);
270 	/**
271 	 * Visit a parse tree produced by {@link JavaLanguageParser#interfaceBodyDeclaration}.
272 	 * @param ctx the parse tree
273 	 * @return the visitor result
274 	 */
275 	T visitInterfaceBodyDeclaration(JavaLanguageParser.InterfaceBodyDeclarationContext ctx);
276 	/**
277 	 * Visit a parse tree produced by {@link JavaLanguageParser#interfaceMemberDeclaration}.
278 	 * @param ctx the parse tree
279 	 * @return the visitor result
280 	 */
281 	T visitInterfaceMemberDeclaration(JavaLanguageParser.InterfaceMemberDeclarationContext ctx);
282 	/**
283 	 * Visit a parse tree produced by {@link JavaLanguageParser#interfaceMethodDeclaration}.
284 	 * @param ctx the parse tree
285 	 * @return the visitor result
286 	 */
287 	T visitInterfaceMethodDeclaration(JavaLanguageParser.InterfaceMethodDeclarationContext ctx);
288 	/**
289 	 * Visit a parse tree produced by {@link JavaLanguageParser#variableDeclarators}.
290 	 * @param ctx the parse tree
291 	 * @return the visitor result
292 	 */
293 	T visitVariableDeclarators(JavaLanguageParser.VariableDeclaratorsContext ctx);
294 	/**
295 	 * Visit a parse tree produced by {@link JavaLanguageParser#variableDeclarator}.
296 	 * @param ctx the parse tree
297 	 * @return the visitor result
298 	 */
299 	T visitVariableDeclarator(JavaLanguageParser.VariableDeclaratorContext ctx);
300 	/**
301 	 * Visit a parse tree produced by {@link JavaLanguageParser#variableDeclaratorId}.
302 	 * @param ctx the parse tree
303 	 * @return the visitor result
304 	 */
305 	T visitVariableDeclaratorId(JavaLanguageParser.VariableDeclaratorIdContext ctx);
306 	/**
307 	 * Visit a parse tree produced by {@link JavaLanguageParser#variableInitializer}.
308 	 * @param ctx the parse tree
309 	 * @return the visitor result
310 	 */
311 	T visitVariableInitializer(JavaLanguageParser.VariableInitializerContext ctx);
312 	/**
313 	 * Visit a parse tree produced by {@link JavaLanguageParser#arrayInitializer}.
314 	 * @param ctx the parse tree
315 	 * @return the visitor result
316 	 */
317 	T visitArrayInitializer(JavaLanguageParser.ArrayInitializerContext ctx);
318 	/**
319 	 * Visit a parse tree produced by {@link JavaLanguageParser#classOrInterfaceType}.
320 	 * @param ctx the parse tree
321 	 * @return the visitor result
322 	 */
323 	T visitClassOrInterfaceType(JavaLanguageParser.ClassOrInterfaceTypeContext ctx);
324 	/**
325 	 * Visit a parse tree produced by {@link JavaLanguageParser#classOrInterfaceTypeExtended}.
326 	 * @param ctx the parse tree
327 	 * @return the visitor result
328 	 */
329 	T visitClassOrInterfaceTypeExtended(JavaLanguageParser.ClassOrInterfaceTypeExtendedContext ctx);
330 	/**
331 	 * Visit a parse tree produced by the {@code simpleTypeArgument}
332 	 * labeled alternative in {@link JavaLanguageParser#typeArgument}.
333 	 * @param ctx the parse tree
334 	 * @return the visitor result
335 	 */
336 	T visitSimpleTypeArgument(JavaLanguageParser.SimpleTypeArgumentContext ctx);
337 	/**
338 	 * Visit a parse tree produced by the {@code wildCardTypeArgument}
339 	 * labeled alternative in {@link JavaLanguageParser#typeArgument}.
340 	 * @param ctx the parse tree
341 	 * @return the visitor result
342 	 */
343 	T visitWildCardTypeArgument(JavaLanguageParser.WildCardTypeArgumentContext ctx);
344 	/**
345 	 * Visit a parse tree produced by {@link JavaLanguageParser#qualifiedNameList}.
346 	 * @param ctx the parse tree
347 	 * @return the visitor result
348 	 */
349 	T visitQualifiedNameList(JavaLanguageParser.QualifiedNameListContext ctx);
350 	/**
351 	 * Visit a parse tree produced by {@link JavaLanguageParser#formalParameters}.
352 	 * @param ctx the parse tree
353 	 * @return the visitor result
354 	 */
355 	T visitFormalParameters(JavaLanguageParser.FormalParametersContext ctx);
356 	/**
357 	 * Visit a parse tree produced by {@link JavaLanguageParser#formalParameterList}.
358 	 * @param ctx the parse tree
359 	 * @return the visitor result
360 	 */
361 	T visitFormalParameterList(JavaLanguageParser.FormalParameterListContext ctx);
362 	/**
363 	 * Visit a parse tree produced by {@link JavaLanguageParser#formalParameter}.
364 	 * @param ctx the parse tree
365 	 * @return the visitor result
366 	 */
367 	T visitFormalParameter(JavaLanguageParser.FormalParameterContext ctx);
368 	/**
369 	 * Visit a parse tree produced by {@link JavaLanguageParser#lastFormalParameter}.
370 	 * @param ctx the parse tree
371 	 * @return the visitor result
372 	 */
373 	T visitLastFormalParameter(JavaLanguageParser.LastFormalParameterContext ctx);
374 	/**
375 	 * Visit a parse tree produced by {@link JavaLanguageParser#qualifiedName}.
376 	 * @param ctx the parse tree
377 	 * @return the visitor result
378 	 */
379 	T visitQualifiedName(JavaLanguageParser.QualifiedNameContext ctx);
380 	/**
381 	 * Visit a parse tree produced by {@link JavaLanguageParser#qualifiedNameExtended}.
382 	 * @param ctx the parse tree
383 	 * @return the visitor result
384 	 */
385 	T visitQualifiedNameExtended(JavaLanguageParser.QualifiedNameExtendedContext ctx);
386 	/**
387 	 * Visit a parse tree produced by {@link JavaLanguageParser#literal}.
388 	 * @param ctx the parse tree
389 	 * @return the visitor result
390 	 */
391 	T visitLiteral(JavaLanguageParser.LiteralContext ctx);
392 	/**
393 	 * Visit a parse tree produced by {@link JavaLanguageParser#integerLiteral}.
394 	 * @param ctx the parse tree
395 	 * @return the visitor result
396 	 */
397 	T visitIntegerLiteral(JavaLanguageParser.IntegerLiteralContext ctx);
398 	/**
399 	 * Visit a parse tree produced by {@link JavaLanguageParser#floatLiteral}.
400 	 * @param ctx the parse tree
401 	 * @return the visitor result
402 	 */
403 	T visitFloatLiteral(JavaLanguageParser.FloatLiteralContext ctx);
404 	/**
405 	 * Visit a parse tree produced by {@link JavaLanguageParser#textBlockLiteral}.
406 	 * @param ctx the parse tree
407 	 * @return the visitor result
408 	 */
409 	T visitTextBlockLiteral(JavaLanguageParser.TextBlockLiteralContext ctx);
410 	/**
411 	 * Visit a parse tree produced by {@link JavaLanguageParser#annotations}.
412 	 * @param ctx the parse tree
413 	 * @return the visitor result
414 	 */
415 	T visitAnnotations(JavaLanguageParser.AnnotationsContext ctx);
416 	/**
417 	 * Visit a parse tree produced by {@link JavaLanguageParser#annotation}.
418 	 * @param ctx the parse tree
419 	 * @return the visitor result
420 	 */
421 	T visitAnnotation(JavaLanguageParser.AnnotationContext ctx);
422 	/**
423 	 * Visit a parse tree produced by {@link JavaLanguageParser#elementValuePairs}.
424 	 * @param ctx the parse tree
425 	 * @return the visitor result
426 	 */
427 	T visitElementValuePairs(JavaLanguageParser.ElementValuePairsContext ctx);
428 	/**
429 	 * Visit a parse tree produced by {@link JavaLanguageParser#elementValuePair}.
430 	 * @param ctx the parse tree
431 	 * @return the visitor result
432 	 */
433 	T visitElementValuePair(JavaLanguageParser.ElementValuePairContext ctx);
434 	/**
435 	 * Visit a parse tree produced by {@link JavaLanguageParser#elementValue}.
436 	 * @param ctx the parse tree
437 	 * @return the visitor result
438 	 */
439 	T visitElementValue(JavaLanguageParser.ElementValueContext ctx);
440 	/**
441 	 * Visit a parse tree produced by {@link JavaLanguageParser#elementValueArrayInitializer}.
442 	 * @param ctx the parse tree
443 	 * @return the visitor result
444 	 */
445 	T visitElementValueArrayInitializer(JavaLanguageParser.ElementValueArrayInitializerContext ctx);
446 	/**
447 	 * Visit a parse tree produced by {@link JavaLanguageParser#annotationTypeDeclaration}.
448 	 * @param ctx the parse tree
449 	 * @return the visitor result
450 	 */
451 	T visitAnnotationTypeDeclaration(JavaLanguageParser.AnnotationTypeDeclarationContext ctx);
452 	/**
453 	 * Visit a parse tree produced by {@link JavaLanguageParser#annotationTypeBody}.
454 	 * @param ctx the parse tree
455 	 * @return the visitor result
456 	 */
457 	T visitAnnotationTypeBody(JavaLanguageParser.AnnotationTypeBodyContext ctx);
458 	/**
459 	 * Visit a parse tree produced by {@link JavaLanguageParser#annotationTypeElementDeclaration}.
460 	 * @param ctx the parse tree
461 	 * @return the visitor result
462 	 */
463 	T visitAnnotationTypeElementDeclaration(JavaLanguageParser.AnnotationTypeElementDeclarationContext ctx);
464 	/**
465 	 * Visit a parse tree produced by the {@code annotationField}
466 	 * labeled alternative in {@link JavaLanguageParser#annotationTypeElementRest}.
467 	 * @param ctx the parse tree
468 	 * @return the visitor result
469 	 */
470 	T visitAnnotationField(JavaLanguageParser.AnnotationFieldContext ctx);
471 	/**
472 	 * Visit a parse tree produced by the {@code annotationType}
473 	 * labeled alternative in {@link JavaLanguageParser#annotationTypeElementRest}.
474 	 * @param ctx the parse tree
475 	 * @return the visitor result
476 	 */
477 	T visitAnnotationType(JavaLanguageParser.AnnotationTypeContext ctx);
478 	/**
479 	 * Visit a parse tree produced by {@link JavaLanguageParser#annotationMethodRest}.
480 	 * @param ctx the parse tree
481 	 * @return the visitor result
482 	 */
483 	T visitAnnotationMethodRest(JavaLanguageParser.AnnotationMethodRestContext ctx);
484 	/**
485 	 * Visit a parse tree produced by {@link JavaLanguageParser#annotationConstantRest}.
486 	 * @param ctx the parse tree
487 	 * @return the visitor result
488 	 */
489 	T visitAnnotationConstantRest(JavaLanguageParser.AnnotationConstantRestContext ctx);
490 	/**
491 	 * Visit a parse tree produced by {@link JavaLanguageParser#defaultValue}.
492 	 * @param ctx the parse tree
493 	 * @return the visitor result
494 	 */
495 	T visitDefaultValue(JavaLanguageParser.DefaultValueContext ctx);
496 	/**
497 	 * Visit a parse tree produced by {@link JavaLanguageParser#constructorBlock}.
498 	 * @param ctx the parse tree
499 	 * @return the visitor result
500 	 */
501 	T visitConstructorBlock(JavaLanguageParser.ConstructorBlockContext ctx);
502 	/**
503 	 * Visit a parse tree produced by the {@code explicitCtorCall}
504 	 * labeled alternative in {@link JavaLanguageParser#explicitConstructorInvocation}.
505 	 * @param ctx the parse tree
506 	 * @return the visitor result
507 	 */
508 	T visitExplicitCtorCall(JavaLanguageParser.ExplicitCtorCallContext ctx);
509 	/**
510 	 * Visit a parse tree produced by the {@code primaryCtorCall}
511 	 * labeled alternative in {@link JavaLanguageParser#explicitConstructorInvocation}.
512 	 * @param ctx the parse tree
513 	 * @return the visitor result
514 	 */
515 	T visitPrimaryCtorCall(JavaLanguageParser.PrimaryCtorCallContext ctx);
516 	/**
517 	 * Visit a parse tree produced by {@link JavaLanguageParser#block}.
518 	 * @param ctx the parse tree
519 	 * @return the visitor result
520 	 */
521 	T visitBlock(JavaLanguageParser.BlockContext ctx);
522 	/**
523 	 * Visit a parse tree produced by the {@code localVar}
524 	 * labeled alternative in {@link JavaLanguageParser#blockStatement}.
525 	 * @param ctx the parse tree
526 	 * @return the visitor result
527 	 */
528 	T visitLocalVar(JavaLanguageParser.LocalVarContext ctx);
529 	/**
530 	 * Visit a parse tree produced by the {@code stat}
531 	 * labeled alternative in {@link JavaLanguageParser#blockStatement}.
532 	 * @param ctx the parse tree
533 	 * @return the visitor result
534 	 */
535 	T visitStat(JavaLanguageParser.StatContext ctx);
536 	/**
537 	 * Visit a parse tree produced by the {@code localType}
538 	 * labeled alternative in {@link JavaLanguageParser#blockStatement}.
539 	 * @param ctx the parse tree
540 	 * @return the visitor result
541 	 */
542 	T visitLocalType(JavaLanguageParser.LocalTypeContext ctx);
543 	/**
544 	 * Visit a parse tree produced by {@link JavaLanguageParser#localVariableDeclaration}.
545 	 * @param ctx the parse tree
546 	 * @return the visitor result
547 	 */
548 	T visitLocalVariableDeclaration(JavaLanguageParser.LocalVariableDeclarationContext ctx);
549 	/**
550 	 * Visit a parse tree produced by {@link JavaLanguageParser#localTypeDeclaration}.
551 	 * @param ctx the parse tree
552 	 * @return the visitor result
553 	 */
554 	T visitLocalTypeDeclaration(JavaLanguageParser.LocalTypeDeclarationContext ctx);
555 	/**
556 	 * Visit a parse tree produced by the {@code blockStat}
557 	 * labeled alternative in {@link JavaLanguageParser#statement}.
558 	 * @param ctx the parse tree
559 	 * @return the visitor result
560 	 */
561 	T visitBlockStat(JavaLanguageParser.BlockStatContext ctx);
562 	/**
563 	 * Visit a parse tree produced by the {@code assertExp}
564 	 * labeled alternative in {@link JavaLanguageParser#statement}.
565 	 * @param ctx the parse tree
566 	 * @return the visitor result
567 	 */
568 	T visitAssertExp(JavaLanguageParser.AssertExpContext ctx);
569 	/**
570 	 * Visit a parse tree produced by the {@code ifStat}
571 	 * labeled alternative in {@link JavaLanguageParser#statement}.
572 	 * @param ctx the parse tree
573 	 * @return the visitor result
574 	 */
575 	T visitIfStat(JavaLanguageParser.IfStatContext ctx);
576 	/**
577 	 * Visit a parse tree produced by the {@code forStat}
578 	 * labeled alternative in {@link JavaLanguageParser#statement}.
579 	 * @param ctx the parse tree
580 	 * @return the visitor result
581 	 */
582 	T visitForStat(JavaLanguageParser.ForStatContext ctx);
583 	/**
584 	 * Visit a parse tree produced by the {@code whileStat}
585 	 * labeled alternative in {@link JavaLanguageParser#statement}.
586 	 * @param ctx the parse tree
587 	 * @return the visitor result
588 	 */
589 	T visitWhileStat(JavaLanguageParser.WhileStatContext ctx);
590 	/**
591 	 * Visit a parse tree produced by the {@code doStat}
592 	 * labeled alternative in {@link JavaLanguageParser#statement}.
593 	 * @param ctx the parse tree
594 	 * @return the visitor result
595 	 */
596 	T visitDoStat(JavaLanguageParser.DoStatContext ctx);
597 	/**
598 	 * Visit a parse tree produced by the {@code tryStat}
599 	 * labeled alternative in {@link JavaLanguageParser#statement}.
600 	 * @param ctx the parse tree
601 	 * @return the visitor result
602 	 */
603 	T visitTryStat(JavaLanguageParser.TryStatContext ctx);
604 	/**
605 	 * Visit a parse tree produced by the {@code tryWithResourceStat}
606 	 * labeled alternative in {@link JavaLanguageParser#statement}.
607 	 * @param ctx the parse tree
608 	 * @return the visitor result
609 	 */
610 	T visitTryWithResourceStat(JavaLanguageParser.TryWithResourceStatContext ctx);
611 	/**
612 	 * Visit a parse tree produced by the {@code yieldStat}
613 	 * labeled alternative in {@link JavaLanguageParser#statement}.
614 	 * @param ctx the parse tree
615 	 * @return the visitor result
616 	 */
617 	T visitYieldStat(JavaLanguageParser.YieldStatContext ctx);
618 	/**
619 	 * Visit a parse tree produced by the {@code switchStat}
620 	 * labeled alternative in {@link JavaLanguageParser#statement}.
621 	 * @param ctx the parse tree
622 	 * @return the visitor result
623 	 */
624 	T visitSwitchStat(JavaLanguageParser.SwitchStatContext ctx);
625 	/**
626 	 * Visit a parse tree produced by the {@code syncStat}
627 	 * labeled alternative in {@link JavaLanguageParser#statement}.
628 	 * @param ctx the parse tree
629 	 * @return the visitor result
630 	 */
631 	T visitSyncStat(JavaLanguageParser.SyncStatContext ctx);
632 	/**
633 	 * Visit a parse tree produced by the {@code returnStat}
634 	 * labeled alternative in {@link JavaLanguageParser#statement}.
635 	 * @param ctx the parse tree
636 	 * @return the visitor result
637 	 */
638 	T visitReturnStat(JavaLanguageParser.ReturnStatContext ctx);
639 	/**
640 	 * Visit a parse tree produced by the {@code throwStat}
641 	 * labeled alternative in {@link JavaLanguageParser#statement}.
642 	 * @param ctx the parse tree
643 	 * @return the visitor result
644 	 */
645 	T visitThrowStat(JavaLanguageParser.ThrowStatContext ctx);
646 	/**
647 	 * Visit a parse tree produced by the {@code breakStat}
648 	 * labeled alternative in {@link JavaLanguageParser#statement}.
649 	 * @param ctx the parse tree
650 	 * @return the visitor result
651 	 */
652 	T visitBreakStat(JavaLanguageParser.BreakStatContext ctx);
653 	/**
654 	 * Visit a parse tree produced by the {@code continueStat}
655 	 * labeled alternative in {@link JavaLanguageParser#statement}.
656 	 * @param ctx the parse tree
657 	 * @return the visitor result
658 	 */
659 	T visitContinueStat(JavaLanguageParser.ContinueStatContext ctx);
660 	/**
661 	 * Visit a parse tree produced by the {@code emptyStat}
662 	 * labeled alternative in {@link JavaLanguageParser#statement}.
663 	 * @param ctx the parse tree
664 	 * @return the visitor result
665 	 */
666 	T visitEmptyStat(JavaLanguageParser.EmptyStatContext ctx);
667 	/**
668 	 * Visit a parse tree produced by the {@code expStat}
669 	 * labeled alternative in {@link JavaLanguageParser#statement}.
670 	 * @param ctx the parse tree
671 	 * @return the visitor result
672 	 */
673 	T visitExpStat(JavaLanguageParser.ExpStatContext ctx);
674 	/**
675 	 * Visit a parse tree produced by the {@code labelStat}
676 	 * labeled alternative in {@link JavaLanguageParser#statement}.
677 	 * @param ctx the parse tree
678 	 * @return the visitor result
679 	 */
680 	T visitLabelStat(JavaLanguageParser.LabelStatContext ctx);
681 	/**
682 	 * Visit a parse tree produced by {@link JavaLanguageParser#switchExpressionOrStatement}.
683 	 * @param ctx the parse tree
684 	 * @return the visitor result
685 	 */
686 	T visitSwitchExpressionOrStatement(JavaLanguageParser.SwitchExpressionOrStatementContext ctx);
687 	/**
688 	 * Visit a parse tree produced by the {@code switchRules}
689 	 * labeled alternative in {@link JavaLanguageParser#switchBlock}.
690 	 * @param ctx the parse tree
691 	 * @return the visitor result
692 	 */
693 	T visitSwitchRules(JavaLanguageParser.SwitchRulesContext ctx);
694 	/**
695 	 * Visit a parse tree produced by the {@code switchBlocks}
696 	 * labeled alternative in {@link JavaLanguageParser#switchBlock}.
697 	 * @param ctx the parse tree
698 	 * @return the visitor result
699 	 */
700 	T visitSwitchBlocks(JavaLanguageParser.SwitchBlocksContext ctx);
701 	/**
702 	 * Visit a parse tree produced by {@link JavaLanguageParser#switchLabeledRule}.
703 	 * @param ctx the parse tree
704 	 * @return the visitor result
705 	 */
706 	T visitSwitchLabeledRule(JavaLanguageParser.SwitchLabeledRuleContext ctx);
707 	/**
708 	 * Visit a parse tree produced by {@link JavaLanguageParser#switchLabeledExpression}.
709 	 * @param ctx the parse tree
710 	 * @return the visitor result
711 	 */
712 	T visitSwitchLabeledExpression(JavaLanguageParser.SwitchLabeledExpressionContext ctx);
713 	/**
714 	 * Visit a parse tree produced by {@link JavaLanguageParser#switchLabeledBlock}.
715 	 * @param ctx the parse tree
716 	 * @return the visitor result
717 	 */
718 	T visitSwitchLabeledBlock(JavaLanguageParser.SwitchLabeledBlockContext ctx);
719 	/**
720 	 * Visit a parse tree produced by {@link JavaLanguageParser#switchLabeledThrow}.
721 	 * @param ctx the parse tree
722 	 * @return the visitor result
723 	 */
724 	T visitSwitchLabeledThrow(JavaLanguageParser.SwitchLabeledThrowContext ctx);
725 	/**
726 	 * Visit a parse tree produced by {@link JavaLanguageParser#elseStat}.
727 	 * @param ctx the parse tree
728 	 * @return the visitor result
729 	 */
730 	T visitElseStat(JavaLanguageParser.ElseStatContext ctx);
731 	/**
732 	 * Visit a parse tree produced by {@link JavaLanguageParser#catchClause}.
733 	 * @param ctx the parse tree
734 	 * @return the visitor result
735 	 */
736 	T visitCatchClause(JavaLanguageParser.CatchClauseContext ctx);
737 	/**
738 	 * Visit a parse tree produced by {@link JavaLanguageParser#catchParameter}.
739 	 * @param ctx the parse tree
740 	 * @return the visitor result
741 	 */
742 	T visitCatchParameter(JavaLanguageParser.CatchParameterContext ctx);
743 	/**
744 	 * Visit a parse tree produced by {@link JavaLanguageParser#catchType}.
745 	 * @param ctx the parse tree
746 	 * @return the visitor result
747 	 */
748 	T visitCatchType(JavaLanguageParser.CatchTypeContext ctx);
749 	/**
750 	 * Visit a parse tree produced by {@link JavaLanguageParser#finallyBlock}.
751 	 * @param ctx the parse tree
752 	 * @return the visitor result
753 	 */
754 	T visitFinallyBlock(JavaLanguageParser.FinallyBlockContext ctx);
755 	/**
756 	 * Visit a parse tree produced by {@link JavaLanguageParser#resourceSpecification}.
757 	 * @param ctx the parse tree
758 	 * @return the visitor result
759 	 */
760 	T visitResourceSpecification(JavaLanguageParser.ResourceSpecificationContext ctx);
761 	/**
762 	 * Visit a parse tree produced by {@link JavaLanguageParser#resources}.
763 	 * @param ctx the parse tree
764 	 * @return the visitor result
765 	 */
766 	T visitResources(JavaLanguageParser.ResourcesContext ctx);
767 	/**
768 	 * Visit a parse tree produced by {@link JavaLanguageParser#resource}.
769 	 * @param ctx the parse tree
770 	 * @return the visitor result
771 	 */
772 	T visitResource(JavaLanguageParser.ResourceContext ctx);
773 	/**
774 	 * Visit a parse tree produced by {@link JavaLanguageParser#resourceDeclaration}.
775 	 * @param ctx the parse tree
776 	 * @return the visitor result
777 	 */
778 	T visitResourceDeclaration(JavaLanguageParser.ResourceDeclarationContext ctx);
779 	/**
780 	 * Visit a parse tree produced by {@link JavaLanguageParser#variableAccess}.
781 	 * @param ctx the parse tree
782 	 * @return the visitor result
783 	 */
784 	T visitVariableAccess(JavaLanguageParser.VariableAccessContext ctx);
785 	/**
786 	 * Visit a parse tree produced by {@link JavaLanguageParser#fieldAccessNoIdent}.
787 	 * @param ctx the parse tree
788 	 * @return the visitor result
789 	 */
790 	T visitFieldAccessNoIdent(JavaLanguageParser.FieldAccessNoIdentContext ctx);
791 	/**
792 	 * Visit a parse tree produced by {@link JavaLanguageParser#switchBlockStatementGroup}.
793 	 * @param ctx the parse tree
794 	 * @return the visitor result
795 	 */
796 	T visitSwitchBlockStatementGroup(JavaLanguageParser.SwitchBlockStatementGroupContext ctx);
797 	/**
798 	 * Visit a parse tree produced by the {@code caseLabel}
799 	 * labeled alternative in {@link JavaLanguageParser#switchLabel}.
800 	 * @param ctx the parse tree
801 	 * @return the visitor result
802 	 */
803 	T visitCaseLabel(JavaLanguageParser.CaseLabelContext ctx);
804 	/**
805 	 * Visit a parse tree produced by the {@code defaultLabel}
806 	 * labeled alternative in {@link JavaLanguageParser#switchLabel}.
807 	 * @param ctx the parse tree
808 	 * @return the visitor result
809 	 */
810 	T visitDefaultLabel(JavaLanguageParser.DefaultLabelContext ctx);
811 	/**
812 	 * Visit a parse tree produced by {@link JavaLanguageParser#caseConstants}.
813 	 * @param ctx the parse tree
814 	 * @return the visitor result
815 	 */
816 	T visitCaseConstants(JavaLanguageParser.CaseConstantsContext ctx);
817 	/**
818 	 * Visit a parse tree produced by {@link JavaLanguageParser#caseConstant}.
819 	 * @param ctx the parse tree
820 	 * @return the visitor result
821 	 */
822 	T visitCaseConstant(JavaLanguageParser.CaseConstantContext ctx);
823 	/**
824 	 * Visit a parse tree produced by the {@code enhancedFor}
825 	 * labeled alternative in {@link JavaLanguageParser#forControl}.
826 	 * @param ctx the parse tree
827 	 * @return the visitor result
828 	 */
829 	T visitEnhancedFor(JavaLanguageParser.EnhancedForContext ctx);
830 	/**
831 	 * Visit a parse tree produced by the {@code forFor}
832 	 * labeled alternative in {@link JavaLanguageParser#forControl}.
833 	 * @param ctx the parse tree
834 	 * @return the visitor result
835 	 */
836 	T visitForFor(JavaLanguageParser.ForForContext ctx);
837 	/**
838 	 * Visit a parse tree produced by {@link JavaLanguageParser#forInit}.
839 	 * @param ctx the parse tree
840 	 * @return the visitor result
841 	 */
842 	T visitForInit(JavaLanguageParser.ForInitContext ctx);
843 	/**
844 	 * Visit a parse tree produced by {@link JavaLanguageParser#enhancedForControl}.
845 	 * @param ctx the parse tree
846 	 * @return the visitor result
847 	 */
848 	T visitEnhancedForControl(JavaLanguageParser.EnhancedForControlContext ctx);
849 	/**
850 	 * Visit a parse tree produced by {@link JavaLanguageParser#enhancedForControlWithRecordPattern}.
851 	 * @param ctx the parse tree
852 	 * @return the visitor result
853 	 */
854 	T visitEnhancedForControlWithRecordPattern(JavaLanguageParser.EnhancedForControlWithRecordPatternContext ctx);
855 	/**
856 	 * Visit a parse tree produced by {@link JavaLanguageParser#parExpression}.
857 	 * @param ctx the parse tree
858 	 * @return the visitor result
859 	 */
860 	T visitParExpression(JavaLanguageParser.ParExpressionContext ctx);
861 	/**
862 	 * Visit a parse tree produced by {@link JavaLanguageParser#expressionList}.
863 	 * @param ctx the parse tree
864 	 * @return the visitor result
865 	 */
866 	T visitExpressionList(JavaLanguageParser.ExpressionListContext ctx);
867 	/**
868 	 * Visit a parse tree produced by {@link JavaLanguageParser#expression}.
869 	 * @param ctx the parse tree
870 	 * @return the visitor result
871 	 */
872 	T visitExpression(JavaLanguageParser.ExpressionContext ctx);
873 	/**
874 	 * Visit a parse tree produced by the {@code refOp}
875 	 * labeled alternative in {@link JavaLanguageParser#expr}.
876 	 * @param ctx the parse tree
877 	 * @return the visitor result
878 	 */
879 	T visitRefOp(JavaLanguageParser.RefOpContext ctx);
880 	/**
881 	 * Visit a parse tree produced by the {@code superExp}
882 	 * labeled alternative in {@link JavaLanguageParser#expr}.
883 	 * @param ctx the parse tree
884 	 * @return the visitor result
885 	 */
886 	T visitSuperExp(JavaLanguageParser.SuperExpContext ctx);
887 	/**
888 	 * Visit a parse tree produced by the {@code instanceOfExp}
889 	 * labeled alternative in {@link JavaLanguageParser#expr}.
890 	 * @param ctx the parse tree
891 	 * @return the visitor result
892 	 */
893 	T visitInstanceOfExp(JavaLanguageParser.InstanceOfExpContext ctx);
894 	/**
895 	 * Visit a parse tree produced by the {@code bitShift}
896 	 * labeled alternative in {@link JavaLanguageParser#expr}.
897 	 * @param ctx the parse tree
898 	 * @return the visitor result
899 	 */
900 	T visitBitShift(JavaLanguageParser.BitShiftContext ctx);
901 	/**
902 	 * Visit a parse tree produced by the {@code newExp}
903 	 * labeled alternative in {@link JavaLanguageParser#expr}.
904 	 * @param ctx the parse tree
905 	 * @return the visitor result
906 	 */
907 	T visitNewExp(JavaLanguageParser.NewExpContext ctx);
908 	/**
909 	 * Visit a parse tree produced by the {@code prefix}
910 	 * labeled alternative in {@link JavaLanguageParser#expr}.
911 	 * @param ctx the parse tree
912 	 * @return the visitor result
913 	 */
914 	T visitPrefix(JavaLanguageParser.PrefixContext ctx);
915 	/**
916 	 * Visit a parse tree produced by the {@code castExp}
917 	 * labeled alternative in {@link JavaLanguageParser#expr}.
918 	 * @param ctx the parse tree
919 	 * @return the visitor result
920 	 */
921 	T visitCastExp(JavaLanguageParser.CastExpContext ctx);
922 	/**
923 	 * Visit a parse tree produced by the {@code indexOp}
924 	 * labeled alternative in {@link JavaLanguageParser#expr}.
925 	 * @param ctx the parse tree
926 	 * @return the visitor result
927 	 */
928 	T visitIndexOp(JavaLanguageParser.IndexOpContext ctx);
929 	/**
930 	 * Visit a parse tree produced by the {@code invOp}
931 	 * labeled alternative in {@link JavaLanguageParser#expr}.
932 	 * @param ctx the parse tree
933 	 * @return the visitor result
934 	 */
935 	T visitInvOp(JavaLanguageParser.InvOpContext ctx);
936 	/**
937 	 * Visit a parse tree produced by the {@code initExp}
938 	 * labeled alternative in {@link JavaLanguageParser#expr}.
939 	 * @param ctx the parse tree
940 	 * @return the visitor result
941 	 */
942 	T visitInitExp(JavaLanguageParser.InitExpContext ctx);
943 	/**
944 	 * Visit a parse tree produced by the {@code simpleMethodCall}
945 	 * labeled alternative in {@link JavaLanguageParser#expr}.
946 	 * @param ctx the parse tree
947 	 * @return the visitor result
948 	 */
949 	T visitSimpleMethodCall(JavaLanguageParser.SimpleMethodCallContext ctx);
950 	/**
951 	 * Visit a parse tree produced by the {@code lambdaExp}
952 	 * labeled alternative in {@link JavaLanguageParser#expr}.
953 	 * @param ctx the parse tree
954 	 * @return the visitor result
955 	 */
956 	T visitLambdaExp(JavaLanguageParser.LambdaExpContext ctx);
957 	/**
958 	 * Visit a parse tree produced by the {@code thisExp}
959 	 * labeled alternative in {@link JavaLanguageParser#expr}.
960 	 * @param ctx the parse tree
961 	 * @return the visitor result
962 	 */
963 	T visitThisExp(JavaLanguageParser.ThisExpContext ctx);
964 	/**
965 	 * Visit a parse tree produced by the {@code primaryExp}
966 	 * labeled alternative in {@link JavaLanguageParser#expr}.
967 	 * @param ctx the parse tree
968 	 * @return the visitor result
969 	 */
970 	T visitPrimaryExp(JavaLanguageParser.PrimaryExpContext ctx);
971 	/**
972 	 * Visit a parse tree produced by the {@code templateExp}
973 	 * labeled alternative in {@link JavaLanguageParser#expr}.
974 	 * @param ctx the parse tree
975 	 * @return the visitor result
976 	 */
977 	T visitTemplateExp(JavaLanguageParser.TemplateExpContext ctx);
978 	/**
979 	 * Visit a parse tree produced by the {@code postfix}
980 	 * labeled alternative in {@link JavaLanguageParser#expr}.
981 	 * @param ctx the parse tree
982 	 * @return the visitor result
983 	 */
984 	T visitPostfix(JavaLanguageParser.PostfixContext ctx);
985 	/**
986 	 * Visit a parse tree produced by the {@code methodRef}
987 	 * labeled alternative in {@link JavaLanguageParser#expr}.
988 	 * @param ctx the parse tree
989 	 * @return the visitor result
990 	 */
991 	T visitMethodRef(JavaLanguageParser.MethodRefContext ctx);
992 	/**
993 	 * Visit a parse tree produced by the {@code ternaryOp}
994 	 * labeled alternative in {@link JavaLanguageParser#expr}.
995 	 * @param ctx the parse tree
996 	 * @return the visitor result
997 	 */
998 	T visitTernaryOp(JavaLanguageParser.TernaryOpContext ctx);
999 	/**
1000 	 * Visit a parse tree produced by the {@code binOp}
1001 	 * labeled alternative in {@link JavaLanguageParser#expr}.
1002 	 * @param ctx the parse tree
1003 	 * @return the visitor result
1004 	 */
1005 	T visitBinOp(JavaLanguageParser.BinOpContext ctx);
1006 	/**
1007 	 * Visit a parse tree produced by the {@code methodCall}
1008 	 * labeled alternative in {@link JavaLanguageParser#expr}.
1009 	 * @param ctx the parse tree
1010 	 * @return the visitor result
1011 	 */
1012 	T visitMethodCall(JavaLanguageParser.MethodCallContext ctx);
1013 	/**
1014 	 * Visit a parse tree produced by {@link JavaLanguageParser#typeCastParameters}.
1015 	 * @param ctx the parse tree
1016 	 * @return the visitor result
1017 	 */
1018 	T visitTypeCastParameters(JavaLanguageParser.TypeCastParametersContext ctx);
1019 	/**
1020 	 * Visit a parse tree produced by the {@code singleLambdaParam}
1021 	 * labeled alternative in {@link JavaLanguageParser#lambdaParameters}.
1022 	 * @param ctx the parse tree
1023 	 * @return the visitor result
1024 	 */
1025 	T visitSingleLambdaParam(JavaLanguageParser.SingleLambdaParamContext ctx);
1026 	/**
1027 	 * Visit a parse tree produced by the {@code formalLambdaParam}
1028 	 * labeled alternative in {@link JavaLanguageParser#lambdaParameters}.
1029 	 * @param ctx the parse tree
1030 	 * @return the visitor result
1031 	 */
1032 	T visitFormalLambdaParam(JavaLanguageParser.FormalLambdaParamContext ctx);
1033 	/**
1034 	 * Visit a parse tree produced by the {@code multiLambdaParam}
1035 	 * labeled alternative in {@link JavaLanguageParser#lambdaParameters}.
1036 	 * @param ctx the parse tree
1037 	 * @return the visitor result
1038 	 */
1039 	T visitMultiLambdaParam(JavaLanguageParser.MultiLambdaParamContext ctx);
1040 	/**
1041 	 * Visit a parse tree produced by {@link JavaLanguageParser#multiLambdaParams}.
1042 	 * @param ctx the parse tree
1043 	 * @return the visitor result
1044 	 */
1045 	T visitMultiLambdaParams(JavaLanguageParser.MultiLambdaParamsContext ctx);
1046 	/**
1047 	 * Visit a parse tree produced by the {@code switchPrimary}
1048 	 * labeled alternative in {@link JavaLanguageParser#primary}.
1049 	 * @param ctx the parse tree
1050 	 * @return the visitor result
1051 	 */
1052 	T visitSwitchPrimary(JavaLanguageParser.SwitchPrimaryContext ctx);
1053 	/**
1054 	 * Visit a parse tree produced by the {@code parenPrimary}
1055 	 * labeled alternative in {@link JavaLanguageParser#primary}.
1056 	 * @param ctx the parse tree
1057 	 * @return the visitor result
1058 	 */
1059 	T visitParenPrimary(JavaLanguageParser.ParenPrimaryContext ctx);
1060 	/**
1061 	 * Visit a parse tree produced by the {@code tokenPrimary}
1062 	 * labeled alternative in {@link JavaLanguageParser#primary}.
1063 	 * @param ctx the parse tree
1064 	 * @return the visitor result
1065 	 */
1066 	T visitTokenPrimary(JavaLanguageParser.TokenPrimaryContext ctx);
1067 	/**
1068 	 * Visit a parse tree produced by the {@code literalPrimary}
1069 	 * labeled alternative in {@link JavaLanguageParser#primary}.
1070 	 * @param ctx the parse tree
1071 	 * @return the visitor result
1072 	 */
1073 	T visitLiteralPrimary(JavaLanguageParser.LiteralPrimaryContext ctx);
1074 	/**
1075 	 * Visit a parse tree produced by the {@code classRefPrimary}
1076 	 * labeled alternative in {@link JavaLanguageParser#primary}.
1077 	 * @param ctx the parse tree
1078 	 * @return the visitor result
1079 	 */
1080 	T visitClassRefPrimary(JavaLanguageParser.ClassRefPrimaryContext ctx);
1081 	/**
1082 	 * Visit a parse tree produced by the {@code primitivePrimary}
1083 	 * labeled alternative in {@link JavaLanguageParser#primary}.
1084 	 * @param ctx the parse tree
1085 	 * @return the visitor result
1086 	 */
1087 	T visitPrimitivePrimary(JavaLanguageParser.PrimitivePrimaryContext ctx);
1088 	/**
1089 	 * Visit a parse tree produced by {@link JavaLanguageParser#templateArgument}.
1090 	 * @param ctx the parse tree
1091 	 * @return the visitor result
1092 	 */
1093 	T visitTemplateArgument(JavaLanguageParser.TemplateArgumentContext ctx);
1094 	/**
1095 	 * Visit a parse tree produced by {@link JavaLanguageParser#template}.
1096 	 * @param ctx the parse tree
1097 	 * @return the visitor result
1098 	 */
1099 	T visitTemplate(JavaLanguageParser.TemplateContext ctx);
1100 	/**
1101 	 * Visit a parse tree produced by {@link JavaLanguageParser#stringTemplate}.
1102 	 * @param ctx the parse tree
1103 	 * @return the visitor result
1104 	 */
1105 	T visitStringTemplate(JavaLanguageParser.StringTemplateContext ctx);
1106 	/**
1107 	 * Visit a parse tree produced by {@link JavaLanguageParser#stringTemplateMiddle}.
1108 	 * @param ctx the parse tree
1109 	 * @return the visitor result
1110 	 */
1111 	T visitStringTemplateMiddle(JavaLanguageParser.StringTemplateMiddleContext ctx);
1112 	/**
1113 	 * Visit a parse tree produced by {@link JavaLanguageParser#stringTemplateBegin}.
1114 	 * @param ctx the parse tree
1115 	 * @return the visitor result
1116 	 */
1117 	T visitStringTemplateBegin(JavaLanguageParser.StringTemplateBeginContext ctx);
1118 	/**
1119 	 * Visit a parse tree produced by {@link JavaLanguageParser#stringTemplateMid}.
1120 	 * @param ctx the parse tree
1121 	 * @return the visitor result
1122 	 */
1123 	T visitStringTemplateMid(JavaLanguageParser.StringTemplateMidContext ctx);
1124 	/**
1125 	 * Visit a parse tree produced by {@link JavaLanguageParser#stringTemplateEnd}.
1126 	 * @param ctx the parse tree
1127 	 * @return the visitor result
1128 	 */
1129 	T visitStringTemplateEnd(JavaLanguageParser.StringTemplateEndContext ctx);
1130 	/**
1131 	 * Visit a parse tree produced by {@link JavaLanguageParser#classType}.
1132 	 * @param ctx the parse tree
1133 	 * @return the visitor result
1134 	 */
1135 	T visitClassType(JavaLanguageParser.ClassTypeContext ctx);
1136 	/**
1137 	 * Visit a parse tree produced by {@link JavaLanguageParser#creator}.
1138 	 * @param ctx the parse tree
1139 	 * @return the visitor result
1140 	 */
1141 	T visitCreator(JavaLanguageParser.CreatorContext ctx);
1142 	/**
1143 	 * Visit a parse tree produced by the {@code createdNameObject}
1144 	 * labeled alternative in {@link JavaLanguageParser#createdName}.
1145 	 * @param ctx the parse tree
1146 	 * @return the visitor result
1147 	 */
1148 	T visitCreatedNameObject(JavaLanguageParser.CreatedNameObjectContext ctx);
1149 	/**
1150 	 * Visit a parse tree produced by the {@code createdNamePrimitive}
1151 	 * labeled alternative in {@link JavaLanguageParser#createdName}.
1152 	 * @param ctx the parse tree
1153 	 * @return the visitor result
1154 	 */
1155 	T visitCreatedNamePrimitive(JavaLanguageParser.CreatedNamePrimitiveContext ctx);
1156 	/**
1157 	 * Visit a parse tree produced by {@link JavaLanguageParser#createdNameExtended}.
1158 	 * @param ctx the parse tree
1159 	 * @return the visitor result
1160 	 */
1161 	T visitCreatedNameExtended(JavaLanguageParser.CreatedNameExtendedContext ctx);
1162 	/**
1163 	 * Visit a parse tree produced by {@link JavaLanguageParser#innerCreator}.
1164 	 * @param ctx the parse tree
1165 	 * @return the visitor result
1166 	 */
1167 	T visitInnerCreator(JavaLanguageParser.InnerCreatorContext ctx);
1168 	/**
1169 	 * Visit a parse tree produced by {@link JavaLanguageParser#arrayCreatorRest}.
1170 	 * @param ctx the parse tree
1171 	 * @return the visitor result
1172 	 */
1173 	T visitArrayCreatorRest(JavaLanguageParser.ArrayCreatorRestContext ctx);
1174 	/**
1175 	 * Visit a parse tree produced by {@link JavaLanguageParser#bracketsWithExp}.
1176 	 * @param ctx the parse tree
1177 	 * @return the visitor result
1178 	 */
1179 	T visitBracketsWithExp(JavaLanguageParser.BracketsWithExpContext ctx);
1180 	/**
1181 	 * Visit a parse tree produced by {@link JavaLanguageParser#classCreatorRest}.
1182 	 * @param ctx the parse tree
1183 	 * @return the visitor result
1184 	 */
1185 	T visitClassCreatorRest(JavaLanguageParser.ClassCreatorRestContext ctx);
1186 	/**
1187 	 * Visit a parse tree produced by the {@code diamond}
1188 	 * labeled alternative in {@link JavaLanguageParser#typeArgumentsOrDiamond}.
1189 	 * @param ctx the parse tree
1190 	 * @return the visitor result
1191 	 */
1192 	T visitDiamond(JavaLanguageParser.DiamondContext ctx);
1193 	/**
1194 	 * Visit a parse tree produced by the {@code typeArgs}
1195 	 * labeled alternative in {@link JavaLanguageParser#typeArgumentsOrDiamond}.
1196 	 * @param ctx the parse tree
1197 	 * @return the visitor result
1198 	 */
1199 	T visitTypeArgs(JavaLanguageParser.TypeArgsContext ctx);
1200 	/**
1201 	 * Visit a parse tree produced by the {@code nonWildcardDiamond}
1202 	 * labeled alternative in {@link JavaLanguageParser#nonWildcardTypeArgumentsOrDiamond}.
1203 	 * @param ctx the parse tree
1204 	 * @return the visitor result
1205 	 */
1206 	T visitNonWildcardDiamond(JavaLanguageParser.NonWildcardDiamondContext ctx);
1207 	/**
1208 	 * Visit a parse tree produced by the {@code nonWildcardTypeArgs}
1209 	 * labeled alternative in {@link JavaLanguageParser#nonWildcardTypeArgumentsOrDiamond}.
1210 	 * @param ctx the parse tree
1211 	 * @return the visitor result
1212 	 */
1213 	T visitNonWildcardTypeArgs(JavaLanguageParser.NonWildcardTypeArgsContext ctx);
1214 	/**
1215 	 * Visit a parse tree produced by {@link JavaLanguageParser#nonWildcardTypeArguments}.
1216 	 * @param ctx the parse tree
1217 	 * @return the visitor result
1218 	 */
1219 	T visitNonWildcardTypeArguments(JavaLanguageParser.NonWildcardTypeArgumentsContext ctx);
1220 	/**
1221 	 * Visit a parse tree produced by {@link JavaLanguageParser#typeArgumentsTypeList}.
1222 	 * @param ctx the parse tree
1223 	 * @return the visitor result
1224 	 */
1225 	T visitTypeArgumentsTypeList(JavaLanguageParser.TypeArgumentsTypeListContext ctx);
1226 	/**
1227 	 * Visit a parse tree produced by {@link JavaLanguageParser#typeList}.
1228 	 * @param ctx the parse tree
1229 	 * @return the visitor result
1230 	 */
1231 	T visitTypeList(JavaLanguageParser.TypeListContext ctx);
1232 	/**
1233 	 * Visit a parse tree produced by {@link JavaLanguageParser#typeType}.
1234 	 * @param ctx the parse tree
1235 	 * @return the visitor result
1236 	 */
1237 	T visitTypeType(JavaLanguageParser.TypeTypeContext ctx);
1238 	/**
1239 	 * Visit a parse tree produced by {@link JavaLanguageParser#classOrInterfaceOrPrimitiveType}.
1240 	 * @param ctx the parse tree
1241 	 * @return the visitor result
1242 	 */
1243 	T visitClassOrInterfaceOrPrimitiveType(JavaLanguageParser.ClassOrInterfaceOrPrimitiveTypeContext ctx);
1244 	/**
1245 	 * Visit a parse tree produced by {@link JavaLanguageParser#arrayDeclarator}.
1246 	 * @param ctx the parse tree
1247 	 * @return the visitor result
1248 	 */
1249 	T visitArrayDeclarator(JavaLanguageParser.ArrayDeclaratorContext ctx);
1250 	/**
1251 	 * Visit a parse tree produced by {@link JavaLanguageParser#primitiveType}.
1252 	 * @param ctx the parse tree
1253 	 * @return the visitor result
1254 	 */
1255 	T visitPrimitiveType(JavaLanguageParser.PrimitiveTypeContext ctx);
1256 	/**
1257 	 * Visit a parse tree produced by {@link JavaLanguageParser#typeArguments}.
1258 	 * @param ctx the parse tree
1259 	 * @return the visitor result
1260 	 */
1261 	T visitTypeArguments(JavaLanguageParser.TypeArgumentsContext ctx);
1262 	/**
1263 	 * Visit a parse tree produced by the {@code superSuffixSimple}
1264 	 * labeled alternative in {@link JavaLanguageParser#superSuffix}.
1265 	 * @param ctx the parse tree
1266 	 * @return the visitor result
1267 	 */
1268 	T visitSuperSuffixSimple(JavaLanguageParser.SuperSuffixSimpleContext ctx);
1269 	/**
1270 	 * Visit a parse tree produced by the {@code superSuffixDot}
1271 	 * labeled alternative in {@link JavaLanguageParser#superSuffix}.
1272 	 * @param ctx the parse tree
1273 	 * @return the visitor result
1274 	 */
1275 	T visitSuperSuffixDot(JavaLanguageParser.SuperSuffixDotContext ctx);
1276 	/**
1277 	 * Visit a parse tree produced by {@link JavaLanguageParser#arguments}.
1278 	 * @param ctx the parse tree
1279 	 * @return the visitor result
1280 	 */
1281 	T visitArguments(JavaLanguageParser.ArgumentsContext ctx);
1282 	/**
1283 	 * Visit a parse tree produced by {@link JavaLanguageParser#pattern}.
1284 	 * @param ctx the parse tree
1285 	 * @return the visitor result
1286 	 */
1287 	T visitPattern(JavaLanguageParser.PatternContext ctx);
1288 	/**
1289 	 * Visit a parse tree produced by {@link JavaLanguageParser#innerPattern}.
1290 	 * @param ctx the parse tree
1291 	 * @return the visitor result
1292 	 */
1293 	T visitInnerPattern(JavaLanguageParser.InnerPatternContext ctx);
1294 	/**
1295 	 * Visit a parse tree produced by {@link JavaLanguageParser#guardedPattern}.
1296 	 * @param ctx the parse tree
1297 	 * @return the visitor result
1298 	 */
1299 	T visitGuardedPattern(JavaLanguageParser.GuardedPatternContext ctx);
1300 	/**
1301 	 * Visit a parse tree produced by {@link JavaLanguageParser#guard}.
1302 	 * @param ctx the parse tree
1303 	 * @return the visitor result
1304 	 */
1305 	T visitGuard(JavaLanguageParser.GuardContext ctx);
1306 	/**
1307 	 * Visit a parse tree produced by the {@code patternVariableDef}
1308 	 * labeled alternative in {@link JavaLanguageParser#primaryPattern}.
1309 	 * @param ctx the parse tree
1310 	 * @return the visitor result
1311 	 */
1312 	T visitPatternVariableDef(JavaLanguageParser.PatternVariableDefContext ctx);
1313 	/**
1314 	 * Visit a parse tree produced by the {@code parenPattern}
1315 	 * labeled alternative in {@link JavaLanguageParser#primaryPattern}.
1316 	 * @param ctx the parse tree
1317 	 * @return the visitor result
1318 	 */
1319 	T visitParenPattern(JavaLanguageParser.ParenPatternContext ctx);
1320 	/**
1321 	 * Visit a parse tree produced by the {@code recordPatternDef}
1322 	 * labeled alternative in {@link JavaLanguageParser#primaryPattern}.
1323 	 * @param ctx the parse tree
1324 	 * @return the visitor result
1325 	 */
1326 	T visitRecordPatternDef(JavaLanguageParser.RecordPatternDefContext ctx);
1327 	/**
1328 	 * Visit a parse tree produced by the {@code typePatternDef}
1329 	 * labeled alternative in {@link JavaLanguageParser#typePattern}.
1330 	 * @param ctx the parse tree
1331 	 * @return the visitor result
1332 	 */
1333 	T visitTypePatternDef(JavaLanguageParser.TypePatternDefContext ctx);
1334 	/**
1335 	 * Visit a parse tree produced by the {@code unnamedPatternDef}
1336 	 * labeled alternative in {@link JavaLanguageParser#typePattern}.
1337 	 * @param ctx the parse tree
1338 	 * @return the visitor result
1339 	 */
1340 	T visitUnnamedPatternDef(JavaLanguageParser.UnnamedPatternDefContext ctx);
1341 	/**
1342 	 * Visit a parse tree produced by {@link JavaLanguageParser#recordPattern}.
1343 	 * @param ctx the parse tree
1344 	 * @return the visitor result
1345 	 */
1346 	T visitRecordPattern(JavaLanguageParser.RecordPatternContext ctx);
1347 	/**
1348 	 * Visit a parse tree produced by {@link JavaLanguageParser#recordComponentPatternList}.
1349 	 * @param ctx the parse tree
1350 	 * @return the visitor result
1351 	 */
1352 	T visitRecordComponentPatternList(JavaLanguageParser.RecordComponentPatternListContext ctx);
1353 	/**
1354 	 * Visit a parse tree produced by {@link JavaLanguageParser#permittedSubclassesAndInterfaces}.
1355 	 * @param ctx the parse tree
1356 	 * @return the visitor result
1357 	 */
1358 	T visitPermittedSubclassesAndInterfaces(JavaLanguageParser.PermittedSubclassesAndInterfacesContext ctx);
1359 	/**
1360 	 * Visit a parse tree produced by {@link JavaLanguageParser#id}.
1361 	 * @param ctx the parse tree
1362 	 * @return the visitor result
1363 	 */
1364 	T visitId(JavaLanguageParser.IdContext ctx);
1365 }