l.smali
.class final Lcom/google/protobuf/l;
.super Lcom/google/protobuf/CodedOutputStream;
.source "CodedOutputStream.java"
# instance fields
.field private final buffer:[B
.field private final limit:I
.field private position:I
# direct methods
.method constructor <init>([BI)V
.registers 8
.prologue
const/4 v4, 0x0
.line 1142
invoke-direct {p0, v4}, Lcom/google/protobuf/CodedOutputStream;-><init>(B)V
.line 1143
if-nez p1, :cond_e
.line 1144
new-instance v0, Ljava/lang/NullPointerException;
const-string v1, "buffer"
invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw v0
.line 1146
:cond_e
or-int/lit8 v0, p2, 0x0
array-length v1, p1
sub-int/2addr v1, p2
or-int/2addr v0, v1
if-gez v0, :cond_39
.line 1147
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Array range is invalid. Buffer.length=%d, offset=%d, length=%d"
const/4 v2, 0x3
new-array v2, v2, [Ljava/lang/Object;
array-length v3, p1
.line 1149
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
aput-object v3, v2, v4
const/4 v3, 0x1
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v2, v3
const/4 v3, 0x2
invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v2, v3
.line 1147
invoke-static {v1, v2}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.line 1151
:cond_39
iput-object p1, p0, Lcom/google/protobuf/l;->buffer:[B
.line 1153
iput v4, p0, Lcom/google/protobuf/l;->position:I
.line 1154
iput p2, p0, Lcom/google/protobuf/l;->limit:I
.line 1155
return-void
.end method
.method private write([BII)V
.registers 10
.prologue
.line 1405
:try_start_0
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
invoke-static {p1, p2, v0, v1, p3}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 1406
iget v0, p0, Lcom/google/protobuf/l;->position:I
add-int/2addr v0, p3
iput v0, p0, Lcom/google/protobuf/l;->position:I
:try_end_c
.catch Ljava/lang/IndexOutOfBoundsException; {:try_start_0 .. :try_end_c} :catch_d
.line 1410
return-void
.line 1407
:catch_d
move-exception v0
.line 1408
new-instance v1, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;
const-string v2, "Pos: %d, limit: %d, len: %d"
const/4 v3, 0x3
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
iget v5, p0, Lcom/google/protobuf/l;->position:I
.line 1409
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
const/4 v4, 0x1
iget v5, p0, Lcom/google/protobuf/l;->limit:I
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
const/4 v4, 0x2
invoke-static {p3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
invoke-static {v2, v3}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, v0}, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method
# virtual methods
.method public final Be()I
.registers 3
.prologue
.line 1476
iget v0, p0, Lcom/google/protobuf/l;->limit:I
iget v1, p0, Lcom/google/protobuf/l;->position:I
sub-int/2addr v0, v1
return v0
.end method
.method public final a(ILcom/google/protobuf/ByteString;)V
.registers 4
.prologue
.line 1206
const/4 v0, 0x2
invoke-virtual {p0, p1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1207
invoke-virtual {p0, p2}, Lcom/google/protobuf/l;->c(Lcom/google/protobuf/ByteString;)V
.line 1208
return-void
.end method
.method public final a(ILcom/google/protobuf/MessageLite;)V
.registers 4
.prologue
.line 1258
const/4 v0, 0x2
invoke-virtual {p0, p1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1259
invoke-virtual {p0, p2}, Lcom/google/protobuf/l;->a(Lcom/google/protobuf/MessageLite;)V
.line 1260
return-void
.end method
.method public final a(Lcom/google/protobuf/MessageLite;)V
.registers 3
.prologue
.line 1282
invoke-interface {p1}, Lcom/google/protobuf/MessageLite;->getSerializedSize()I
move-result v0
invoke-virtual {p0, v0}, Lcom/google/protobuf/l;->dy(I)V
.line 1283
invoke-interface {p1, p0}, Lcom/google/protobuf/MessageLite;->writeTo(Lcom/google/protobuf/CodedOutputStream;)V
.line 1284
return-void
.end method
.method public final ag(II)V
.registers 4
.prologue
.line 1170
const/4 v0, 0x0
invoke-virtual {p0, p1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1171
invoke-virtual {p0, p2}, Lcom/google/protobuf/l;->dy(I)V
.line 1172
return-void
.end method
.method public final an(II)V
.registers 4
.prologue
.line 1164
const/4 v0, 0x0
invoke-virtual {p0, p1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1165
invoke-virtual {p0, p2}, Lcom/google/protobuf/l;->dx(I)V
.line 1166
return-void
.end method
.method public final ao(II)V
.registers 4
.prologue
.line 1176
const/4 v0, 0x5
invoke-virtual {p0, p1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1177
invoke-virtual {p0, p2}, Lcom/google/protobuf/l;->dz(I)V
.line 1178
return-void
.end method
.method public final b(B)V
.registers 9
.prologue
const/4 v6, 0x1
.line 1289
:try_start_1
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
aput-byte p1, v0, v1
:try_end_b
.catch Ljava/lang/IndexOutOfBoundsException; {:try_start_1 .. :try_end_b} :catch_c
.line 1293
return-void
.line 1290
:catch_c
move-exception v0
.line 1291
new-instance v1, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;
const-string v2, "Pos: %d, limit: %d, len: %d"
const/4 v3, 0x3
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
iget v5, p0, Lcom/google/protobuf/l;->position:I
.line 1292
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
iget v4, p0, Lcom/google/protobuf/l;->limit:I
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v3, v6
const/4 v4, 0x2
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
invoke-static {v2, v3}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, v0}, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method
.method public final b(IJ)V
.registers 6
.prologue
.line 1182
const/4 v0, 0x0
invoke-virtual {p0, p1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1183
invoke-virtual {p0, p2, p3}, Lcom/google/protobuf/l;->v(J)V
.line 1184
return-void
.end method
.method public final b(ILcom/google/protobuf/ByteString;)V
.registers 6
.prologue
const/4 v2, 0x3
const/4 v1, 0x1
.line 1274
invoke-virtual {p0, v1, v2}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1275
const/4 v0, 0x2
invoke-virtual {p0, v0, p1}, Lcom/google/protobuf/l;->ag(II)V
.line 1276
invoke-virtual {p0, v2, p2}, Lcom/google/protobuf/l;->a(ILcom/google/protobuf/ByteString;)V
.line 1277
const/4 v0, 0x4
invoke-virtual {p0, v1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1278
return-void
.end method
.method public final b(ILcom/google/protobuf/MessageLite;)V
.registers 6
.prologue
const/4 v2, 0x3
const/4 v1, 0x1
.line 1265
invoke-virtual {p0, v1, v2}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1266
const/4 v0, 0x2
invoke-virtual {p0, v0, p1}, Lcom/google/protobuf/l;->ag(II)V
.line 1267
invoke-virtual {p0, v2, p2}, Lcom/google/protobuf/l;->a(ILcom/google/protobuf/MessageLite;)V
.line 1268
const/4 v0, 0x4
invoke-virtual {p0, v1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1269
return-void
.end method
.method public final c(Lcom/google/protobuf/ByteString;)V
.registers 3
.prologue
.line 1233
invoke-virtual {p1}, Lcom/google/protobuf/ByteString;->size()I
move-result v0
invoke-virtual {p0, v0}, Lcom/google/protobuf/l;->dy(I)V
.line 1234
invoke-virtual {p1, p0}, Lcom/google/protobuf/ByteString;->writeTo(Lcom/google/protobuf/d;)V
.line 1235
return-void
.end method
.method public final d(IJ)V
.registers 6
.prologue
.line 1188
const/4 v0, 0x1
invoke-virtual {p0, p1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1189
invoke-virtual {p0, p2, p3}, Lcom/google/protobuf/l;->w(J)V
.line 1190
return-void
.end method
.method public final d([BII)V
.registers 4
.prologue
.line 1415
invoke-direct {p0, p1, p2, p3}, Lcom/google/protobuf/l;->write([BII)V
.line 1416
return-void
.end method
.method public final dx(I)V
.registers 4
.prologue
.line 1298
if-ltz p1, :cond_6
.line 1299
invoke-virtual {p0, p1}, Lcom/google/protobuf/l;->dy(I)V
.line 1304
:goto_5
return-void
.line 1302
:cond_6
int-to-long v0, p1
invoke-virtual {p0, v0, v1}, Lcom/google/protobuf/l;->v(J)V
goto :goto_5
.end method
.method public final dy(I)V
.registers 9
.prologue
const/4 v6, 0x1
.line 3057
sget-boolean v0, Lcom/google/protobuf/CodedOutputStream;->bin:Z
.line 1308
if-eqz v0, :cond_4c
invoke-virtual {p0}, Lcom/google/protobuf/l;->Be()I
move-result v0
const/16 v1, 0xa
if-lt v0, v1, :cond_4c
.line 4057
sget-wide v0, Lcom/google/protobuf/CodedOutputStream;->bio:J
.line 1309
iget v2, p0, Lcom/google/protobuf/l;->position:I
int-to-long v2, v2
add-long/2addr v0, v2
.line 1311
:goto_13
and-int/lit8 v2, p1, -0x80
if-nez v2, :cond_24
.line 1312
iget-object v2, p0, Lcom/google/protobuf/l;->buffer:[B
int-to-byte v3, p1
invoke-static {v2, v0, v1, v3}, Lcom/google/protobuf/ey;->a([BJB)V
.line 1313
iget v0, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/protobuf/l;->position:I
.line 1326
:goto_23
return-void
.line 1316
:cond_24
iget-object v4, p0, Lcom/google/protobuf/l;->buffer:[B
const-wide/16 v2, 0x1
add-long/2addr v2, v0
and-int/lit8 v5, p1, 0x7f
or-int/lit16 v5, v5, 0x80
int-to-byte v5, v5
invoke-static {v4, v0, v1, v5}, Lcom/google/protobuf/ey;->a([BJB)V
.line 1317
iget v0, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/protobuf/l;->position:I
.line 1318
ushr-int/lit8 p1, p1, 0x7
move-wide v0, v2
goto :goto_13
.line 1328
:cond_3b
:try_start_3b
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
and-int/lit8 v2, p1, 0x7f
or-int/lit16 v2, v2, 0x80
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1329
ushr-int/lit8 p1, p1, 0x7
.line 1324
:cond_4c
and-int/lit8 v0, p1, -0x80
if-nez v0, :cond_3b
.line 1325
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
int-to-byte v2, p1
aput-byte v2, v0, v1
:try_end_5b
.catch Ljava/lang/IndexOutOfBoundsException; {:try_start_3b .. :try_end_5b} :catch_5c
goto :goto_23
.line 1332
:catch_5c
move-exception v0
.line 1333
new-instance v1, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;
const-string v2, "Pos: %d, limit: %d, len: %d"
const/4 v3, 0x3
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
iget v5, p0, Lcom/google/protobuf/l;->position:I
.line 1334
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
iget v4, p0, Lcom/google/protobuf/l;->limit:I
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v3, v6
const/4 v4, 0x2
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
invoke-static {v2, v3}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, v0}, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method
.method public final dz(I)V
.registers 9
.prologue
const/4 v6, 0x1
.line 1342
:try_start_1
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
int-to-byte v2, p1
aput-byte v2, v0, v1
.line 1343
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
shr-int/lit8 v2, p1, 0x8
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1344
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
shr-int/lit8 v2, p1, 0x10
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1345
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
shr-int/lit8 v2, p1, 0x18
aput-byte v2, v0, v1
:try_end_32
.catch Ljava/lang/IndexOutOfBoundsException; {:try_start_1 .. :try_end_32} :catch_33
.line 1349
return-void
.line 1346
:catch_33
move-exception v0
.line 1347
new-instance v1, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;
const-string v2, "Pos: %d, limit: %d, len: %d"
const/4 v3, 0x3
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
iget v5, p0, Lcom/google/protobuf/l;->position:I
.line 1348
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
iget v4, p0, Lcom/google/protobuf/l;->limit:I
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v3, v6
const/4 v4, 0x2
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
invoke-static {v2, v3}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, v0}, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method
.method public final flush()V
.registers 1
.prologue
.line 1472
return-void
.end method
.method public final ft(Ljava/lang/String;)V
.registers 7
.prologue
.line 1437
iget v1, p0, Lcom/google/protobuf/l;->position:I
.line 1441
:try_start_2
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
mul-int/lit8 v0, v0, 0x3
.line 1442
invoke-static {v0}, Lcom/google/protobuf/l;->dD(I)I
move-result v0
.line 1443
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v2
invoke-static {v2}, Lcom/google/protobuf/l;->dD(I)I
move-result v2
.line 1444
if-ne v2, v0, :cond_32
.line 1445
add-int v0, v1, v2
iput v0, p0, Lcom/google/protobuf/l;->position:I
.line 1446
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v3, p0, Lcom/google/protobuf/l;->position:I
invoke-virtual {p0}, Lcom/google/protobuf/l;->Be()I
move-result v4
invoke-static {p1, v0, v3, v4}, Lcom/google/protobuf/Utf8;->a(Ljava/lang/CharSequence;[BII)I
move-result v0
.line 1449
iput v1, p0, Lcom/google/protobuf/l;->position:I
.line 1450
sub-int v3, v0, v1
sub-int v2, v3, v2
.line 1451
invoke-virtual {p0, v2}, Lcom/google/protobuf/l;->dy(I)V
.line 1452
iput v0, p0, Lcom/google/protobuf/l;->position:I
.line 1466
:goto_31
return-void
.line 1454
:cond_32
invoke-static {p1}, Lcom/google/protobuf/Utf8;->r(Ljava/lang/CharSequence;)I
move-result v0
.line 1455
invoke-virtual {p0, v0}, Lcom/google/protobuf/l;->dy(I)V
.line 1456
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v2, p0, Lcom/google/protobuf/l;->position:I
invoke-virtual {p0}, Lcom/google/protobuf/l;->Be()I
move-result v3
invoke-static {p1, v0, v2, v3}, Lcom/google/protobuf/Utf8;->a(Ljava/lang/CharSequence;[BII)I
move-result v0
iput v0, p0, Lcom/google/protobuf/l;->position:I
:try_end_47
.catch Lcom/google/protobuf/Utf8$UnpairedSurrogateException; {:try_start_2 .. :try_end_47} :catch_48
.catch Ljava/lang/IndexOutOfBoundsException; {:try_start_2 .. :try_end_47} :catch_4f
goto :goto_31
.line 1458
:catch_48
move-exception v0
.line 1460
iput v1, p0, Lcom/google/protobuf/l;->position:I
.line 1463
invoke-virtual {p0, p1, v0}, Lcom/google/protobuf/l;->a(Ljava/lang/String;Lcom/google/protobuf/Utf8$UnpairedSurrogateException;)V
goto :goto_31
.line 1464
:catch_4f
move-exception v0
.line 1465
new-instance v1, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;
invoke-direct {v1, v0}, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;-><init>(Ljava/lang/Throwable;)V
throw v1
.end method
.method public final j(IZ)V
.registers 4
.prologue
const/4 v0, 0x0
.line 1194
invoke-virtual {p0, p1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1195
if-eqz p2, :cond_7
const/4 v0, 0x1
:cond_7
int-to-byte v0, v0
invoke-virtual {p0, v0}, Lcom/google/protobuf/l;->b(B)V
.line 1196
return-void
.end method
.method public final k([BI)V
.registers 4
.prologue
.line 1240
invoke-virtual {p0, p2}, Lcom/google/protobuf/l;->dy(I)V
.line 1241
const/4 v0, 0x0
invoke-direct {p0, p1, v0, p2}, Lcom/google/protobuf/l;->write([BII)V
.line 1242
return-void
.end method
.method public final m(ILjava/lang/String;)V
.registers 4
.prologue
.line 1200
const/4 v0, 0x2
invoke-virtual {p0, p1, v0}, Lcom/google/protobuf/l;->writeTag(II)V
.line 1201
invoke-virtual {p0, p2}, Lcom/google/protobuf/l;->ft(Ljava/lang/String;)V
.line 1202
return-void
.end method
.method public final v(J)V
.registers 16
.prologue
const-wide/16 v10, 0x0
const-wide/16 v8, -0x80
const/4 v7, 0x7
const/4 v6, 0x1
.line 5057
sget-boolean v0, Lcom/google/protobuf/CodedOutputStream;->bin:Z
.line 1354
if-eqz v0, :cond_54
invoke-virtual {p0}, Lcom/google/protobuf/l;->Be()I
move-result v0
const/16 v1, 0xa
if-lt v0, v1, :cond_54
.line 6057
sget-wide v0, Lcom/google/protobuf/CodedOutputStream;->bio:J
.line 1355
iget v2, p0, Lcom/google/protobuf/l;->position:I
int-to-long v2, v2
add-long/2addr v0, v2
.line 1357
:goto_18
and-long v2, p1, v8
cmp-long v2, v2, v10
if-nez v2, :cond_2c
.line 1358
iget-object v2, p0, Lcom/google/protobuf/l;->buffer:[B
long-to-int v3, p1
int-to-byte v3, v3
invoke-static {v2, v0, v1, v3}, Lcom/google/protobuf/ey;->a([BJB)V
.line 1359
iget v0, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/protobuf/l;->position:I
.line 1372
:goto_2b
return-void
.line 1362
:cond_2c
iget-object v4, p0, Lcom/google/protobuf/l;->buffer:[B
const-wide/16 v2, 0x1
add-long/2addr v2, v0
long-to-int v5, p1
and-int/lit8 v5, v5, 0x7f
or-int/lit16 v5, v5, 0x80
int-to-byte v5, v5
invoke-static {v4, v0, v1, v5}, Lcom/google/protobuf/ey;->a([BJB)V
.line 1363
iget v0, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/protobuf/l;->position:I
.line 1364
ushr-long/2addr p1, v7
move-wide v0, v2
goto :goto_18
.line 1374
:cond_43
:try_start_43
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
long-to-int v2, p1
and-int/lit8 v2, v2, 0x7f
or-int/lit16 v2, v2, 0x80
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1375
ushr-long/2addr p1, v7
.line 1370
:cond_54
and-long v0, p1, v8
cmp-long v0, v0, v10
if-nez v0, :cond_43
.line 1371
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
long-to-int v2, p1
int-to-byte v2, v2
aput-byte v2, v0, v1
:try_end_66
.catch Ljava/lang/IndexOutOfBoundsException; {:try_start_43 .. :try_end_66} :catch_67
goto :goto_2b
.line 1378
:catch_67
move-exception v0
.line 1379
new-instance v1, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;
const-string v2, "Pos: %d, limit: %d, len: %d"
const/4 v3, 0x3
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
iget v5, p0, Lcom/google/protobuf/l;->position:I
.line 1380
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
iget v4, p0, Lcom/google/protobuf/l;->limit:I
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v3, v6
const/4 v4, 0x2
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
invoke-static {v2, v3}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, v0}, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method
.method public final w(J)V
.registers 10
.prologue
const/4 v6, 0x1
.line 1388
:try_start_1
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
long-to-int v2, p1
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1389
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
const/16 v2, 0x8
shr-long v2, p1, v2
long-to-int v2, v2
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1390
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
const/16 v2, 0x10
shr-long v2, p1, v2
long-to-int v2, v2
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1391
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
const/16 v2, 0x18
shr-long v2, p1, v2
long-to-int v2, v2
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1392
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
const/16 v2, 0x20
shr-long v2, p1, v2
long-to-int v2, v2
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1393
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
const/16 v2, 0x28
shr-long v2, p1, v2
long-to-int v2, v2
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1394
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
const/16 v2, 0x30
shr-long v2, p1, v2
long-to-int v2, v2
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 1395
iget-object v0, p0, Lcom/google/protobuf/l;->buffer:[B
iget v1, p0, Lcom/google/protobuf/l;->position:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/protobuf/l;->position:I
const/16 v2, 0x38
shr-long v2, p1, v2
long-to-int v2, v2
int-to-byte v2, v2
aput-byte v2, v0, v1
:try_end_7d
.catch Ljava/lang/IndexOutOfBoundsException; {:try_start_1 .. :try_end_7d} :catch_7e
.line 1399
return-void
.line 1396
:catch_7e
move-exception v0
.line 1397
new-instance v1, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;
const-string v2, "Pos: %d, limit: %d, len: %d"
const/4 v3, 0x3
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
iget v5, p0, Lcom/google/protobuf/l;->position:I
.line 1398
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
iget v4, p0, Lcom/google/protobuf/l;->limit:I
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v3, v6
const/4 v4, 0x2
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v3, v4
invoke-static {v2, v3}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, v0}, Lcom/google/protobuf/CodedOutputStream$OutOfSpaceException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method
.method public final writeTag(II)V
.registers 4
.prologue
.line 1159
.line 2072
shl-int/lit8 v0, p1, 0x3
or-int/2addr v0, p2
.line 1159
invoke-virtual {p0, v0}, Lcom/google/protobuf/l;->dy(I)V
.line 1160
return-void
.end method