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

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

  • 型パラメータ:
    R - このビジターのメソッドの戻り型。 結果を返すことを必要としないビジターのVoidを使用する。
    P - このビジターのメソッドに追加するパラメータの型。 追加のパラメータを必要としないビジターのVoidを使用する。
    既知のすべての実装クラス:
    AbstractTypeVisitor6, AbstractTypeVisitor7, AbstractTypeVisitor8, AbstractTypeVisitor9, SimpleTypeVisitor6, SimpleTypeVisitor7, SimpleTypeVisitor8, SimpleTypeVisitor9, TypeKindVisitor6, TypeKindVisitor7, TypeKindVisitor8, TypeKindVisitor9


    public interface TypeVisitor<R,P>
    ビジター・デザイン・パターンのスタイルによる型のビジターです。 このインタフェースを実装しているクラスは、コンパイル時に型の種類が未知の場合、型の操作に使用されます。 ビジターが型acceptメソッドに渡されると、その型に最も適用可能なvisitXyzメソッドが呼び出されます。

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

    警告: Java™プログラミング言語の将来のバージョンに現在は未知の新しい言語構造が追加される場合、それらを格納するために、このインタフェースにメソッドが追加される可能性があります。 したがって、このインタフェースを直接実装するビジター・クラスは、プラットフォームの将来のバージョンでソースの互換性がなくなる可能性があります。 このようなソースの非互換性を回避するために、ビジターの実装では、このインタフェースを実装する適切な抽象ビジター・クラスを拡張することをお薦めします。 ただし、APIは通常、抽象クラスのいずれかではなく、パラメータの型や戻り型などとして、このビジター・インタフェースを使用します。

    新しい言語コンストラクトを格納するためのメソッドは、デフォルト・メソッドとして追加された場合、ソースと互換性のある方法で追加されることがあります。 ただし、デフォルトのメソッドはJava SE 8以降のリリースでのみ使用でき、Java SE 8にバンドルされている javax.lang.model.*パッケージはJava SE 7でも実行可能でなければなりません。 したがって、Java SE 8言語機能をカバーするようにjavax.lang.model.*を拡張する場合、デフォルトのメソッドは使用されませんでした。 ただし、Java SE 8以降のプラットフォームでのみ実行する必要があるjavax.lang.model.*パッケージのリビジョンでは、デフォルトのメソッドが使用されます。

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

      • visit

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

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

        R visitPrimitive​(PrimitiveType t,
                         P p)
        プリミティブ型をビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
      • visitNull

        R visitNull​(NullType t,
                    P p)
        null型をビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
      • visitArray

        R visitArray​(ArrayType t,
                     P p)
        配列型をビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
      • visitDeclared

        R visitDeclared​(DeclaredType t,
                        P p)
        宣言された型をビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
      • visitError

        R visitError​(ErrorType t,
                     P p)
        エラー型をビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
      • visitTypeVariable

        R visitTypeVariable​(TypeVariable t,
                            P p)
        型変数をビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
      • visitWildcard

        R visitWildcard​(WildcardType t,
                        P p)
        ワイルドカード型をビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
      • visitExecutable

        R visitExecutable​(ExecutableType t,
                          P p)
        実行可能型をビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
      • visitNoType

        R visitNoType​(NoType t,
                      P p)
        NoTypeインスタンスをビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
      • visitUnknown

        R visitUnknown​(TypeMirror t,
                       P p)
        未知の種類の型をビジットします。 これは、言語が拡張され、新しい種類の型がTypeMirror階層に追加された場合に発生します。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
        例外:
        UnknownTypeException - 必要に応じてビジターの実装はこの例外をスローできる
      • visitUnion

        R visitUnion​(UnionType t,
                     P p)
        共用体型をビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
        導入されたバージョン:
        1.7
      • visitIntersection

        R visitIntersection​(IntersectionType t,
                            P p)
        共通部分型をビジットします。
        パラメータ:
        t - ビジットする型
        p - ビジター指定のパラメータ
        戻り値:
        ビジター指定の結果
        導入されたバージョン:
        1.8