モジュール java.compiler
パッケージ javax.lang.model.element

インタフェースAnnotationValueVisitor<R,​P>

型パラメータ:
R - このビジターのメソッドの戻り型
P - このビジターのメソッドに追加するパラメータの型。
既知のすべての実装クラス:
AbstractAnnotationValueVisitor14, AbstractAnnotationValueVisitor6, AbstractAnnotationValueVisitor7, AbstractAnnotationValueVisitor8, AbstractAnnotationValueVisitor9, SimpleAnnotationValueVisitor14, SimpleAnnotationValueVisitor6, SimpleAnnotationValueVisitor7, SimpleAnnotationValueVisitor8, SimpleAnnotationValueVisitor9

public interfaceAnnotationValueVisitor<R,​P>
ビジター・デザイン・パターンのバリアントを使用した、注釈インタフェース要素の値のビジター。 型階層のメンバーの具象型に基づいてディスパッチする標準のビジターとは異なり、このビジターは格納されたデータの型に基づいてディスパッチします。データは個別のサブクラスには格納されません。たとえば、boolean値とint値などです。 このインタフェースを実装しているクラスは、コンパイル時に値の型が未知の場合、値の操作に使用されます。 ビジターが値acceptメソッドに渡されると、その値に適用可能なvisitXyzメソッドが呼び出されます。

このインタフェースを実装するクラスは、追加パラメータpnullのときにNullPointerExceptionをスローする場合としない場合があります。詳細については、クラスの実装に関するドキュメントを参照してください。

APIのノート:
警告: このインタフェースには、Javaプログラミング言語の将来のバージョンに追加される新しい、現在不明な言語構造に対応するためのメソッドが追加される可能性があります。 このような追加は、このAPIの導入後に追加された言語機能をサポートするために、このパッケージの別のビジター・インタフェースですでに行われています。 このインタフェースを直接実装するビジター・クラスは、将来のバージョンのプラットフォームとソースの互換性がない可能性があります。 このようなソースの非互換性を回避するために、ビジターの実装では、このインタフェースを実装する適切な抽象ビジター・クラスを拡張することをお薦めします。 ただし、APIは通常、抽象クラスのいずれかではなく、パラメータの型や戻り型などとして、このビジター・インタフェースを使用します。

新しい言語構造に対応するメソッドは、ElementVisitorvisitModuleの場合と同様に、強力なソース互換性を提供するためにデフォルト・メソッドとして追加する必要があります。 このインタフェースのデフォルト・メソッドの実装は、visitUnknownを呼び出します。この動作は、新しい言語構成でソース・バージョンをサポートする具象ビジターでオーバーライドされます。

「utilパッケージ」には、このビジター・インタフェースを実装する複数のクラス・ファミリがあります。 ファミリは、FooVisitor Nの行に沿ったネーミング・パターンに従います。ここで、Nはビジターが適切な「ソース・バージョン」を示します。 特に、FooVisitor Nは、ソース・バージョンNに存在するすべての言語構造を処理する必要があります。 バージョンN + 1の(またはそれ以降のリリース)に新しい言語構造が追加されていない場合、 FooVisitor Nはその新しいソース・バージョンも処理できます。その場合、 FooVisitor NクラスのSupportedSourceVersion注釈は新しいバージョンを示します。 ソース・バージョンNの後に導入された言語構造を表す注釈値にアクセスすると、その動作がオーバーライドされないかぎり、 FooVisitor NUnknownAnnotationValueExceptionをスローします。

ビジター・ファミリのどのメンバーをサブクラス化するかを選択する場合、最新のメンバーをサブクラス化すると、対象となるソース・バージョンの範囲が増加します。 サブクラス化するビジター・ファミリを選択する場合は、組込み機能を考慮してください:

導入されたバージョン:
1.6
  • メソッドの詳細

    • visit

      R visit(AnnotationValue av, P p)
      注釈値をビジットします。
      パラメータ:
      av - ビジットする値
      p - ビジター指定のパラメータ
      戻り値:
      ビジター指定の結果
    • visit

      default R visit(AnnotationValue av)
      visit(av, null)と同等の簡易メソッドです。
      実装要件:
      デフォルト実装はvisit(av, null)です。
      パラメータ:
      av - ビジットする値
      戻り値:
      ビジター指定の結果
    • visitBoolean

      R visitBoolean(boolean b, P p)
      注釈のboolean値をビジットします。
      パラメータ:
      b - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitByte

      R visitByte(byte b, P p)
      注釈のbyte値をビジットします。
      パラメータ:
      b - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitChar

      R visitChar(char c, P p)
      注釈のchar値をビジットします。
      パラメータ:
      c - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitDouble

      R visitDouble(double d, P p)
      注釈のdouble値をビジットします。
      パラメータ:
      d - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitFloat

      R visitFloat(float f, P p)
      注釈のfloat値をビジットします。
      パラメータ:
      f - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitInt

      R visitInt(int i, P p)
      注釈のint値をビジットします。
      パラメータ:
      i - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitLong

      R visitLong(long i, P p)
      注釈のlong値をビジットします。
      パラメータ:
      i - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitShort

      R visitShort(short s, P p)
      注釈のshort値をビジットします。
      パラメータ:
      s - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitString

      R visitString(String s, P p)
      注釈の文字列値をビジットします。
      パラメータ:
      s - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitType

      R visitType(TypeMirror t, P p)
      注釈の型値をビジットします。
      パラメータ:
      t - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitEnumConstant

      R visitEnumConstant(VariableElement c, P p)
      注釈のenum値をビジットします。
      パラメータ:
      c - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitAnnotation

      R visitAnnotation(AnnotationMirror a, P p)
      注釈の注釈値をビジットします。
      パラメータ:
      a - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitArray

      R visitArray(List<? extends AnnotationValue> vals, P p)
      注釈の配列値をビジットします。
      パラメータ:
      vals - ビジットされる値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
    • visitUnknown

      R visitUnknown(AnnotationValue av, P p)
      未知の種類の注釈値をビジットします。 これは、言語が拡張され、新しい種類の値を注釈に格納できるようになった場合に発生します。
      パラメータ:
      av - ビジットされる未知の値
      p - ビジター指定のパラメータ
      戻り値:
      ビジットの結果
      例外:
      UnknownAnnotationValueException - 必要に応じてビジターの実装はこの例外をスローできる