- 型パラメータ:
R
- このビジターのメソッドの戻り型。 結果を返すことを必要としないビジターのVoid
を使用する。P
- このビジターのメソッドに追加するパラメータの型。 追加のパラメータを必要としないビジターのVoid
を使用する。
- すべての実装されたインタフェース:
ElementVisitor<R,P>
@SupportedSourceVersion(RELEASE_14) public class ElementScanner14<R,P> extends ElementScanner9<R,P>
RELEASE_14
ソース・バージョンに適したデフォルトの動作を持つ、プログラム要素のスキャン・ビジターです。 このクラスのvisitXyz
メソッドは、個々のメソッド仕様に示されているように、scan
を「囲まれた要素」、parametersなどで呼び出してコンポーネントの要素をスキャンします。 サブクラスは、visitXyz
メソッドをオーバーライドすることによって、要素がビジットされる順序を制御できます。 スキャナのクライアントは、目的のルート・オブジェクトに対してv.visit(e, p)
ではなくv.scan(e, p)
を呼び出すことによって、望ましい動作を取得することができます。
サブクラスがvisitXyz
メソッドをオーバーライドすると、新しいメソッドはsuper.visitXyz
を呼び出すことで、囲まれた要素をデフォルトの方法でスキャンさせることができます。 このようにして、具体的なビジターは、追加の処理に関して、構成要素にわたるトラバーサルの順序を制御することができます。例えば、オーバーライドされたメソッドの先頭で一貫してsuper.visitXyz
を呼び出すと、序盤のトラバーサルなどが発生します。super.visitXyz
を呼び出す代わりに、コンポーネントの要素を他の順序でトラバースする必要がある場合は、オーバーライドするvisitメソッドはscan
を希望の順序。
このクラスのメソッドは、一般規約に従ってオーバーライドできます。 @Override
を持つ具象サブクラスの注釈型メソッドを使用すると、メソッドが意図されたとおりにオーバーライドされます。
警告: Java™プログラミング言語の将来のバージョンに、現在は未知の新しい言語構造が追加される場合、それらを格納するために、このクラスによって実装されるElementVisitor
インタフェースにメソッドが追加される可能性があります。 したがって、将来的に、名前が"visit"
で始まるメソッドがこのクラスに追加される可能性があります。非互換性が生じることを避けるため、このクラスを拡張するクラスでは、名前が"visit"
で始まるインスタンス・メソッドを宣言しないようにしてください。
このような新しいビジット・メソッドが追加されると、このクラスのデフォルトの実装はvisitUnknown
メソッドを呼び出します。 また、新しい要素スキャナ・ビジター・クラスが、新しい言語レベルに対応するように導入されます。このビジターでは、目的のビジット・メソッドに対するデフォルトの動作が異なります。 新しいビジターが導入された場合、このビジターのすべてまたは一部が非推奨になる可能性があります。
- 導入されたバージョン:
- 14
- 関連項目:
ElementScanner6
,ElementScanner7
,ElementScanner8
,ElementScanner9
-
フィールドのサマリー
-
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protected
ElementScanner14()
具象サブクラスのコンストラクタです。デフォルト値にnull
を使用します。protected
ElementScanner14(R defaultValue)
具象サブクラスのコンストラクタです。デフォルト値に引数を使用します。 -
メソッドのサマリー
修飾子と型 メソッド 説明 R
visitExecutable(ExecutableElement e, P p)
実行可能要素をビジットします。R
visitRecordComponent(RecordComponentElement e, P p)
レコードに関連付けられ、Java言語のプレビュー機能。
レコード・コンポーネント要素を訪問します。R
visitType(TypeElement e, P p)
型要素をビジットします。クラス javax.lang.model.util.ElementScanner6で宣言されたメソッド
scan, scan, scan, visitPackage, visitTypeParameter
-
コンストラクタの詳細
-
ElementScanner14
protected ElementScanner14()具象サブクラスのコンストラクタです。デフォルト値にnull
を使用します。 -
ElementScanner14
protected ElementScanner14(R defaultValue)具象サブクラスのコンストラクタです。デフォルト値に引数を使用します。- パラメータ:
defaultValue
- デフォルト値
-
-
メソッドの詳細
-
visitType
public R visitType(TypeElement e, P p)型要素をビジットします。- 定義:
- インタフェース
ElementVisitor<R,P>
内のvisitType
- オーバーライド:
- クラス
ElementScanner6<R,P>
のvisitType
- 実装要件:
- この実装では、型パラメータ(存在する場合)をスキャンしてから、要素を囲みます。
- パラメータ:
e
- ビジットする要素p
- ビジター指定のパラメータ- 戻り値:
- スキャン結果
-
visitExecutable
public R visitExecutable(ExecutableElement e, P p)実行可能要素をビジットします。- 定義:
- インタフェース
ElementVisitor<R,P>
内のvisitExecutable
- オーバーライド:
- クラス
ElementScanner6<R,P>
のvisitExecutable
- 実装要件:
- この実装では、最初に型パラメータ(存在する場合)をスキャンし、次にパラメータをスキャンします。
- パラメータ:
e
- ビジットする要素p
- ビジター指定のパラメータ- 戻り値:
- スキャン結果
-
visitRecordComponent
public R visitRecordComponent(RecordComponentElement e, P p)このメソッドは、Java言語のプレビュー機能であるrecordに関連付けられています。 プレビュー機能は、将来のリリースで削除されるか、Java言語の永続機能にアップグレードされる可能性があります。
レコード・コンポーネント要素を訪問します。- 定義:
- インタフェース
ElementVisitor<R,P>
内のvisitRecordComponent
- オーバーライド:
- クラス
AbstractElementVisitor6<R,P>
のvisitRecordComponent
- 実装要件:
- この実装は、囲まれている要素をスキャンします。
- パラメータ:
e
- ビジットする要素p
- ビジター指定のパラメータ- 戻り値:
- スキャンの結果
-