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 TypeKindVisitor8<R,P> extends TypeKindVisitor7<R,P>
RELEASE_8
source version. For types 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 TypeVisitor
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 type 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.
TypeKindVisitor6
,
TypeKindVisitor7
DEFAULT_VALUE
Modifier | Constructor and Description |
---|---|
protected |
TypeKindVisitor8()
Constructor for concrete subclasses to call; uses
null
for the default value. |
protected |
TypeKindVisitor8(R defaultValue)
Constructor for concrete subclasses to call; uses the argument
for the default value.
|
Modifier and Type | Method and Description |
---|---|
R |
visitIntersection(IntersectionType t,
P p)
This implementation visits an
IntersectionType by calling
defaultAction . |
visitUnion
visitNoType, visitNoTypeAsNone, visitNoTypeAsPackage, visitNoTypeAsVoid, visitPrimitive, visitPrimitiveAsBoolean, visitPrimitiveAsByte, visitPrimitiveAsChar, visitPrimitiveAsDouble, visitPrimitiveAsFloat, visitPrimitiveAsInt, visitPrimitiveAsLong, visitPrimitiveAsShort
defaultAction, visitArray, visitDeclared, visitError, visitExecutable, visitNull, visitTypeVariable, visitWildcard
visit, visit, visitUnknown
protected TypeKindVisitor8()
null
for the default value.protected TypeKindVisitor8(R defaultValue)
defaultValue
- the value to assign to SimpleTypeVisitor6.DEFAULT_VALUE
public R visitIntersection(IntersectionType t, P p)
IntersectionType
by calling
defaultAction
.visitIntersection
in interface TypeVisitor<R,P>
visitIntersection
in class AbstractTypeVisitor6<R,P>
t
- the type to visitp
- a visitor-specified parameterdefaultAction
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, 2017, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.