|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
public interface DeclarationFactory
Irenkaで使用する型を生成するファクトリ。
| メソッドの概要 | ||
|---|---|---|
|
annotationOf(Class<R> type)
指定した実行時型に対応する注釈の宣言を返す。 |
|
|
arrayOf(CtType<C> component)
指定した型を要素型に持つ配列型を返す。 |
|
DeclarationFactory |
borrow()
このツールを借りる。 |
|
|
classOf(Class<R> type)
指定した実行時型に対応するクラスの宣言を返す。 |
|
|
enumOf(Class<R> type)
指定した実行時型に対応する列挙の宣言を返す。 |
|
|
interfaceOf(Class<R> type)
指定した実行時型に対応するインターフェースの宣言を返す。 |
|
|
newAnnotation(String simpleName)
最小限の構造を持つ CtAnnotationの宣言を新しく生成して返す。 |
|
|
newAnnotationElement(CtType<T> type,
String simpleName)
最小限の構造を持つ CtAnnotationElementの宣言を新しく生成して返す。 |
|
|
newClass(String simpleName)
最小限の構造を持つ CtClassの宣言を新しく生成して返す。 |
|
|
newConstructor(CtDeclaredType<T> parent)
最小限の構造を持つ CtConstructorの宣言を新しく生成して返す。 |
|
|
newEnum(String simpleName)
最小限の構造を持つ CtEnumの宣言を新しく生成して返す。 |
|
|
newEnumConstant(CtEnum<T> parent,
String simpleName)
最小限の構造を持つ CtEnumConstantの宣言を新しく生成して返す。 |
|
|
newField(CtType<T> type,
String simpleName)
最小限の構造を持つ CtFieldの宣言を新しく生成して返す。 |
|
CtInitializer |
newInitializer()
最小限の構造を持つ CtInitializerの宣言を新しく生成して返す。 |
|
|
newInterface(String simpleName)
最小限の構造を持つ CtInterfaceの宣言を新しく生成して返す。 |
|
|
newMethod(CtType<T> returnType,
String simpleName)
最小限の構造を持つ CtMethodの宣言を新しく生成して返す。 |
|
CtPackage |
newPackage(String simpleName)
指定の名前を持つパッケージ片の宣言を新しく生成して返す。 |
|
CtPackage |
packageOf(String name)
指定の名前を持つパッケージを返す。 |
|
CtPackage |
packageOf(String name,
boolean force)
指定の名前を持つパッケージを返す。 |
|
CtDeclaredType<?> |
typeDeclarationOf(String typeName)
指定した名前の宣言型を返す。 |
|
|
typeOf(Class<R> type)
指定した実行時型に対応するコンパイル時型を返す。 |
|
CtType<?> |
typeOf(String typeName)
指定した名前の型を返す。 |
|
CtType<?> |
typeOf(TypeKind kind)
TypeKindが表す特定可能な型を返す。 |
|
CtWildcard<?> |
wildcard()
バウンドを持たないワイルドカードを返す。 |
|
|
wildcardExtends(CtType<T> bound)
上限を持つワイルドカードを返す。 |
|
|
wildcardSuper(CtType<T> bound)
下限を持つワイルドカードを返す。 |
|
| メソッドの詳細 |
|---|
CtPackage packageOf(String name)
packageOf(name, true)を呼び出す。
name - パッケージの名前
null
CtPackage packageOf(String name,
boolean force)
forceにfalseが指定された場合、ロード済みでないパッケージは無視される。
name - パッケージの名前force - trueが指定された場合、ロード済みでないパッケージはロード必要に応じてロードする
nullCtType<?> typeOf(TypeKind kind)
TypeKindが表す特定可能な型を返す。
このメソッドでは、次の型を生成することはできない。
CtArray (CtType.array()) CtClass (classOf(Class)) CtInterface (interfaceOf(Class)) CtEnum (enumOf(Class)) CtAnnotation (annotationOf(Class)) CtTypeParameter (CtGenericReference.getTypeParameters())
kind - 型の種類
IllegalArgumentException - 生成できない型の種類が指定された場合<R> CtType<R> typeOf(Class<R> type)
R - 実行時型type - 実行時型
NullPointerException - 引数にnullが含まれていた場合、
IllegalArgumentException - 生成できない型が指定された場合CtType<?> typeOf(String typeName)
typeName - 型の名前
nullCtDeclaredType<?> typeDeclarationOf(String typeName)
typeName - 型の名前
null<R> CtClass<R> classOf(Class<R> type)
CtDeclaredType.getParameterized(java.util.List)を続けて適用すればよい。
R - 実行時型type - 実行時型
NullPointerException - 引数にnullが含まれていた場合、
IllegalArgumentException - クラス型でない型が指定された場合<R> CtInterface<R> interfaceOf(Class<R> type)
CtDeclaredType.getParameterized(java.util.List)を続けて適用すればよい。
R - 実行時型type - 実行時型
NullPointerException - 引数にnullが含まれていた場合、
IllegalArgumentException - インターフェース型でない型が指定された場合<R extends Enum<?>> CtEnum<R> enumOf(Class<R> type)
Enumそのものはは列挙型ではないため、classOf(Class)を利用する必要がある。
R - 実行時型type - 実行時型
NullPointerException - 引数にnullが含まれていた場合、
IllegalArgumentException - 列挙型でない型が指定された場合<R extends Annotation> CtAnnotation<R> annotationOf(Class<R> type)
Annotationそのものはは注釈型ではないため、interfaceOf(Class)を利用する必要がある。
R - 実行時型type - 実行時型
NullPointerException - 引数にnullが含まれていた場合、
IllegalArgumentException - 注釈型でない型が指定された場合<C> CtArray<C> arrayOf(CtType<C> component)
C - 実行時の要素型component - 要素型
CtWildcard<?> wildcard()
CtWildcardType#upperBounded(CtType)などを利用する。
<T> CtWildcard<? extends T> wildcardExtends(CtType<T> bound)
T - 境界型bound - 上限境界
<T> CtWildcard<? super T> wildcardSuper(CtType<T> bound)
T - 境界型bound - 下限境界
<T> CtClass<T> newClass(String simpleName)
CtClassの宣言を新しく生成して返す。
この宣言は親を持たない。
T - 宣言の型simpleName - 単純名
<T> CtInterface<T> newInterface(String simpleName)
CtInterfaceの宣言を新しく生成して返す。
この宣言は親を持たない。
T - 宣言の型simpleName - 単純名
<T extends Enum<?>> CtEnum<T> newEnum(String simpleName)
CtEnumの宣言を新しく生成して返す。
この宣言は親を持たない。
T - 宣言の型simpleName - 単純名
<T extends Annotation> CtAnnotation<T> newAnnotation(String simpleName)
CtAnnotationの宣言を新しく生成して返す。
この宣言は親を持たない。
T - 宣言の型simpleName - 単純名
<T> CtField<T> newField(CtType<T> type,
String simpleName)
CtFieldの宣言を新しく生成して返す。
この宣言は親を持たない。
T - 生成する要素の型type - フィールドの型simpleName - 単純名
<T extends Enum<?>> CtEnumConstant<T> newEnumConstant(CtEnum<T> parent,
String simpleName)
CtEnumConstantの宣言を新しく生成して返す。
この宣言は親を持たない。
T - 生成する要素の型parent - 列挙型simpleName - 単純名
CtInitializer newInitializer()
CtInitializerの宣言を新しく生成して返す。
この宣言は親を持たない。
<T> CtMethod<T> newMethod(CtType<T> returnType,
String simpleName)
CtMethodの宣言を新しく生成して返す。
この宣言は親を持たない。
T - 生成する要素の型returnType - 戻り値型simpleName - 単純名
<T> CtConstructor<T> newConstructor(CtDeclaredType<T> parent)
CtConstructorの宣言を新しく生成して返す。
この宣言は親を持たない。
T - 生成する要素の型parent - 宣言型
<T> CtAnnotationElement<T> newAnnotationElement(CtType<T> type,
String simpleName)
CtAnnotationElementの宣言を新しく生成して返す。
この宣言は親を持たない。
T - 生成する要素の型type - 要素が型simpleName - 単純名
CtPackage newPackage(String simpleName)
simpleName - パッケージ片の名前
DeclarationFactory borrow()
Tool の記述:
Tool 内の borrow
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||