class java.io.ObjectInputStream$PeekInputStream extends java.io.InputStream
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: java.io.ObjectInputStream$PeekInputStream
super_class: java.io.InputStream
{
private final java.io.InputStream in;
descriptor: Ljava/io/InputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int peekb;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private long totalBytesRead;
descriptor: J
flags: (0x0002) ACC_PRIVATE
void <init>(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.io.InputStream.<init>:()V
1: aload 0
iconst_m1
putfield java.io.ObjectInputStream$PeekInputStream.peekb:I
2: aload 0
lconst_0
putfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
3: aload 0
aload 1
putfield java.io.ObjectInputStream$PeekInputStream.in:Ljava/io/InputStream;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/io/ObjectInputStream$PeekInputStream;
0 5 1 in Ljava/io/InputStream;
MethodParameters:
Name Flags
in
int peek();
descriptor: ()I
flags: (0x0000)
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.peekb:I
iflt 2
1: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.peekb:I
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield java.io.ObjectInputStream$PeekInputStream.in:Ljava/io/InputStream;
invokevirtual java.io.InputStream.read:()I
putfield java.io.ObjectInputStream$PeekInputStream.peekb:I
3: aload 0
dup
getfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
aload 0
getfield java.io.ObjectInputStream$PeekInputStream.peekb:I
iflt 4
iconst_1
goto 5
StackMap locals: java.io.ObjectInputStream$PeekInputStream
StackMap stack: java.io.ObjectInputStream$PeekInputStream long
4: iconst_0
StackMap locals: java.io.ObjectInputStream$PeekInputStream
StackMap stack: java.io.ObjectInputStream$PeekInputStream long int
5: i2l
ladd
putfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
6: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.peekb:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/io/ObjectInputStream$PeekInputStream;
Exceptions:
throws java.io.IOException
public int read();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.peekb:I
iflt 4
1: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.peekb:I
istore 1
start local 1 2: aload 0
iconst_m1
putfield java.io.ObjectInputStream$PeekInputStream.peekb:I
3: iload 1
ireturn
end local 1 4: StackMap locals:
StackMap stack:
aload 0
getfield java.io.ObjectInputStream$PeekInputStream.in:Ljava/io/InputStream;
invokevirtual java.io.InputStream.read:()I
istore 1
start local 1 5: aload 0
dup
getfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
iload 1
iflt 6
iconst_1
goto 7
StackMap locals: java.io.ObjectInputStream$PeekInputStream int
StackMap stack: java.io.ObjectInputStream$PeekInputStream long
6: iconst_0
StackMap locals: java.io.ObjectInputStream$PeekInputStream int
StackMap stack: java.io.ObjectInputStream$PeekInputStream long int
7: i2l
ladd
putfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
8: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/io/ObjectInputStream$PeekInputStream;
2 4 1 v I
5 9 1 nbytes I
Exceptions:
throws java.io.IOException
public int read(byte[], int, int);
descriptor: ([BII)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield java.io.ObjectInputStream$PeekInputStream.peekb:I
ifge 8
3: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.in:Ljava/io/InputStream;
aload 1
iload 2
iload 3
invokevirtual java.io.InputStream.read:([BII)I
istore 4
start local 4 4: aload 0
dup
getfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
iload 4
iflt 5
iload 4
goto 6
StackMap locals: java.io.ObjectInputStream$PeekInputStream byte[] int int int
StackMap stack: java.io.ObjectInputStream$PeekInputStream long
5: iconst_0
StackMap locals: java.io.ObjectInputStream$PeekInputStream byte[] int int int
StackMap stack: java.io.ObjectInputStream$PeekInputStream long int
6: i2l
ladd
putfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
7: iload 4
ireturn
end local 4 8: StackMap locals:
StackMap stack:
aload 1
iload 2
iinc 2 1
aload 0
getfield java.io.ObjectInputStream$PeekInputStream.peekb:I
i2b
bastore
9: iinc 3 -1
10: aload 0
iconst_m1
putfield java.io.ObjectInputStream$PeekInputStream.peekb:I
11: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.in:Ljava/io/InputStream;
aload 1
iload 2
iload 3
invokevirtual java.io.InputStream.read:([BII)I
istore 4
start local 4 12: aload 0
dup
getfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
iload 4
iflt 13
iload 4
goto 14
StackMap locals: java.io.ObjectInputStream$PeekInputStream byte[] int int int
StackMap stack: java.io.ObjectInputStream$PeekInputStream long
13: iconst_0
StackMap locals: java.io.ObjectInputStream$PeekInputStream byte[] int int int
StackMap stack: java.io.ObjectInputStream$PeekInputStream long int
14: i2l
ladd
putfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
15: iload 4
iflt 16
iload 4
iconst_1
iadd
goto 17
StackMap locals:
StackMap stack:
16: iconst_1
StackMap locals:
StackMap stack: int
17: ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Ljava/io/ObjectInputStream$PeekInputStream;
0 18 1 b [B
0 18 2 off I
0 18 3 len I
4 8 4 nbytes I
12 18 4 nbytes I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
b
off
len
void readFully(byte[], int, int);
descriptor: ([BII)V
flags: (0x0000)
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: goto 6
2: StackMap locals: int
StackMap stack:
aload 0
aload 1
iload 2
iload 4
iadd
iload 3
iload 4
isub
invokevirtual java.io.ObjectInputStream$PeekInputStream.read:([BII)I
istore 5
start local 5 3: iload 5
ifge 5
4: new java.io.EOFException
dup
invokespecial java.io.EOFException.<init>:()V
athrow
5: StackMap locals: int
StackMap stack:
iload 4
iload 5
iadd
istore 4
end local 5 6: StackMap locals:
StackMap stack:
iload 4
iload 3
if_icmplt 2
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/io/ObjectInputStream$PeekInputStream;
0 8 1 b [B
0 8 2 off I
0 8 3 len I
1 8 4 n I
3 6 5 count I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
b
off
len
public long skip(long);
descriptor: (J)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
ifgt 2
1: lconst_0
lreturn
2: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 3: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.peekb:I
iflt 7
4: aload 0
iconst_m1
putfield java.io.ObjectInputStream$PeekInputStream.peekb:I
5: iinc 3 1
6: lload 1
lconst_1
lsub
lstore 1
7: StackMap locals: int
StackMap stack:
iload 3
i2l
aload 0
getfield java.io.ObjectInputStream$PeekInputStream.in:Ljava/io/InputStream;
lload 1
invokevirtual java.io.InputStream.skip:(J)J
ladd
lstore 1
8: aload 0
dup
getfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
lload 1
ladd
putfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
9: lload 1
lreturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/io/ObjectInputStream$PeekInputStream;
0 10 1 n J
3 10 3 skipped I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
n
public int available();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.in:Ljava/io/InputStream;
invokevirtual java.io.InputStream.available:()I
aload 0
getfield java.io.ObjectInputStream$PeekInputStream.peekb:I
iflt 1
iconst_1
goto 2
StackMap locals:
StackMap stack: int
1: iconst_0
StackMap locals: java.io.ObjectInputStream$PeekInputStream
StackMap stack: int int
2: iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/io/ObjectInputStream$PeekInputStream;
Exceptions:
throws java.io.IOException
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.in:Ljava/io/InputStream;
invokevirtual java.io.InputStream.close:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/io/ObjectInputStream$PeekInputStream;
Exceptions:
throws java.io.IOException
public long getBytesRead();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield java.io.ObjectInputStream$PeekInputStream.totalBytesRead:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/io/ObjectInputStream$PeekInputStream;
}
SourceFile: "ObjectInputStream.java"
NestHost: java.io.ObjectInputStream
InnerClasses:
private PeekInputStream = java.io.ObjectInputStream$PeekInputStream of java.io.ObjectInputStream