Class UnsafeWrapper
java.lang.Object
io.github.toolfactory.jvm.function.catalog.UnsafeWrapper
- Direct Known Subclasses:
UnsafeWrapper.ForJava7
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected static MethodHandleprotected ThrowExceptionFunctionprotected static Objectprotected static Class<?> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionallocateInstance(Class<?> cls) get()booleangetBoolean(Object target, long fieldOffset) booleangetBooleanVolatile(Object target, long fieldOffset) bytebytegetByteVolatile(Object target, long fieldOffset) charchargetCharVolatile(Object target, long fieldOffset) doubledoublegetDoubleVolatile(Object target, long fieldOffset) floatfloatgetFloatVolatile(Object target, long fieldOffset) intintgetIntVolatile(Object target, long fieldOffset) longlonggetLongVolatile(Object target, long fieldOffset) getObjectVolatile(Object target, long fieldOffset) shortshortgetShortVolatile(Object target, long fieldOffset) Class<?>protected voidinit(Object unsafeObject, MethodHandles.Lookup lookup) protected booleanlongobjectFieldOffset(Field field) voidputBoolean(Object target, long fieldOffset, boolean value) voidputBooleanVolatile(Object target, long fieldOffset, boolean value) voidvoidputByteVolatile(Object target, long fieldOffset, byte value) voidvoidputCharVolatile(Object target, long fieldOffset, char value) voidvoidputDoubleVolatile(Object target, long fieldOffset, double value) voidvoidputFloatVolatile(Object target, long fieldOffset, float value) voidvoidputIntVolatile(Object target, long fieldOffset, int value) voidvoidputLongVolatile(Object target, long fieldOffset, long value) voidvoidputObjectVolatile(Object target, long fieldOffset, Object value) voidvoidputShortVolatile(Object target, long fieldOffset, short value) longstaticFieldOffset(Field field)
-
Field Details
-
throwExceptionFunction
-
unsafe
-
unsafeClass
-
allocateInstance
-
objectFieldOffset
-
staticFieldOffset
-
getObject
-
getObjectVolatile
-
getShort
-
getShortVolatile
-
getInt
-
getIntVolatile
-
getLong
-
getLongVolatile
-
getFloat
-
getFloatVolatile
-
getDouble
-
getDoubleVolatile
-
getBoolean
-
getBooleanVolatile
-
getByte
-
getByteVolatile
-
getChar
-
getCharVolatile
-
putObject
-
putObjectVolatile
-
putShort
-
putShortVolatile
-
putInt
-
putIntVolatile
-
putLong
-
putLongVolatile
-
putFloat
-
putFloatVolatile
-
putDouble
-
putDoubleVolatile
-
putBoolean
-
putBooleanVolatile
-
putByte
-
putByteVolatile
-
putChar
-
putCharVolatile
-
-
Constructor Details
-
UnsafeWrapper
public UnsafeWrapper()
-
-
Method Details
-
init
- Throws:
Throwable
-
init
protected void init(Object unsafeObject, MethodHandles.Lookup lookup) throws NoSuchMethodException, IllegalAccessException -
get
-
getUnsafeClass
-
allocateInstance
-
objectFieldOffset
-
staticFieldOffset
-
getObject
-
getObjectVolatile
-
getShort
-
getShortVolatile
-
getInt
-
getIntVolatile
-
getLong
-
getLongVolatile
-
getFloat
-
getFloatVolatile
-
getDouble
-
getDoubleVolatile
-
getBoolean
-
getBooleanVolatile
-
getByte
-
getByteVolatile
-
getChar
-
getCharVolatile
-
putObject
-
putObjectVolatile
-
putShort
-
putShortVolatile
-
putInt
-
putIntVolatile
-
putLong
-
putLongVolatile
-
putFloat
-
putFloatVolatile
-
putDouble
-
putDoubleVolatile
-
putBoolean
-
putBooleanVolatile
-
putByte
-
putByteVolatile
-
putChar
-
putCharVolatile
-