javax.lang.model.util

## Class SimpleElementVisitor6<R,P>

- java.lang.Object
- - javax.lang.model.util.AbstractElementVisitor6<R,P>
  - - javax.lang.model.util.SimpleElementVisitor6<R,P>

Type Parameters:
  `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.

All Implemented Interfaces:
  ElementVisitor<R,P>

Direct Known Subclasses:
  ElementKindVisitor6

    @SupportedSourceVersion(value=RELEASE_6)
    public class SimpleElementVisitor6<R,P>
    extends AbstractElementVisitor6<R,P>

A simple visitor of program elements with default behavior appropriate for the `RELEASE_6` source version. Visit methods corresponding to `RELEASE_6` language constructs call `defaultAction(javax.lang.model.element.Element, P)`, 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 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 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.

Since:
  1.6

### Field Summary

Fields
`protected R` `DEFAULT_VALUE` Default value to be returned; `defaultAction` returns this value unless the method is overridden.

### Constructor Summary

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

### Method Summary

Methods
`protected R` `defaultAction(Element e, P p)` The default action for visit methods.
`R` `visitExecutable(ExecutableElement e, P p)` Visits an executable element.
`R` `visitPackage(PackageElement e, P p)` Visits a package element.
`R` `visitType(TypeElement e, P p)` Visits a type element.
`R` `visitTypeParameter(TypeParameterElement e, P p)` Visits a type parameter element.
`R` `visitVariable(VariableElement e, P p)` Visits a variable element.

### Methods inherited from class javax.lang.model.util.AbstractElementVisitor6

`visit, visit, visitUnknown`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### DEFAULT_VALUE

    protected final R DEFAULT_VALUE

Default value to be returned; `defaultAction` returns this value unless the method is overridden.

### Constructor Detail

#### SimpleElementVisitor6

    protected SimpleElementVisitor6()

Constructor for concrete subclasses; uses `null` for the default value.

#### SimpleElementVisitor6

    protected SimpleElementVisitor6(R defaultValue)

Constructor for concrete subclasses; uses the argument for the default value.

Parameters:
  `defaultValue` - the value to assign to `DEFAULT_VALUE`

### Method Detail

#### defaultAction

    protected R defaultAction(Element e,
                  P p)

The default action for visit methods. The implementation in this class just returns `DEFAULT_VALUE`; subclasses will commonly override this method.

Parameters:
  `e` - the element to process
  `p` - a visitor-specified parameter
Returns:
  `DEFAULT_VALUE` unless overridden

#### visitPackage

    public R visitPackage(PackageElement e,
                 P p)

Visits a package element. This implementation calls `defaultAction`.

Parameters:
  `e` - the element to visit
  `p` - a visitor-specified parameter
Returns:
  the result of `defaultAction`

#### visitType

    public R visitType(TypeElement e,
              P p)

Visits a type element. This implementation calls `defaultAction`.

Parameters:
  `e` - the element to visit
  `p` - a visitor-specified parameter
Returns:
  the result of `defaultAction`

#### visitVariable

    public R visitVariable(VariableElement e,
                  P p)

Visits a variable element. This implementation calls `defaultAction`.

Parameters:
  `e` - the element to visit
  `p` - a visitor-specified parameter
Returns:
  the result of `defaultAction`

#### visitExecutable

    public R visitExecutable(ExecutableElement e,
                    P p)

Visits an executable element. This implementation calls `defaultAction`.

Parameters:
  `e` - the element to visit
  `p` - a visitor-specified parameter
Returns:
  the result of `defaultAction`

#### visitTypeParameter

    public R visitTypeParameter(TypeParameterElement e,
                       P p)

Visits a type parameter element. This implementation calls `defaultAction`.

Parameters:
  `e` - the element to visit
  `p` - a visitor-specified parameter
Returns:
  the result of `defaultAction`

Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.