|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.lang.model.util.AbstractElementVisitor6<R,P>
javax.lang.model.util.ElementScanner6<R,P>
R - このビジターのメソッドの戻り型。結果を返すことを必要としないビジターの Void を使用するP - このビジターのメソッドに追加するパラメータの型追加のパラメータを必要としないビジターの Void を使用する@SupportedSourceVersion(value=RELEASE_6) public class ElementScanner6<R,P>
RELEASE_6 ソースバージョンに適したデフォルトの動作を持つ、プログラム要素のスキャンビジターです。このクラスの visitXYZ メソッドは、個々のメソッドの仕様に示されているとおりに、囲まれている要素やパラメータなどに対して scan を呼び出すことで、コンポーネント要素をスキャンします。サブクラスは、visitXYZ メソッドをオーバーライドすることで、要素をビジットする順序を制御できます。スキャナのクライアントは、目的のルートオブジェクトに対して v.visit(e, p) ではなく v.scan(e, p) を呼び出すことによって、望ましい動作を取得することができます。
サブクラスが visitXYZ メソッドをオーバーライドすると、新しいメソッドによって super.visitXYZ を呼び出すことで、囲まれている要素をデフォルトの方法でスキャンすることが可能になります。この方法で、具象ビジターは追加の処理に対するコンポーネント要素のトラバーサルの順序を制御できます。たとえば、オーバーライドされたメソッドの開始時に super.visitXYZ を常に呼び出すことで、事前に順序付けられたトラバーサルが生じます。ほかの順序でコンポーネント要素をトラバースするには、super.visitXYZ を呼び出すのではなく、オーバーライドするビジットメソッドで目的の順序の要素に対して scan を呼び出すようにしてください。
このクラスのメソッドは、一般規約に従ってオーバーライドできます。@Override を持つ具象サブクラスの注釈付けメソッドを使用すると、メソッドが意図されたとおりにオーバーライドされます。
警告: Java™ プログラミング言語の将来のバージョンに、現在は未知の新しい言語構造が追加される場合、それらを格納するために、このクラスによって実装される ElementVisitor インタフェースにメソッドが追加される可能性があります。したがって、将来的に、名前が "visit" で始まるメソッドがこのクラスに追加される可能性があります。非互換性が生じることを避けるため、このクラスを拡張するクラスでは、名前が "visit" で始まるインスタンスメソッドを宣言しないようにしてください。
このような新しいビジットメソッドが追加されると、このクラスのデフォルトの実装は visitUnknown メソッドを呼び出します。また、新しい要素スキャナビジタークラスが、新しい言語レベルに対応するように導入されます。このビジターでは、目的のビジットメソッドに対するデフォルトの動作が異なります。新しいビジターが導入された場合、このビジターのすべてまたは一部が推奨されなくなる可能性があります。
| フィールドの概要 | |
|---|---|
protected R |
DEFAULT_VALUE
指定されたデフォルト値です。 |
| コンストラクタの概要 | |
|---|---|
protected |
ElementScanner6()
具象サブクラスのコンストラクタです。 |
protected |
ElementScanner6(R defaultValue)
具象サブクラスのコンストラクタです。 |
| メソッドの概要 | |
|---|---|
R |
scan(Element e)
v.scan(e, null) と同等の簡易メソッドです。 |
R |
scan(Element e,
P p)
e.accept(this, p) を呼び出すことで要素を処理します。 |
R |
scan(Iterable<? extends Element> iterable,
P p)
指定された要素で反復し、各要素に対して scan(Element, P) を呼び出します。 |
R |
visitExecutable(ExecutableElement e,
P p)
実行可能要素をビジットします。 |
R |
visitPackage(PackageElement e,
P p)
パッケージ要素をビジットします。 |
R |
visitType(TypeElement e,
P p)
型要素をビジットします。 |
R |
visitTypeParameter(TypeParameterElement e,
P p)
型パラメータ要素をビジットします。 |
R |
visitVariable(VariableElement e,
P p)
変数要素をビジットします。 |
| クラス javax.lang.model.util.AbstractElementVisitor6 から継承されたメソッド |
|---|
visit, visit, visitUnknown |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
|---|
protected final R DEFAULT_VALUE
| コンストラクタの詳細 |
|---|
protected ElementScanner6()
null を使用します。
protected ElementScanner6(R defaultValue)
| メソッドの詳細 |
|---|
public final R scan(Iterable<? extends Element> iterable,
P p)
scan(Element, P) を呼び出します。scan の最後の呼び出し結果を返します。空の反復可能なオブジェクトの場合は DEFAULT_VALUE を返します。
iterable - スキャン対象の要素p - 追加のパラメータ
DEFAULT_VALUE
public R scan(Element e,
P p)
e.accept(this, p) を呼び出すことで要素を処理します。サブクラスによって、このメソッドをオーバーライドできます。
e のビジット結果public final R scan(Element e)
v.scan(e, null) と同等の簡易メソッドです。
e のスキャン結果
public R visitPackage(PackageElement e,
P p)
e - ビジットする要素p - ビジター指定のパラメータ
public R visitType(TypeElement e,
P p)
e - ビジットする要素p - ビジター指定のパラメータ
public R visitVariable(VariableElement e,
P p)
e - ビジットする要素p - ビジター指定のパラメータ
public R visitExecutable(ExecutableElement e,
P p)
e - ビジットする要素p - ビジター指定のパラメータ
public R visitTypeParameter(TypeParameterElement e,
P p)
e - ビジットする要素p - ビジター指定のパラメータ
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。