UnsafeUtil$MemoryAccessor.smali
.class abstract Lcom/google/protobuf/UnsafeUtil$MemoryAccessor;
.super Ljava/lang/Object;
.source "UnsafeUtil.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/protobuf/UnsafeUtil;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x40a
name = "MemoryAccessor"
.end annotation
# instance fields
.field unsafe:Lsun/misc/Unsafe;
# direct methods
.method constructor <init>(Lsun/misc/Unsafe;)V
.registers 2
.prologue
.line 345
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 346
iput-object p1, p0, Lcom/google/protobuf/UnsafeUtil$MemoryAccessor;->unsafe:Lsun/misc/Unsafe;
.line 347
return-void
.end method
# virtual methods
.method public final arrayBaseOffset(Ljava/lang/Class;)I
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class",
"<*>;)I"
}
.end annotation
.prologue
.line 394
iget-object v0, p0, Lcom/google/protobuf/UnsafeUtil$MemoryAccessor;->unsafe:Lsun/misc/Unsafe;
invoke-virtual {v0, p1}, Lsun/misc/Unsafe;->arrayBaseOffset(Ljava/lang/Class;)I
move-result v0
return v0
.end method
.method public abstract copyMemory(JJJ)V
.end method
.method public abstract copyMemory(Ljava/lang/Object;JLjava/lang/Object;JJ)V
.end method
.method public abstract getBoolean(Ljava/lang/Object;J)Z
.end method
.method public abstract getByte(J)B
.end method
.method public abstract getByte(Ljava/lang/Object;J)B
.end method
.method public abstract getDouble(Ljava/lang/Object;J)D
.end method
.method public abstract getFloat(Ljava/lang/Object;J)F
.end method
.method public abstract getInt(J)I
.end method
.method public final getInt(Ljava/lang/Object;J)I
.registers 6
.prologue
.line 358
iget-object v0, p0, Lcom/google/protobuf/UnsafeUtil$MemoryAccessor;->unsafe:Lsun/misc/Unsafe;
invoke-virtual {v0, p1, p2, p3}, Lsun/misc/Unsafe;->getInt(Ljava/lang/Object;J)I
move-result v0
return v0
.end method
.method public abstract getLong(J)J
.end method
.method public final getLong(Ljava/lang/Object;J)J
.registers 6
.prologue
.line 366
iget-object v0, p0, Lcom/google/protobuf/UnsafeUtil$MemoryAccessor;->unsafe:Lsun/misc/Unsafe;
invoke-virtual {v0, p1, p2, p3}, Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J
move-result-wide v0
return-wide v0
.end method
.method public final getObject(Ljava/lang/Object;J)Ljava/lang/Object;
.registers 6
.prologue
.line 386
iget-object v0, p0, Lcom/google/protobuf/UnsafeUtil$MemoryAccessor;->unsafe:Lsun/misc/Unsafe;
invoke-virtual {v0, p1, p2, p3}, Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object;
move-result-object v0
return-object v0
.end method
.method public abstract getStaticObject(Ljava/lang/reflect/Field;)Ljava/lang/Object;
.end method
.method public final objectFieldOffset(Ljava/lang/reflect/Field;)J
.registers 4
.prologue
.line 350
iget-object v0, p0, Lcom/google/protobuf/UnsafeUtil$MemoryAccessor;->unsafe:Lsun/misc/Unsafe;
invoke-virtual {v0, p1}, Lsun/misc/Unsafe;->objectFieldOffset(Ljava/lang/reflect/Field;)J
move-result-wide v0
return-wide v0
.end method
.method public abstract putBoolean(Ljava/lang/Object;JZ)V
.end method
.method public abstract putByte(JB)V
.end method
.method public abstract putByte(Ljava/lang/Object;JB)V
.end method
.method public abstract putDouble(Ljava/lang/Object;JD)V
.end method
.method public abstract putFloat(Ljava/lang/Object;JF)V
.end method
.method public abstract putInt(JI)V
.end method
.method public final putInt(Ljava/lang/Object;JI)V
.registers 7
.prologue
.line 362
iget-object v0, p0, Lcom/google/protobuf/UnsafeUtil$MemoryAccessor;->unsafe:Lsun/misc/Unsafe;
invoke-virtual {v0, p1, p2, p3, p4}, Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V
.line 363
return-void
.end method
.method public abstract putLong(JJ)V
.end method
.method public final putLong(Ljava/lang/Object;JJ)V
.registers 12
.prologue
.line 370
iget-object v0, p0, Lcom/google/protobuf/UnsafeUtil$MemoryAccessor;->unsafe:Lsun/misc/Unsafe;
move-object v1, p1
move-wide v2, p2
move-wide v4, p4
invoke-virtual/range {v0 .. v5}, Lsun/misc/Unsafe;->putLong(Ljava/lang/Object;JJ)V
.line 371
return-void
.end method
.method public final putObject(Ljava/lang/Object;JLjava/lang/Object;)V
.registers 7
.prologue
.line 390
iget-object v0, p0, Lcom/google/protobuf/UnsafeUtil$MemoryAccessor;->unsafe:Lsun/misc/Unsafe;
invoke-virtual {v0, p1, p2, p3, p4}, Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V
.line 391
return-void
.end method