ByteString.smali
.class public abstract Lcom/google/protobuf/ByteString;
.super Ljava/lang/Object;
# interfaces
.implements Ljava/lang/Iterable;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/google/protobuf/ByteString$CodedBuilder;,
Lcom/google/protobuf/ByteString$ByteIterator;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Ljava/lang/Iterable<",
"Ljava/lang/Byte;",
">;"
}
.end annotation
# static fields
.field public static final f:Lcom/google/protobuf/ByteString;
# direct methods
.method static constructor <clinit>()V
.registers 2
const-class v0, Lcom/google/protobuf/ByteString;
new-instance v0, Lcom/google/protobuf/LiteralByteString;
const/4 v1, 0x0
new-array v1, v1, [B
invoke-direct {v0, v1}, Lcom/google/protobuf/LiteralByteString;-><init>([B)V
sput-object v0, Lcom/google/protobuf/ByteString;->f:Lcom/google/protobuf/ByteString;
return-void
.end method
.method constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static c([B)Lcom/google/protobuf/ByteString;
.registers 3
array-length v0, p0
const/4 v1, 0x0
invoke-static {p0, v1, v0}, Lcom/google/protobuf/ByteString;->h([BII)Lcom/google/protobuf/ByteString;
move-result-object p0
return-object p0
.end method
.method public static h([BII)Lcom/google/protobuf/ByteString;
.registers 5
new-array v0, p2, [B
const/4 v1, 0x0
invoke-static {p0, p1, v0, v1, p2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
new-instance p0, Lcom/google/protobuf/LiteralByteString;
invoke-direct {p0, v0}, Lcom/google/protobuf/LiteralByteString;-><init>([B)V
return-object p0
.end method
.method public static i(Ljava/lang/String;)Lcom/google/protobuf/ByteString;
.registers 3
:try_start_0
new-instance v0, Lcom/google/protobuf/LiteralByteString;
const-string v1, "UTF-8"
invoke-virtual {p0, v1}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
move-result-object p0
invoke-direct {v0, p0}, Lcom/google/protobuf/LiteralByteString;-><init>([B)V
:try_end_b
.catch Ljava/io/UnsupportedEncodingException; {:try_start_0 .. :try_end_b} :catch_c
return-object v0
:catch_c
move-exception p0
new-instance v0, Ljava/lang/RuntimeException;
const-string v1, "UTF-8 not supported?"
invoke-direct {v0, v1, p0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v0
.end method
.method static p(I)Lcom/google/protobuf/ByteString$CodedBuilder;
.registers 3
new-instance v0, Lcom/google/protobuf/ByteString$CodedBuilder;
const/4 v1, 0x0
invoke-direct {v0, p0, v1}, Lcom/google/protobuf/ByteString$CodedBuilder;-><init>(ILcom/google/protobuf/ByteString$1;)V
return-object v0
.end method
# virtual methods
.method public abstract equals(Ljava/lang/Object;)Z
.end method
.method public abstract hashCode()I
.end method
.method public bridge synthetic iterator()Ljava/util/Iterator;
.registers 2
invoke-virtual {p0}, Lcom/google/protobuf/ByteString;->o()Lcom/google/protobuf/ByteString$ByteIterator;
move-result-object v0
return-object v0
.end method
.method public k([BIII)V
.registers 7
if-ltz p2, :cond_75
if-ltz p3, :cond_5e
if-ltz p4, :cond_47
add-int v0, p2, p4
invoke-virtual {p0}, Lcom/google/protobuf/ByteString;->size()I
move-result v1
if-gt v0, v1, :cond_30
add-int v0, p3, p4
array-length v1, p1
if-gt v0, v1, :cond_19
if-lez p4, :cond_18
invoke-virtual {p0, p1, p2, p3, p4}, Lcom/google/protobuf/ByteString;->l([BIII)V
:cond_18
return-void
:cond_19
new-instance p1, Ljava/lang/IndexOutOfBoundsException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string p3, "Target end offset < 0: "
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IndexOutOfBoundsException;-><init>(Ljava/lang/String;)V
throw p1
:cond_30
new-instance p1, Ljava/lang/IndexOutOfBoundsException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string p3, "Source end offset < 0: "
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IndexOutOfBoundsException;-><init>(Ljava/lang/String;)V
throw p1
:cond_47
new-instance p1, Ljava/lang/IndexOutOfBoundsException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string p3, "Length < 0: "
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, p4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IndexOutOfBoundsException;-><init>(Ljava/lang/String;)V
throw p1
:cond_5e
new-instance p1, Ljava/lang/IndexOutOfBoundsException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string p4, "Target offset < 0: "
invoke-virtual {p2, p4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IndexOutOfBoundsException;-><init>(Ljava/lang/String;)V
throw p1
:cond_75
new-instance p1, Ljava/lang/IndexOutOfBoundsException;
new-instance p3, Ljava/lang/StringBuilder;
invoke-direct {p3}, Ljava/lang/StringBuilder;-><init>()V
const-string p4, "Source offset < 0: "
invoke-virtual {p3, p4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IndexOutOfBoundsException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method protected abstract l([BIII)V
.end method
.method public abstract m()Z
.end method
.method public abstract o()Lcom/google/protobuf/ByteString$ByteIterator;
.end method
.method public abstract q()Ljava/io/InputStream;
.end method
.method public r()[B
.registers 4
invoke-virtual {p0}, Lcom/google/protobuf/ByteString;->size()I
move-result v0
new-array v1, v0, [B
const/4 v2, 0x0
invoke-virtual {p0, v1, v2, v2, v0}, Lcom/google/protobuf/ByteString;->l([BIII)V
return-object v1
.end method
.method public abstract size()I
.end method
.method public toString()Ljava/lang/String;
.registers 4
const/4 v0, 0x2
new-array v0, v0, [Ljava/lang/Object;
invoke-static {p0}, Ljava/lang/System;->identityHashCode(Ljava/lang/Object;)I
move-result v1
invoke-static {v1}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object v1
const/4 v2, 0x0
aput-object v1, v0, v2
invoke-virtual {p0}, Lcom/google/protobuf/ByteString;->size()I
move-result v1
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
const/4 v2, 0x1
aput-object v1, v0, v2
const-string v1, "<ByteString@%s size=%d>"
invoke-static {v1, v0}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public abstract u(Ljava/lang/String;)Ljava/lang/String;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/UnsupportedEncodingException;
}
.end annotation
.end method
.method public v()Ljava/lang/String;
.registers 4
:try_start_0
const-string v0, "UTF-8"
invoke-virtual {p0, v0}, Lcom/google/protobuf/ByteString;->u(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
:try_end_6
.catch Ljava/io/UnsupportedEncodingException; {:try_start_0 .. :try_end_6} :catch_7
return-object v0
:catch_7
move-exception v0
new-instance v1, Ljava/lang/RuntimeException;
const-string v2, "UTF-8 not supported?"
invoke-direct {v1, v2, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method