public static interface Path.Node| 修飾子と型 | メソッドと説明 |
|---|---|
<T extends Path.Node> | as(ClassSE<T> nodeType) このノードの型を指定された型に絞り込みます。 |
IntegerSE | getIndex() |
ObjectSE | getKey() |
ElementKind | getKind() ノードによって表される要素の種類。 |
StringSE | getName() ノードが表す要素の名前を返します。エンティティ / Bean を表すリーフノードの場合は null。 |
boolean | isInIterable() |
StringSE | toString() このノードの人間が読める表現を返します。 |
StringSE getName()
null。特に、ルートオブジェクトを表すノード。ParameterNameProvider によって定義された名前のパラメーター。<cross-parameter>。<return value>。ValueExtractor によって定義されたノード名。具体的には、リストに格納されている要素のリテラル <list element>、Iterable に格納されている要素のリテラル <iterable element>、Map に格納されているキーのリテラル <map key>、および Map に格納されている値のリテラル <map value> です。boolean isInIterable()
Iterable、Map、配列などの複数値コンテナーに含まれるオブジェクトを表す場合は true、それ以外の場合は false IntegerSE getIndex()
List、インデックス付きアクセスをサポートするその他のコンテナーに含まれている場合はノードが配置されるインデックス、それ以外の場合は null ObjectSE getKey()
Map またはキー付きアクセスをサポートするその他のコンテナーに含まれている場合はノードが配置されるキー、それ以外の場合は null ElementKind getKind()
ElementKind とその Node サブ型の間には次の関連があります。ElementKind.BEAN : Path.BeanNodeElementKind.PROPERTY : Path.PropertyNodeElementKind.METHOD : Path.MethodNodeElementKind.CONSTRUCTOR : Path.ConstructorNodeElementKind.PARAMETER : Path.ParameterNodeElementKind.CROSS_PARAMETER : Path.CrossParameterNodeElementKind.RETURN_VALUE : Path.ReturnValueNodeElementKind.CONTAINER_ELEMENT : Path.ContainerElementNode これは、Node 型を絞り込み、ノード固有の情報にアクセスできます。
switch(node.getKind() {
case METHOD:
name = node.getName();
params = node.as(MethodNode.class).getParameterTypes();
case PARAMETER:
index = node.as(ParameterNode.class).getParameterIndex();
[...]
}
ElementKind<T extends Path.Node> T as(ClassSE<T> nodeType)
getKind() を呼び出して、適切な型を事前に確認する必要があります。T - 絞り込む型 nodeType - 絞り込む記述子型を表すクラスオブジェクト ClassCastExceptionSE - このノードが型 T に割り当てられない場合 StringSE toString()
クライアントは、戻り値の特定の構造に依存しないでください。代わりに、このインターフェースとそのサブ型のメソッドを呼び出して、必要な情報を取得する必要があります。
ObjectSE の toStringSE Copyright © 2019 Eclipse Foundation.
Use is subject to license terms.