インタフェースjdk.incubator.foreign.MemoryLayoutの
使用
MemoryLayoutを使用するパッケージ
-
jdk.incubator.foreignでのMemoryLayoutの使用
MemoryLayoutを実装しているjdk.incubator.foreignのクラス修飾子と型クラス説明final classグループ・レイアウトは、複数の「メンバー・レイアウト」を結合するために使用します。final class順序レイアウト。final class値レイアウト。MemoryLayoutとして宣言されたjdk.incubator.foreignのフィールド修飾子と型フィールド説明static final MemoryLayoutCLinker.C_VA_LISTva_listC型のレイアウトstatic final MemoryLayoutMemoryLayouts.PAD_16サイズが2バイトのパディング・レイアウトの定数です。static final MemoryLayoutMemoryLayouts.PAD_32サイズが4バイトのパディング・レイアウトの定数です。static final MemoryLayoutMemoryLayouts.PAD_64サイズが8バイトのパディング・レイアウト定数。static final MemoryLayoutMemoryLayouts.PAD_8サイズが1バイトのパディング・レイアウトの定数です。型MemoryLayoutの型パラメータを持つjdk.incubator.foreignのメソッド修飾子と型メソッド説明static <T extends MemoryLayout>
TCLinker.asVarArg(T layout) 特殊な関数記述子で可変引数のレイアウトとして使用するのに適したメモリー・レイアウトを返します。修飾子と型メソッド説明SequenceLayout.elementLayout()この順序レイアウトに関連付けられた要素レイアウトを返します。default MemoryLayoutMemoryLayout.map(UnaryOperator<MemoryLayout> op, MemoryLayout.PathElement... elements) このレイアウトのルートにあるパスから選択したレイアウトが、指定された操作の適用結果で置き換えられるこのレイアウトの変換済コピーが作成されます。static MemoryLayoutMemoryLayout.paddingLayout(long size) 指定したサイズで新しいパディング・レイアウトを作成します。default MemoryLayoutMemoryLayout.select(MemoryLayout.PathElement... elements) このレイアウトのルートとなっているパスからレイアウトを選択します。MemoryLayout.withAttribute(String name, Constable value) このレイアウトと同じ属性と新しく指定された属性を持つ新しいメモリー・レイアウトを返します。MemoryLayout.withBitAlignment(long bitAlignment) 目的の位置合せ制約を機能する新しいレイアウトを作成します。必要なレイアウトnameが機能する新しいレイアウトを作成します。型MemoryLayoutの引数を持つ型を返すjdk.incubator.foreignのメソッド修飾子と型メソッド説明FunctionDescriptor.argumentLayouts()この関数に関連付けられた引数のレイアウトを返します。Optional<? extends DynamicConstantDesc<? extends MemoryLayout>>MemoryLayout.describeConstable()GroupLayout.memberLayouts()このグループに関連付けられたメンバー・レイアウトを返します。FunctionDescriptor.returnLayout()この関数に関連付けられた戻りレイアウトを返します。型MemoryLayoutのパラメータを持つjdk.incubator.foreignのメソッド修飾子と型メソッド説明default MemorySegmentSegmentAllocator.allocate(MemoryLayout layout) 指定されたレイアウトでメモリー・ブロックを割り当てます。default MemorySegmentSegmentAllocator.allocateArray(MemoryLayout elementLayout, long count) 指定された要素のレイアウトとサイズを持つ配列に対応するメモリーのブロックを割り当てます。static MemorySegmentMemorySegment.allocateNative(MemoryLayout layout, ResourceScope scope) 指定されたレイアウトおよびリソース・スコープを持つ、オフ・ヒープ・メモリーの新しく割り当てられたブロックをモデル化する、新しい限定されたネイティブ・メモリー・セグメントを作成します。MemorySegment.elements(MemoryLayout elementLayout) このセグメント内の分離スライス(指定したレイアウトのサイズと一致するサイズ)に対して連続したStreamを返します。static FunctionDescriptorFunctionDescriptor.of(MemoryLayout resLayout, MemoryLayout... argLayouts) 指定された戻り値と引数のレイアウトで関数記述子を作成します。static FunctionDescriptorFunctionDescriptor.ofVoid(MemoryLayout... argLayouts) 指定された引数のレイアウトで戻り値のない関数記述子を作成します。static SequenceLayoutMemoryLayout.sequenceLayout(long elementCount, MemoryLayout elementLayout) 指定された要素レイアウトおよび要素数を使用して、新規順序レイアウトを作成します。static SequenceLayoutMemoryLayout.sequenceLayout(MemoryLayout elementLayout) バインドなし要素カウントと指定された要素レイアウトを使用して、新しい順序レイアウトを作成します。voidCLinker.VaList.skip(MemoryLayout... layouts) 指定されたメモリー・レイアウトのいくつかの要素をスキップし、このvaリストの位置を進めます。MemorySegment.spliterator(MemoryLayout elementLayout) このメモリー・セグメントのスプリッテレータを返します。static GroupLayoutMemoryLayout.structLayout(MemoryLayout... elements) 指定したメンバー・レイアウトで新しい「構造体」グループ・レイアウトを作成します。static GroupLayoutMemoryLayout.unionLayout(MemoryLayout... elements) 指定したメンバー・レイアウトで新しいunionグループ・レイアウトを作成します。CLinker.VaList.vargAsAddress(MemoryLayout layout) 次の値をMemoryAddressとして読み取り、このvaリストの位置を進めます。doubleCLinker.VaList.vargAsDouble(MemoryLayout layout) 次の値をdoubleとして読み取り、このvaリストの位置を進めます。intCLinker.VaList.vargAsInt(MemoryLayout layout) 次の値をintとして読み取り、このvaリストの位置を進めます。longCLinker.VaList.vargAsLong(MemoryLayout layout) 次の値をlongとして読み取り、このvaリストの位置を進めます。CLinker.VaList.vargAsSegment(MemoryLayout layout, ResourceScope scope) 次の値をMemorySegmentとして読み取り、このvaリストの位置を進めます。CLinker.VaList.vargAsSegment(MemoryLayout layout, SegmentAllocator allocator) 次の値をMemorySegmentとして読み取り、このvaリストの位置を進めます。FunctionDescriptor.withAppendedArgumentLayouts(MemoryLayout... addedLayouts) 指定された引数レイアウトをこの関数記述子の引数レイアウト配列に追加して、新しい関数記述子を作成します。FunctionDescriptor.withReturnLayout(MemoryLayout newReturn) 指定されたメモリー・レイアウトを使用して、新しい関数記述子を新しい戻りレイアウトとして作成します。型MemoryLayoutの型引数を持つjdk.incubator.foreignのメソッド・パラメータ修飾子と型メソッド説明default MemoryLayoutMemoryLayout.map(UnaryOperator<MemoryLayout> op, MemoryLayout.PathElement... elements) このレイアウトのルートにあるパスから選択したレイアウトが、指定された操作の適用結果で置き換えられるこのレイアウトの変換済コピーが作成されます。