Package com.google.protobuf
Class UnsafeUtil.MemoryAccessor
java.lang.Object
com.google.protobuf.UnsafeUtil.MemoryAccessor
- Direct Known Subclasses:
UnsafeUtil.Android32MemoryAccessor
,UnsafeUtil.Android64MemoryAccessor
,UnsafeUtil.JvmMemoryAccessor
- Enclosing class:
UnsafeUtil
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal int
arrayBaseOffset
(Class<?> clazz) final int
arrayIndexScale
(Class<?> clazz) abstract void
copyMemory
(byte[] src, long srcIndex, long targetOffset, long length) abstract void
copyMemory
(long srcOffset, byte[] target, long targetIndex, long length) abstract boolean
getBoolean
(Object target, long offset) abstract byte
getByte
(long address) abstract byte
abstract double
abstract float
abstract int
getInt
(long address) final int
abstract long
getLong
(long address) final long
final Object
abstract Object
getStaticObject
(Field field) final long
objectFieldOffset
(Field field) abstract void
putBoolean
(Object target, long offset, boolean value) abstract void
putByte
(long address, byte value) abstract void
abstract void
abstract void
abstract void
putInt
(long address, int value) final void
abstract void
putLong
(long address, long value) final void
final void
boolean
boolean
-
Field Details
-
unsafe
sun.misc.Unsafe unsafe
-
-
Constructor Details
-
MemoryAccessor
MemoryAccessor(sun.misc.Unsafe unsafe)
-
-
Method Details
-
objectFieldOffset
-
arrayBaseOffset
-
arrayIndexScale
-
getStaticObject
-
supportsUnsafeArrayOperations
public boolean supportsUnsafeArrayOperations() -
getByte
-
putByte
-
getInt
-
putInt
-
getLong
-
putLong
-
getBoolean
-
putBoolean
-
getFloat
-
putFloat
-
getDouble
-
putDouble
-
getObject
-
putObject
-
supportsUnsafeByteBufferOperations
public boolean supportsUnsafeByteBufferOperations() -
getByte
public abstract byte getByte(long address) -
putByte
public abstract void putByte(long address, byte value) -
getInt
public abstract int getInt(long address) -
putInt
public abstract void putInt(long address, int value) -
getLong
public abstract long getLong(long address) -
putLong
public abstract void putLong(long address, long value) -
copyMemory
public abstract void copyMemory(long srcOffset, byte[] target, long targetIndex, long length) -
copyMemory
public abstract void copyMemory(byte[] src, long srcIndex, long targetOffset, long length)
-