- 含まれているインタフェース:
MemoryLayoutPREVIEW
public static sealed interface MemoryLayout.PathElement
PathElement
は、JavaプラットフォームのプレビューAPIです。
プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。
「レイアウト・パス」内の要素。 パス要素には次の3種類があります:
- 「グループ・パスの要素」。名前または索引によって、
GroupLayout
PREVIEW内のメンバー・レイアウトを選択するために使用 - 「順序パスの要素」。
SequenceLayout
PREVIEW内の1つ以上のシーケンス要素レイアウトを選択するために使用 - 「パス要素を間接参照」。アドレス・レイアウトをターゲット・レイアウトとして「参照解除」するために使用されます。
- 実装要件:
- このインタフェースの実装は不変、スレッド・セーフ、およびvalue-basedです。
- 導入されたバージョン:
- 19
-
メソッドのサマリー
静的メソッド修飾子と型メソッド説明アドレス・レイアウトを「ターゲット・レイアウト」PREVIEW (場所セット)として間接参照するパス要素を返します。groupElement
(long index) グループ・レイアウト内の指定された索引を持つメンバー・レイアウトを選択するパス要素を返します。groupElement
(String name) グループ・レイアウト内で指定された名前のメンバー・レイアウトを選択するパス要素を返します。順序レイアウトで未指定の要素レイアウトを選択する「オープン・パス要素」を返します。sequenceElement
(long index) 順序レイアウトの指定位置にある要素レイアウトを選択するパス要素を返します。sequenceElement
(long start, long step) 順序レイアウト内の位置の「範囲」内の要素レイアウトを選択する「オープン・パス要素」を返します。
-
メソッドの詳細
-
groupElement
static MemoryLayout.PathElementPREVIEW groupElement(String name) グループ・レイアウト内で指定された名前のメンバー・レイアウトを選択するパス要素を返します。- 実装要件:
- 一致する名前を持つ複数のグループ要素が存在する場合、このメソッドによって返されるパス要素によって最初のものが選択されます。つまり、現在のパスからのオフセットが最も小さいグループ要素が選択されます。 このような場合は、
groupElement(long)
を使用することをお勧めします。 - パラメータ:
name
- 選択するメンバー・レイアウトの名前。- 戻り値:
- 指定された名前のグループ・メンバー・レイアウトを選択するパス要素。
-
groupElement
static MemoryLayout.PathElementPREVIEW groupElement(long index) グループ・レイアウト内の指定された索引を持つメンバー・レイアウトを選択するパス要素を返します。- パラメータ:
index
- 選択するメンバー・レイアウト要素のインデックス。- 戻り値:
- 指定された索引を持つグループ・メンバー・レイアウトを選択するパス要素。
- 例外:
IllegalArgumentException
-index < 0
の場合
-
sequenceElement
static MemoryLayout.PathElementPREVIEW sequenceElement(long index) 順序レイアウトの指定位置にある要素レイアウトを選択するパス要素を返します。- パラメータ:
index
- 選択する順序要素の索引。- 戻り値:
- 指定された索引を持つシーケンス要素のレイアウトを選択するパス要素。
- 例外:
IllegalArgumentException
-index < 0
の場合
-
sequenceElement
static MemoryLayout.PathElementPREVIEW sequenceElement(long start, long step) 順序レイアウト内の位置の「範囲」内の要素レイアウトを選択する「オープン・パス要素」を返します。 範囲は、開始索引(inclusive)S
とステップ係数(負の値を指定することもできます)F
のペアとして表されます。このレイアウトで選択された正確な順序要素は、索引
I
として表されます。C
が順序要素の数である場合、0 <= I < B
に従います。ここで、B
は次のように計算されます:F > 0
の場合、B = ceilDiv(C - S, F)
F < 0
の場合、B = ceilDiv(-(S + 1), -F)
- パラメータ:
start
- 選択する最初のシーケンス要素のインデックス。step
- サブ・シーケンス・シーケンス・シーケンス要素が選択されるステップ・ファクタです。- 戻り値:
- 指定された索引を持つシーケンス要素のレイアウトを選択するパス要素。
- 例外:
IllegalArgumentException
- ifstart < 0
,またはstep == 0
。
-
sequenceElement
static MemoryLayout.PathElementPREVIEW sequenceElement()順序レイアウトで未指定の要素レイアウトを選択する「オープン・パス要素」を返します。このレイアウトで選択された正確な順序要素は、索引
I
として表されます。C
がシーケンス要素数の場合、0 <= I < C
に従います。- 戻り値:
- 未指定の順序要素レイアウトを選択するパス要素。
-
dereferenceElement
static MemoryLayout.PathElementPREVIEW dereferenceElement()アドレス・レイアウトを「ターゲット・レイアウト」PREVIEW (場所セット)として間接参照するパス要素を返します。- 戻り値:
- アドレス・レイアウトを間接参照するパス要素。
-
PathElement
を使用できます。