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
private abstract static class UnsafeUtil.MemoryAccessor extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description (package private) sun.misc.Unsafe
unsafe
-
Constructor Summary
Constructors Constructor Description MemoryAccessor(sun.misc.Unsafe unsafe)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description int
arrayBaseOffset(java.lang.Class<?> clazz)
int
arrayIndexScale(java.lang.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(java.lang.Object target, long offset)
abstract byte
getByte(long address)
abstract byte
getByte(java.lang.Object target, long offset)
abstract double
getDouble(java.lang.Object target, long offset)
abstract float
getFloat(java.lang.Object target, long offset)
abstract int
getInt(long address)
int
getInt(java.lang.Object target, long offset)
abstract long
getLong(long address)
long
getLong(java.lang.Object target, long offset)
java.lang.Object
getObject(java.lang.Object target, long offset)
abstract java.lang.Object
getStaticObject(java.lang.reflect.Field field)
long
objectFieldOffset(java.lang.reflect.Field field)
abstract void
putBoolean(java.lang.Object target, long offset, boolean value)
abstract void
putByte(long address, byte value)
abstract void
putByte(java.lang.Object target, long offset, byte value)
abstract void
putDouble(java.lang.Object target, long offset, double value)
abstract void
putFloat(java.lang.Object target, long offset, float value)
abstract void
putInt(long address, int value)
void
putInt(java.lang.Object target, long offset, int value)
abstract void
putLong(long address, long value)
void
putLong(java.lang.Object target, long offset, long value)
void
putObject(java.lang.Object target, long offset, java.lang.Object value)
-
-
-
Method Detail
-
objectFieldOffset
public final long objectFieldOffset(java.lang.reflect.Field field)
-
getByte
public abstract byte getByte(java.lang.Object target, long offset)
-
putByte
public abstract void putByte(java.lang.Object target, long offset, byte value)
-
getInt
public final int getInt(java.lang.Object target, long offset)
-
putInt
public final void putInt(java.lang.Object target, long offset, int value)
-
getLong
public final long getLong(java.lang.Object target, long offset)
-
putLong
public final void putLong(java.lang.Object target, long offset, long value)
-
getBoolean
public abstract boolean getBoolean(java.lang.Object target, long offset)
-
putBoolean
public abstract void putBoolean(java.lang.Object target, long offset, boolean value)
-
getFloat
public abstract float getFloat(java.lang.Object target, long offset)
-
putFloat
public abstract void putFloat(java.lang.Object target, long offset, float value)
-
getDouble
public abstract double getDouble(java.lang.Object target, long offset)
-
putDouble
public abstract void putDouble(java.lang.Object target, long offset, double value)
-
getObject
public final java.lang.Object getObject(java.lang.Object target, long offset)
-
putObject
public final void putObject(java.lang.Object target, long offset, java.lang.Object value)
-
arrayBaseOffset
public final int arrayBaseOffset(java.lang.Class<?> clazz)
-
arrayIndexScale
public final int arrayIndexScale(java.lang.Class<?> clazz)
-
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)
-
getStaticObject
public abstract java.lang.Object getStaticObject(java.lang.reflect.Field field)
-
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)
-
-