Class ElementScannerPreview<R,P>
java.lang.Object
javax.lang.model.util.AbstractElementVisitor6<R,P>
javax.lang.model.util.ElementScanner6<R,P>
javax.lang.model.util.ElementScanner7<R,P>
javax.lang.model.util.ElementScanner8<R,P>
javax.lang.model.util.ElementScanner9<R,P>
javax.lang.model.util.ElementScanner14<R,P>
javax.lang.model.util.ElementScannerPreview<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>
@SupportedSourceVersion(RELEASE_26)
public class ElementScannerPreview<R,P>
extends ElementScanner14<R,P>
ElementScannerPreview
is a reflective preview API of the Java platform.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
A scanning visitor of program elements with default behavior
appropriate for a preview source version.
The
visitXyz
methods in this class scan their
component elements by calling scan
on their enclosed elements, parameters, etc., as indicated in the individual method
specifications. A subclass can control the order elements are
visited by overriding the visitXyz
methods.
Note that clients of a scanner may get the desired behavior by
invoking v.scan(e, p)
rather than v.visit(e, p)
on
the root objects of interest.
When a subclass overrides a visitXyz
method, the
new method can cause the enclosed elements to be scanned in the
default way by calling super.visitXyz
. In this
fashion, the concrete visitor can control the ordering of traversal
over the component elements with respect to the additional
processing; for example, consistently calling
super.visitXyz
at the start of the overridden
methods will yield a preorder traversal, etc. If the component
elements should be traversed in some other order, instead of
calling super.visitXyz
, an overriding visit method
should call scan
with the elements in the desired order.
- API Note:
- Methods in this class may be overridden subject to their general contract.
- Since:
- 23
- See Also:
-
Field Summary
Fields declared in class ElementScanner6
DEFAULT_VALUE
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
Constructor for concrete subclasses; usesnull
for the default value.protected
ElementScannerPreview
(R defaultValue) Constructor for concrete subclasses; uses the argument for the default value. -
Method Summary
Methods declared in class ElementScanner14
visitExecutable, visitRecordComponent, visitType
Modifier and TypeMethodDescriptionVisits an executable element.Visits a record component element.visitType
(TypeElement e, P p) Visits a type element.Methods declared in class ElementScanner9
visitModule
Methods declared in class ElementScanner7
visitVariable
Modifier and TypeMethodDescriptionvisitVariable
(VariableElement e, P p) Visits a variable element.Methods declared in class ElementScanner6
scan, scan, scan, visitPackage, visitTypeParameter
Modifier and TypeMethodDescriptionfinal R
Iterates over the given elements and callsscan(Element, P)
on each one.final R
Convenience method equivalent tov.scan(e, null)
.Processes an element by callinge.accept(this, p)
; this method may be overridden by subclasses.visitPackage
(PackageElement e, P p) Visits a package element.Visits a type parameter element.Methods declared in class AbstractElementVisitor6
visit, visit, visitUnknown
Modifier and TypeMethodDescriptionfinal R
Visits any program element as if by passing itself to that element'saccept
method and passingnull
for the additional parameter.final R
Visits any program element as if by passing itself to that element'saccept
method.visitUnknown
(Element e, P p) Visits an unknown kind of element.Methods declared in class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Modifier and TypeMethodDescriptionprotected Object
clone()
Creates and returns a copy of this object.boolean
Indicates whether some other object is "equal to" this one.protected void
finalize()
Deprecated, for removal: This API element is subject to removal in a future version.Finalization is deprecated and subject to removal in a future release.final Class
<?> getClass()
Returns the runtime class of thisObject
.int
hashCode()
Returns a hash code value for this object.final void
notify()
Wakes up a single thread that is waiting on this object's monitor.final void
Wakes up all threads that are waiting on this object's monitor.toString()
Returns a string representation of the object.final void
wait()
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.final void
wait
(long timeoutMillis) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.final void
wait
(long timeoutMillis, int nanos) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
-
Constructor Details
-
ElementScannerPreview
protected ElementScannerPreview()Constructor for concrete subclasses; usesnull
for the default value. -
ElementScannerPreview
Constructor for concrete subclasses; uses the argument for the default value.- Parameters:
defaultValue
- the default value
-