Class SimpleElementVisitor6<R,P>
- java.lang.Object
-
- javax.lang.model.util.AbstractElementVisitor6<R,P>
-
- javax.lang.model.util.SimpleElementVisitor6<R,P>
-
- Type Parameters:
-
R
- the return type of this visitor's methods. UseVoid
for visitors that do not need to return results. -
P
- the type of the additional parameter to this visitor's methods. UseVoid
for visitors that do not need an additional parameter.
- All Implemented Interfaces:
- ElementVisitor<R,P>
- Direct Known Subclasses:
- ElementKindVisitor6, SimpleElementVisitor7
@SupportedSourceVersion(value=RELEASE_6) public class SimpleElementVisitor6<R,P> extends AbstractElementVisitor6<R,P>
A simple visitor of program elements with default behavior appropriate for theRELEASE_6
source version. Visit methods corresponding toRELEASE_6
language constructs calldefaultAction
, passing their arguments todefaultAction
's corresponding parameters. For constructs introduced inRELEASE_7
and later,visitUnknown
is called instead.Methods in this class may be overridden subject to their general contract. Note that annotating methods in concrete subclasses with
@Override
will help ensure that methods are overridden as intended.WARNING: The
ElementVisitor
interface implemented by this class may have methods added to it in the future to accommodate new, currently unknown, language structures added to future versions of the Java™ programming language. Therefore, methods whose names begin with"visit"
may be added to this class in the future; to avoid incompatibilities, classes which extend this class should not declare any instance methods with names beginning with"visit"
.When such a new visit method is added, the default implementation in this class will be to call the
visitUnknown
method. A new simple element visitor class will also be introduced to correspond to the new language level; this visitor will have different default behavior for the visit method in question. When the new visitor is introduced, all or portions of this visitor may be deprecated.Note that adding a default implementation of a new visit method in a visitor class will occur instead of adding a default method directly in the visitor interface since a Java SE 8 language feature cannot be used to this version of the API since this version is required to be runnable on Java SE 7 implementations. Future versions of the API that are only required to run on Java SE 8 and later may take advantage of default methods in this situation.
- Since:
- 1.6
- See Also:
-
SimpleElementVisitor7
,SimpleElementVisitor8
-
-
Field Summary
Fields Modifier and Type Field and Description protected R
DEFAULT_VALUE
Default value to be returned;defaultAction
returns this value unless the method is overridden.
-
Constructor Summary
Constructors Modifier Constructor and Description protected
SimpleElementVisitor6()
Constructor for concrete subclasses; usesnull
for the default value.protected
SimpleElementVisitor6(R defaultValue)
Constructor for concrete subclasses; uses the argument for the default value.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description protected R
defaultAction(Element e, P p)
The default action for visit methods.R
visitExecutable(ExecutableElement e, P p)
Visits an executable element.R
visitPackage(PackageElement e, P p)
Visits a package element.R
visitType(TypeElement e, P p)
Visits a type element.R
visitTypeParameter(TypeParameterElement e, P p)
Visits a type parameter element.R
visitVariable(VariableElement e, P p)
Visits a variable element.-
Methods inherited from class javax.lang.model.util.AbstractElementVisitor6
visit, visit, visitUnknown
-
-
-
-
Field Detail
DEFAULT_VALUE
protected final R DEFAULT_VALUE
Default value to be returned;defaultAction
returns this value unless the method is overridden.
-
Constructor Detail
SimpleElementVisitor6
protected SimpleElementVisitor6()
Constructor for concrete subclasses; usesnull
for the default value.
SimpleElementVisitor6
protected SimpleElementVisitor6(R defaultValue)
Constructor for concrete subclasses; uses the argument for the default value.- Parameters:
-
defaultValue
- the value to assign toDEFAULT_VALUE
-
Method Detail
defaultAction
protected R defaultAction(Element e, P p)
The default action for visit methods. The implementation in this class just returnsDEFAULT_VALUE
; subclasses will commonly override this method.- Parameters:
-
e
- the element to process -
p
- a visitor-specified parameter - Returns:
-
DEFAULT_VALUE
unless overridden
visitPackage
public R visitPackage(PackageElement e, P p)
Visits a package element. This implementation callsdefaultAction
.- Parameters:
-
e
- the element to visit -
p
- a visitor-specified parameter - Returns:
-
the result of
defaultAction
visitType
public R visitType(TypeElement e, P p)
Visits a type element. This implementation callsdefaultAction
.- Parameters:
-
e
- the element to visit -
p
- a visitor-specified parameter - Returns:
-
the result of
defaultAction
visitVariable
public R visitVariable(VariableElement e, P p)
Visits a variable element. This implementation callsdefaultAction
, unless the element is aRESOURCE_VARIABLE
in which casevisitUnknown
is called.- Parameters:
-
e
- the element to visit -
p
- a visitor-specified parameter - Returns:
-
the result of
defaultAction
orvisitUnknown
visitExecutable
public R visitExecutable(ExecutableElement e, P p)
Visits an executable element. This implementation callsdefaultAction
.- Parameters:
-
e
- the element to visit -
p
- a visitor-specified parameter - Returns:
-
the result of
defaultAction
visitTypeParameter
public R visitTypeParameter(TypeParameterElement e, P p)
Visits a type parameter element. This implementation callsdefaultAction
.- Parameters:
-
e
- the element to visit -
p
- a visitor-specified parameter - Returns:
-
the result of
defaultAction
-
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.