FileDocCategorySizeDatePackage
SimpleElementVisitor6.javaAPI DocJava SE 6 API5090Tue Jun 10 00:26:12 BST 2008javax.lang.model.util

SimpleElementVisitor6

public class SimpleElementVisitor6 extends AbstractElementVisitor6
A simple visitor of program elements with default behavior appropriate for the {@link SourceVersion#RELEASE_6 RELEASE_6} source version. Visit methods corresponding to {@code RELEASE_6} language constructs call {@link #defaultAction}, passing their arguments to {@code defaultAction}'s corresponding parameters.

Methods in this class may be overridden subject to their general contract. Note that annotating methods in concrete subclasses with {@link java.lang.Override @Override} will help ensure that methods are overridden as intended.

WARNING: The {@code 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 {@code "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 {@code "visit"}.

When such a new visit method is added, the default implementation in this class will be to call the {@link #visitUnknown 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.

param
the return type of this visitor's methods. Use {@code Void} for visitors that do not need to return results.
param

the type of the additional parameter to this visitor's methods. Use {@code Void} for visitors that do not need an additional parameter.

author
Joseph D. Darcy
author
Scott Seligman
author
Peter von der Ahé
version
1.7 06/08/15
since
1.6

Fields Summary
protected final R
DEFAULT_VALUE
Default value to be returned; {@link #defaultAction defaultAction} returns this value unless the method is overridden.
Constructors Summary
protected SimpleElementVisitor6()
Constructor for concrete subclasses; uses {@code null} for the default value.

	DEFAULT_VALUE = null;
    
protected SimpleElementVisitor6(R defaultValue)
Constructor for concrete subclasses; uses the argument for the default value.

param
defaultValue the value to assign to {@link #DEFAULT_VALUE}

	DEFAULT_VALUE = defaultValue;
    
Methods Summary
protected RdefaultAction(javax.lang.model.element.Element e, P p)
The default action for visit methods. The implementation in this class just returns {@link #DEFAULT_VALUE}; subclasses will commonly override this method.

param
e the element to process
param
p a visitor-specified parameter
return
{@code DEFAULT_VALUE} unless overridden

	return DEFAULT_VALUE;
    
public RvisitExecutable(javax.lang.model.element.ExecutableElement e, P p)
{@inheritDoc} This implementation calls {@code defaultAction}.

param
e {@inheritDoc}
param
p {@inheritDoc}
return
the result of {@code defaultAction}

	return defaultAction(e, p);
    
public RvisitPackage(javax.lang.model.element.PackageElement e, P p)
{@inheritDoc} This implementation calls {@code defaultAction}.

param
e {@inheritDoc}
param
p {@inheritDoc}
return
the result of {@code defaultAction}

	return defaultAction(e, p);
    
public RvisitType(javax.lang.model.element.TypeElement e, P p)
{@inheritDoc} This implementation calls {@code defaultAction}.

param
e {@inheritDoc}
param
p {@inheritDoc}
return
the result of {@code defaultAction}

	return defaultAction(e, p);
    
public RvisitTypeParameter(javax.lang.model.element.TypeParameterElement e, P p)
{@inheritDoc} This implementation calls {@code defaultAction}.

param
e {@inheritDoc}
param
p {@inheritDoc}
return
the result of {@code defaultAction}

	return defaultAction(e, p);
    
public RvisitVariable(javax.lang.model.element.VariableElement e, P p)
{@inheritDoc} This implementation calls {@code defaultAction}.

param
e {@inheritDoc}
param
p {@inheritDoc}
return
the result of {@code defaultAction}

	return defaultAction(e, p);