モジュール jdk.incubator.foreign
パッケージ jdk.incubator.foreign

クラスMemoryLayouts

java.lang.Object
jdk.incubator.foreign.MemoryLayouts

public final class MemoryLayouts extends Object
このクラスは、便利なレイアウト定数を定義します。 このクラスで定義されている定数の一部は、サイズとバイト順序の(BITS_64_BEを参照してください)で明示的に指定されるため、明示的かつ確実にメモリー・セグメントの内容を指定する際に使用できます。 他の定数によって、暗黙的なバイト順仮定(JAVA_INTを参照してください)が実現されます。たとえば、これらの定数により、ByteBufferなどの他の直列化中心のAPIを容易に使用できます。
  • フィールド詳細

    • BITS_8_LE

      public static final ValueLayout BITS_8_LE
      サイズ1バイト、バイト順序がByteOrder.LITTLE_ENDIANに設定された値レイアウト定数です。
    • BITS_16_LE

      public static final ValueLayout BITS_16_LE
      サイズが2バイトで、バイト順序がByteOrder.LITTLE_ENDIANに設定された値レイアウトの定数です。
    • BITS_32_LE

      public static final ValueLayout BITS_32_LE
      4バイトのサイズ、バイト順序がByteOrder.LITTLE_ENDIANに設定された値レイアウトの定数です。
    • BITS_64_LE

      public static final ValueLayout BITS_64_LE
      8バイトのサイズの値レイアウト定数で、バイト順はByteOrder.LITTLE_ENDIANに設定されます。
    • BITS_8_BE

      public static final ValueLayout BITS_8_BE
      サイズ1バイト、バイト順序がByteOrder.BIG_ENDIANに設定された値レイアウト定数です。
    • BITS_16_BE

      public static final ValueLayout BITS_16_BE
      サイズが2バイトで、バイト順序がByteOrder.BIG_ENDIANに設定された値レイアウトの定数です。
    • BITS_32_BE

      public static final ValueLayout BITS_32_BE
      4バイトのサイズ、バイト順序がByteOrder.BIG_ENDIANに設定された値レイアウトの定数です。
    • BITS_64_BE

      public static final ValueLayout BITS_64_BE
      8バイトのサイズの値レイアウト定数で、バイト順はByteOrder.BIG_ENDIANに設定されます。
    • PAD_8

      public static final MemoryLayout PAD_8
      サイズが1バイトのパディング・レイアウトの定数です。
    • PAD_16

      public static final MemoryLayout PAD_16
      サイズが2バイトのパディング・レイアウトの定数です。
    • PAD_32

      public static final MemoryLayout PAD_32
      サイズが4バイトのパディング・レイアウトの定数です。
    • PAD_64

      public static final MemoryLayout PAD_64
      サイズが8バイトのパディング・レイアウト定数。
    • ADDRESS

      public static final ValueLayout ADDRESS
      マシン・アドレス(e.g. size_t)とサイズが同じで、バイト・オーダーがByteOrder.nativeOrder()に設定されている値レイアウト定数。
    • JAVA_BYTE

      public static final ValueLayout JAVA_BYTE
      サイズがJava byteのものと同じで、バイト順序がByteOrder.nativeOrder()に設定された値レイアウト定数です。
    • JAVA_CHAR

      public static final ValueLayout JAVA_CHAR
      サイズがJava charのものと同じで、バイト順序がByteOrder.nativeOrder()に設定された値レイアウト定数です。
    • JAVA_SHORT

      public static final ValueLayout JAVA_SHORT
      サイズがJava shortのものと同じで、バイト順序がByteOrder.nativeOrder()に設定された値レイアウト定数です。
    • JAVA_INT

      public static final ValueLayout JAVA_INT
      サイズがJava intのものと同じで、バイト順序がByteOrder.nativeOrder()に設定された値レイアウト定数です。
    • JAVA_LONG

      public static final ValueLayout JAVA_LONG
      サイズがJava longのものと同じで、バイト順序がByteOrder.nativeOrder()に設定された値レイアウト定数です。 このレイアウトの位置合せ(MemoryLayout.byteAlignment()はプラットフォームによって異なるため、次の不変条件があります:
      
          MemoryLayouts.JAVA_LONG.byteAlignment() == MemoryLayouts.ADDRESS.byteSize();
       
    • JAVA_FLOAT

      public static final ValueLayout JAVA_FLOAT
      サイズがJava floatのものと同じで、バイト順序がByteOrder.nativeOrder()に設定された値レイアウト定数です。
    • JAVA_DOUBLE

      public static final ValueLayout JAVA_DOUBLE
      サイズがJava doubleのものと同じで、バイト順序がByteOrder.nativeOrder()に設定された値レイアウト定数です。 このレイアウトの位置合せ(MemoryLayout.byteAlignment()はプラットフォームによって異なるため、次の不変条件があります:
      
          MemoryLayouts.JAVA_DOUBLE.byteAlignment() == MemoryLayouts.ADDRESS.byteSize();