Class UnsafeWrapper

java.lang.Object
dev.pfaff.unfettered.UnsafeWrapper

public final class UnsafeWrapper extends Object
  • Field Details

    • MH_objectFieldOffsetF

      public static final MethodHandle MH_objectFieldOffsetF
    • MH_staticFieldOffsetF

      public static final MethodHandle MH_staticFieldOffsetF
    • MH_objectFieldOffset

      public static final MethodHandle MH_objectFieldOffset
    • MH_getIntP

      public static final MethodHandle MH_getIntP
    • MH_getIntBO

      public static final MethodHandle MH_getIntBO
    • MH_putIntBO

      public static final MethodHandle MH_putIntBO
    • MH_getLongP

      public static final MethodHandle MH_getLongP
    • MH_getLongBO

      public static final MethodHandle MH_getLongBO
    • MH_putLongBO

      public static final MethodHandle MH_putLongBO
    • MH_getFloatP

      public static final MethodHandle MH_getFloatP
    • MH_getFloatBO

      public static final MethodHandle MH_getFloatBO
    • MH_putFloatBO

      public static final MethodHandle MH_putFloatBO
    • MH_getReferenceBO

      public static final MethodHandle MH_getReferenceBO
    • MH_putReferenceBO

      public static final MethodHandle MH_putReferenceBO
    • MH_allocateUninitializedArray

      public static final MethodHandle MH_allocateUninitializedArray
    • ADDRESS_SIZE

      public static final int ADDRESS_SIZE
    • ARRAY_OBJECT_INDEX_SCALE

      public static final int ARRAY_OBJECT_INDEX_SCALE
    • ARRAY_OBJECT_BASE_OFFSET

      public static final int ARRAY_OBJECT_BASE_OFFSET
  • Constructor Details

    • UnsafeWrapper

      public UnsafeWrapper()
  • Method Details

    • objectFieldOffset

      public static long objectFieldOffset(Field field)
    • objectFieldOffset

      public static long objectFieldOffset(Class clazz, String field)
    • staticFieldOffset

      public static long staticFieldOffset(Field field)
    • getInt

      public static int getInt(long ptr)
    • getLong

      public static long getLong(long ptr)
    • getFloat

      public static float getFloat(long ptr)
    • getInt

      public static int getInt(Object base, long offset)
    • getLong

      public static long getLong(Object base, long offset)
    • getFloat

      public static float getFloat(Object base, long offset)
    • getReference

      public static Object getReference(Object base, int offset)
    • putInt

      public static void putInt(Object base, long offset, int i)
    • putLong

      public static void putLong(Object base, long offset, long value)
    • putFloat

      public static void putFloat(Object base, long offset, float value)
    • putReference

      public static void putReference(Object base, long offset, Object value)
    • allocateUninitializedArray

      public static Object allocateUninitializedArray(Class<?> component, int length)