R
- the return type of this visitor's methods. Use Void
for visitors that do not need to return results.P
- the type of the additional parameter to this visitor's
methods. Use Void
for visitors that do not need an
additional parameter.@SupportedSourceVersion(value=RELEASE_8) public class ElementKindVisitor8<R,P> extends ElementKindVisitor7<R,P>
RELEASE_8
source version. For elements XYZ that may have more than one
kind, the visitXYZ methods in this class delegate
to the visitXYZKind method corresponding to the
first argument's kind. The visitXYZKind methods
call defaultAction
, passing their arguments
to defaultAction
's corresponding parameters.
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 or the
ElementKind
enum
used in this case may have
constants 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 abstract element kind
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.
ElementKindVisitor6
,
ElementKindVisitor7
DEFAULT_VALUE
Modifier | Constructor and Description |
---|---|
protected |
ElementKindVisitor8()
Constructor for concrete subclasses; uses
null for the
default value. |
protected |
ElementKindVisitor8(R defaultValue)
Constructor for concrete subclasses; uses the argument for the
default value.
|
visitVariableAsResourceVariable
visitExecutable, visitExecutableAsConstructor, visitExecutableAsInstanceInit, visitExecutableAsMethod, visitExecutableAsStaticInit, visitPackage, visitType, visitTypeAsAnnotationType, visitTypeAsClass, visitTypeAsEnum, visitTypeAsInterface, visitTypeParameter, visitVariable, visitVariableAsEnumConstant, visitVariableAsExceptionParameter, visitVariableAsField, visitVariableAsLocalVariable, visitVariableAsParameter
defaultAction
visit, visit, visitUnknown
protected ElementKindVisitor8()
null
for the
default value.protected ElementKindVisitor8(R defaultValue)
defaultValue
- the value to assign to SimpleElementVisitor6.DEFAULT_VALUE
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.