JavaTM Platform
Standard Ed. 6

javax.lang.model.util
クラス ElementScanner6<R,P>

java.lang.Object
  上位を拡張 javax.lang.model.util.AbstractElementVisitor6<R,P>
      上位を拡張 javax.lang.model.util.ElementScanner6<R,P>
型パラメータ:
R - このビジターのメソッドの戻り型。結果を返すことを必要としないビジターの Void を使用する
P - このビジターのメソッドに追加するパラメータの型追加のパラメータを必要としないビジターの Void を使用する
すべての実装されたインタフェース:
ElementVisitor<R,P>

@SupportedSourceVersion(value=RELEASE_6)
public class ElementScanner6<R,P>
extends AbstractElementVisitor6<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 メソッドを呼び出します。また、新しい要素スキャナビジタークラスが、新しい言語レベルに対応するように導入されます。このビジターでは、目的のビジットメソッドに対するデフォルトの動作が異なります。新しいビジターが導入された場合、このビジターのすべてまたは一部が推奨されなくなる可能性があります。

導入されたバージョン:
1.6

フィールドの概要
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
 

フィールドの詳細

DEFAULT_VALUE

protected final R DEFAULT_VALUE
指定されたデフォルト値です。

コンストラクタの詳細

ElementScanner6

protected ElementScanner6()
具象サブクラスのコンストラクタです。デフォルト値に null を使用します。


ElementScanner6

protected ElementScanner6(R defaultValue)
具象サブクラスのコンストラクタです。デフォルト値に引数を使用します。

メソッドの詳細

scan

public final R scan(Iterable<? extends Element> iterable,
                    P p)
指定された要素で反復し、各要素に対して scan(Element, P) を呼び出します。scan の最後の呼び出し結果を返します。空の反復可能なオブジェクトの場合は DEFAULT_VALUE を返します。

パラメータ:
iterable - スキャン対象の要素
p - 追加のパラメータ
戻り値:
最後の要素のスキャン。要素がない場合は DEFAULT_VALUE

scan

public R scan(Element e,
              P p)
e.accept(this, p) を呼び出すことで要素を処理します。サブクラスによって、このメソッドをオーバーライドできます。

戻り値:
e のビジット結果

scan

public final R scan(Element e)
v.scan(e, null) と同等の簡易メソッドです。

戻り値:
e のスキャン結果

visitPackage

public R visitPackage(PackageElement e,
                      P p)
パッケージ要素をビジットします。 この実装は、囲まれている要素をスキャンします。

パラメータ:
e - ビジットする要素
p - ビジター指定のパラメータ
戻り値:
スキャン結果

visitType

public R visitType(TypeElement e,
                   P p)
型要素をビジットします。 この実装は、囲まれている要素をスキャンします。

パラメータ:
e - ビジットする要素
p - ビジター指定のパラメータ
戻り値:
スキャン結果

visitVariable

public R visitVariable(VariableElement e,
                       P p)
変数要素をビジットします。 この実装は、囲まれている要素をスキャンします。

パラメータ:
e - ビジットする要素
p - ビジター指定のパラメータ
戻り値:
スキャン結果

visitExecutable

public R visitExecutable(ExecutableElement e,
                         P p)
実行可能要素をビジットします。 この実装は、パラメータをスキャンします。

パラメータ:
e - ビジットする要素
p - ビジター指定のパラメータ
戻り値:
スキャン結果

visitTypeParameter

public R visitTypeParameter(TypeParameterElement e,
                            P p)
型パラメータ要素をビジットします。 この実装は、囲まれている要素をスキャンします。

パラメータ:
e - ビジットする要素
p - ビジター指定のパラメータ
戻り値:
スキャン結果

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。