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

AbstractTypeVisitor6

public abstract class AbstractTypeVisitor6 extends Object implements TypeVisitor
A skeletal visitor of types with default behavior appropriate for the version 6 language level.

WARNING: The {@code 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 {@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 abstract type 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 {@link 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.4 06/07/31
since
1.6

Fields Summary
Constructors Summary
protected AbstractTypeVisitor6()
Constructor for concrete subclasses to call.

Methods Summary
public final Rvisit(javax.lang.model.type.TypeMirror t, P p)
Visits any type mirror as if by passing itself to that type mirror's {@link TypeMirror#accept accept} method. The invocation {@code v.visit(t, p)} is equivalent to {@code t.accept(v, p)}.

param
t the type to visit
param
p a visitor-specified parameter
return
a visitor-specified result

	return t.accept(this, p);
    
public final Rvisit(javax.lang.model.type.TypeMirror t)
Visits any type mirror as if by passing itself to that type mirror's {@link TypeMirror#accept accept} method and passing {@code null} for the additional parameter. The invocation {@code v.visit(t)} is equivalent to {@code t.accept(v, null)}.

param
t the type to visit
return
a visitor-specified result

	return t.accept(this, null);
    
public RvisitUnknown(javax.lang.model.type.TypeMirror t, P p)
{@inheritDoc}

The default implementation of this method in {@code AbstractTypeVisitor6} will always throw {@code UnknownTypeException}. This behavior is not required of a subclass.

param
t the type to visit
return
a visitor-specified result
throws
UnknownTypeException a visitor implementation may optionally throw this exception

	throw new UnknownTypeException(t, p);