Package org.springframework.asm

# Class FieldVisitor

java.lang.Object
org.springframework.asm.FieldVisitor

Direct Known Subclasses:
  `FieldVisitorTee`

public abstract class FieldVisitor extends Object
A visitor to visit a Java field. The methods of this class must be called in the following order: ( `visitAnnotation` | `visitTypeAnnotation` | `visitAttribute` )* `visitEnd`.

Author:
  Eric Bruneton

## Field Summary

Fields
Modifier and Type
Field
Description
`protected final int`
`api`
The ASM API version implemented by this visitor.
`protected FieldVisitor`
`fv`
The field visitor to which this visitor must delegate method calls.

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`FieldVisitor(int api)`
Constructs a new `FieldVisitor`.
`protected`
`FieldVisitor(int api, FieldVisitor fieldVisitor)`
Constructs a new `FieldVisitor`.

## Method Summary

Modifier and Type
Method
Description
`FieldVisitor`
`getDelegate()`
The field visitor to which this visitor must delegate method calls.
`AnnotationVisitor`
`visitAnnotation(String descriptor, boolean visible)`
Visits an annotation of the field.
`void`
`visitAttribute(Attribute attribute)`
Visits a non standard attribute of the field.
`void`
`visitEnd()`
Visits the end of the field.
`AnnotationVisitor`
`visitTypeAnnotation(int typeRef, TypePath typePath, String descriptor, boolean visible)`
Visits an annotation on the type of the field.

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

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

## Field Details

### api

protected final int api
The ASM API version implemented by this visitor. The value of this field must be one of the `ASM` x values in `Opcodes`.

### fv

protected FieldVisitor fv
The field visitor to which this visitor must delegate method calls. May be null.

## Constructor Details

### FieldVisitor

protected FieldVisitor(int api)
Constructs a new `FieldVisitor`.

Parameters:
  `api` - the ASM API version implemented by this visitor. Must be one of the `ASM` x values in `Opcodes`.

### FieldVisitor

protected FieldVisitor(int api, FieldVisitor fieldVisitor)
Constructs a new `FieldVisitor`.

Parameters:
  `api` - the ASM API version implemented by this visitor. Must be one of the `ASM` x values in `Opcodes`.
  `fieldVisitor` - the field visitor to which this visitor must delegate method calls. May be null.

## Method Details

### getDelegate

public FieldVisitor getDelegate()
The field visitor to which this visitor must delegate method calls. May be null.

Returns:
  the field visitor to which this visitor must delegate method calls, or null.

### visitAnnotation

public AnnotationVisitor visitAnnotation(String descriptor, boolean visible)
Visits an annotation of the field.

Parameters:
  `descriptor` - the class descriptor of the annotation class.
  `visible` - true if the annotation is visible at runtime.
Returns:
  a visitor to visit the annotation values, or null if this visitor is not interested in visiting this annotation.

### visitTypeAnnotation

public AnnotationVisitor visitTypeAnnotation(int typeRef, TypePath typePath, String descriptor, boolean visible)
Visits an annotation on the type of the field.

Parameters:
  `typeRef` - a reference to the annotated type. The sort of this type reference must be `TypeReference.FIELD`. See `TypeReference`.
  `typePath` - the path to the annotated type argument, wildcard bound, array element type, or static inner type within 'typeRef'. May be null if the annotation targets 'typeRef' as a whole.
  `descriptor` - the class descriptor of the annotation class.
  `visible` - true if the annotation is visible at runtime.
Returns:
  a visitor to visit the annotation values, or null if this visitor is not interested in visiting this annotation.

### visitAttribute

public void visitAttribute(Attribute attribute)
Visits a non standard attribute of the field.

Parameters:
  `attribute` - an attribute.

### visitEnd

public void visitEnd()
Visits the end of the field. This method, which is the last one to be called, is used to inform the visitor that all the annotations and attributes of the field have been visited.