|
Mirror API | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object com.sun.mirror.util.DeclarationFilter
public class DeclarationFilter
宣言のコレクションから必要な項目を選択するためのフィルタ。フィルタは、宣言を「選択する」または宣言に「一致する」というように表現されます。フィルタは複数の方法で生成できます。これらの方法には、次に示す静的方法、既存のフィルタの無効化または合成による方法、任意のマッチング規則を実装するサブクラスによる方法などがあります。
サブクラスは、matches(Declaration)
メソッドを実装して簡単に任意のフィルタを生成できます。
例
コレクションからの public 宣言の選択
クラス宣言の選択 (enum を含む)result = FILTER_PUBLIC.filter(decls);
クラス宣言の選択 (enum を除く)classFilter = DeclarationFilter.getFilter(ClassDeclaration.class); result = classFilter.filter(decls);
「Bob」という名前の宣言の選択:enumFilter = DeclarationFilter.getFilter(EnumDeclaration.class); compoundFilter = classFilter.and(enumFilter.not()); result = compoundFilter.filter(decls);
nameFilter = new DeclarationFilter() { public boolean matches(Declaration d) { return d.getSimpleName().equals("Bob"); } }; result = nameFilter.filter(decls);
フィールドの概要 | |
---|---|
static DeclarationFilter |
FILTER_PACKAGE
package-private (デフォルト) 宣言だけを選択するフィルタ。 |
static DeclarationFilter |
FILTER_PRIVATE
private 宣言だけを選択するフィルタ。 |
static DeclarationFilter |
FILTER_PROTECTED
protected 宣言だけを選択するフィルタ。 |
static DeclarationFilter |
FILTER_PUBLIC
public 宣言だけを選択するフィルタ。 |
static DeclarationFilter |
FILTER_PUBLIC_OR_PROTECTED
public または protected 宣言だけを選択するフィルタ。 |
コンストラクタの概要 | |
---|---|
DeclarationFilter()
すべての宣言を選択する識別フィルタを構築します。 |
メソッドの概要 | ||
---|---|---|
DeclarationFilter |
and(DeclarationFilter f)
このフィルタと別のフィルタの両方により選択された宣言を選択するフィルタを返します。 |
|
|
filter(Collection<? extends Declaration> decls,
Class<D> resType)
結果を特定の種類の宣言に制限して、このフィルタに一致する宣言を返します。 |
|
|
filter(Collection<D> decls)
このフィルタに一致する宣言を返します。 |
|
static DeclarationFilter |
getFilter(Class<? extends Declaration> kind)
特定の種類の宣言を選択するフィルタを返します。 |
|
static DeclarationFilter |
getFilter(Collection<Modifier> mods)
修飾子のコレクションをすべて含む宣言を選択するフィルタを返します。 |
|
boolean |
matches(Declaration decl)
このフィルタが特定の宣言に一致するかどうかをテストします。 |
|
DeclarationFilter |
not()
このフィルタが選択していない宣言を選択するフィルタを返します。 |
|
DeclarationFilter |
or(DeclarationFilter f)
このフィルタまたは別のフィルタのどちらかにより選択された宣言を選択するフィルタを返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
public static final DeclarationFilter FILTER_PUBLIC
public static final DeclarationFilter FILTER_PROTECTED
public static final DeclarationFilter FILTER_PUBLIC_OR_PROTECTED
public static final DeclarationFilter FILTER_PACKAGE
public static final DeclarationFilter FILTER_PRIVATE
コンストラクタの詳細 |
---|
public DeclarationFilter()
メソッドの詳細 |
---|
public static DeclarationFilter getFilter(Collection<Modifier> mods)
mods
- 一致する修飾子 (null 以外)
public static DeclarationFilter getFilter(Class<? extends Declaration> kind)
kind
- 選択する宣言の種類
public DeclarationFilter and(DeclarationFilter f)
f
- このフィルタと合成されるフィルタ
public DeclarationFilter or(DeclarationFilter f)
f
- このフィルタと合成されるフィルタ
public DeclarationFilter not()
public boolean matches(Declaration decl)
decl
- 一致する宣言
public <D extends Declaration> Collection<D> filter(Collection<D> decls)
D
- フィルタ処理されている宣言の型decls
- フィルタ処理される宣言
public <D extends Declaration> Collection<D> filter(Collection<? extends Declaration> decls, Class<D> resType)
D
- 返される宣言の型decls
- フィルタ処理される宣言resType
- D のリフレクトの観点から、返される宣言の型
|
Mirror API | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |