class java.util.Properties$LineReader
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: java.util.Properties$LineReader
super_class: java.lang.Object
{
char[] lineBuf;
descriptor: [C
flags: (0x0000)
private byte[] inByteBuf;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
private char[] inCharBuf;
descriptor: [C
flags: (0x0002) ACC_PRIVATE
private int inLimit;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int inOff;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.io.InputStream inStream;
descriptor: Ljava/io/InputStream;
flags: (0x0002) ACC_PRIVATE
private java.io.Reader reader;
descriptor: Ljava/io/Reader;
flags: (0x0002) ACC_PRIVATE
void <init>(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // java.util.Properties$LineReader this
start local 1 // java.io.InputStream inStream
0: .line 464
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 474
aload 0 /* this */
sipush 1024
newarray 5
putfield java.util.Properties$LineReader.lineBuf:[C
2: .line 477
aload 0 /* this */
iconst_0
putfield java.util.Properties$LineReader.inLimit:I
3: .line 478
aload 0 /* this */
iconst_0
putfield java.util.Properties$LineReader.inOff:I
4: .line 465
aload 0 /* this */
aload 1 /* inStream */
putfield java.util.Properties$LineReader.inStream:Ljava/io/InputStream;
5: .line 466
aload 0 /* this */
sipush 8192
newarray 8
putfield java.util.Properties$LineReader.inByteBuf:[B
6: .line 467
return
end local 1 // java.io.InputStream inStream
end local 0 // java.util.Properties$LineReader this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/util/Properties$LineReader;
0 7 1 inStream Ljava/io/InputStream;
MethodParameters:
Name Flags
inStream
void <init>(java.io.Reader);
descriptor: (Ljava/io/Reader;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // java.util.Properties$LineReader this
start local 1 // java.io.Reader reader
0: .line 469
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 474
aload 0 /* this */
sipush 1024
newarray 5
putfield java.util.Properties$LineReader.lineBuf:[C
2: .line 477
aload 0 /* this */
iconst_0
putfield java.util.Properties$LineReader.inLimit:I
3: .line 478
aload 0 /* this */
iconst_0
putfield java.util.Properties$LineReader.inOff:I
4: .line 470
aload 0 /* this */
aload 1 /* reader */
putfield java.util.Properties$LineReader.reader:Ljava/io/Reader;
5: .line 471
aload 0 /* this */
sipush 8192
newarray 5
putfield java.util.Properties$LineReader.inCharBuf:[C
6: .line 472
return
end local 1 // java.io.Reader reader
end local 0 // java.util.Properties$LineReader this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/util/Properties$LineReader;
0 7 1 reader Ljava/io/Reader;
MethodParameters:
Name Flags
reader
int readLine();
descriptor: ()I
flags: (0x0000)
Code:
stack=5, locals=14, args_size=1
start local 0 // java.util.Properties$LineReader this
0: .line 484
iconst_0
istore 1 /* len */
start local 1 // int len
1: .line 485
aload 0 /* this */
getfield java.util.Properties$LineReader.inOff:I
istore 2 /* off */
start local 2 // int off
2: .line 486
aload 0 /* this */
getfield java.util.Properties$LineReader.inLimit:I
istore 3 /* limit */
start local 3 // int limit
3: .line 488
iconst_1
istore 4 /* skipWhiteSpace */
start local 4 // boolean skipWhiteSpace
4: .line 489
iconst_0
istore 5 /* appendedLineBegin */
start local 5 // boolean appendedLineBegin
5: .line 490
iconst_0
istore 6 /* precedingBackslash */
start local 6 // boolean precedingBackslash
6: .line 491
aload 0 /* this */
getfield java.util.Properties$LineReader.inStream:Ljava/io/InputStream;
ifnull 7
iconst_1
goto 8
StackMap locals: java.util.Properties$LineReader int int int int int int
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: istore 7 /* fromStream */
start local 7 // boolean fromStream
9: .line 492
aload 0 /* this */
getfield java.util.Properties$LineReader.inByteBuf:[B
astore 8 /* byteBuf */
start local 8 // byte[] byteBuf
10: .line 493
aload 0 /* this */
getfield java.util.Properties$LineReader.inCharBuf:[C
astore 9 /* charBuf */
start local 9 // char[] charBuf
11: .line 494
aload 0 /* this */
getfield java.util.Properties$LineReader.lineBuf:[C
astore 10 /* lineBuf */
start local 10 // char[] lineBuf
12: .line 498
StackMap locals: java.util.Properties$LineReader int int int int int int int byte[] char[] char[]
StackMap stack:
iload 2 /* off */
iload 3 /* limit */
if_icmplt 24
13: .line 499
aload 0 /* this */
iload 7 /* fromStream */
ifeq 14
aload 0 /* this */
getfield java.util.Properties$LineReader.inStream:Ljava/io/InputStream;
aload 8 /* byteBuf */
invokevirtual java.io.InputStream.read:([B)I
goto 15
14: .line 500
StackMap locals:
StackMap stack: java.util.Properties$LineReader
aload 0 /* this */
getfield java.util.Properties$LineReader.reader:Ljava/io/Reader;
aload 9 /* charBuf */
invokevirtual java.io.Reader.read:([C)I
StackMap locals: java.util.Properties$LineReader int int int int int int int byte[] char[] char[]
StackMap stack: java.util.Properties$LineReader int
15: dup
istore 3 /* limit */
16: .line 499
putfield java.util.Properties$LineReader.inLimit:I
17: .line 501
iload 3 /* limit */
ifgt 23
18: .line 502
iload 1 /* len */
ifne 20
19: .line 503
iconst_m1
ireturn
20: .line 505
StackMap locals:
StackMap stack:
iload 6 /* precedingBackslash */
ifeq 21
iload 1 /* len */
iconst_1
isub
goto 22
StackMap locals:
StackMap stack:
21: iload 1 /* len */
StackMap locals:
StackMap stack: int
22: ireturn
23: .line 507
StackMap locals:
StackMap stack:
iconst_0
istore 2 /* off */
24: .line 511
StackMap locals:
StackMap stack:
iload 7 /* fromStream */
ifeq 25
aload 8 /* byteBuf */
iload 2 /* off */
iinc 2 /* off */ 1
baload
sipush 255
iand
i2c
goto 26
StackMap locals:
StackMap stack:
25: aload 9 /* charBuf */
iload 2 /* off */
iinc 2 /* off */ 1
caload
StackMap locals:
StackMap stack: int
26: istore 11 /* c */
start local 11 // char c
27: .line 513
iload 4 /* skipWhiteSpace */
ifeq 34
28: .line 514
iload 11 /* c */
bipush 32
if_icmpeq 12
iload 11 /* c */
bipush 9
if_icmpeq 12
iload 11 /* c */
bipush 12
if_icmpne 30
29: .line 515
goto 12
30: .line 517
StackMap locals: int
StackMap stack:
iload 5 /* appendedLineBegin */
ifne 32
iload 11 /* c */
bipush 13
if_icmpeq 12
iload 11 /* c */
bipush 10
if_icmpne 32
31: .line 518
goto 12
32: .line 520
StackMap locals:
StackMap stack:
iconst_0
istore 4 /* skipWhiteSpace */
33: .line 521
iconst_0
istore 5 /* appendedLineBegin */
34: .line 524
StackMap locals:
StackMap stack:
iload 1 /* len */
ifne 60
35: .line 525
iload 11 /* c */
bipush 35
if_icmpeq 36
iload 11 /* c */
bipush 33
if_icmpne 60
36: .line 532
StackMap locals:
StackMap stack:
iload 7 /* fromStream */
ifeq 51
37: .line 534
goto 41
38: .line 535
StackMap locals:
StackMap stack:
aload 8 /* byteBuf */
iload 2 /* off */
iinc 2 /* off */ 1
baload
istore 12 /* b */
start local 12 // byte b
39: .line 536
iload 12 /* b */
bipush 13
if_icmpgt 41
iload 12 /* b */
bipush 13
if_icmpeq 58
iload 12 /* b */
bipush 10
if_icmpne 41
40: .line 537
goto 58
end local 12 // byte b
41: .line 534
StackMap locals:
StackMap stack:
iload 2 /* off */
iload 3 /* limit */
if_icmplt 38
42: .line 539
iload 2 /* off */
iload 3 /* limit */
if_icmpne 36
43: .line 540
aload 0 /* this */
aload 0 /* this */
getfield java.util.Properties$LineReader.inStream:Ljava/io/InputStream;
aload 8 /* byteBuf */
invokevirtual java.io.InputStream.read:([B)I
dup
istore 3 /* limit */
putfield java.util.Properties$LineReader.inLimit:I
44: .line 541
iload 3 /* limit */
ifgt 46
45: .line 542
iconst_m1
ireturn
46: .line 544
StackMap locals:
StackMap stack:
iconst_0
istore 2 /* off */
47: .line 546
goto 36
48: .line 548
StackMap locals:
StackMap stack:
aload 9 /* charBuf */
iload 2 /* off */
iinc 2 /* off */ 1
caload
istore 11 /* c */
49: .line 549
iload 11 /* c */
bipush 13
if_icmpgt 51
iload 11 /* c */
bipush 13
if_icmpeq 58
iload 11 /* c */
bipush 10
if_icmpne 51
50: .line 550
goto 58
51: .line 547
StackMap locals:
StackMap stack:
iload 2 /* off */
iload 3 /* limit */
if_icmplt 48
52: .line 552
iload 2 /* off */
iload 3 /* limit */
if_icmpne 36
53: .line 553
aload 0 /* this */
aload 0 /* this */
getfield java.util.Properties$LineReader.reader:Ljava/io/Reader;
aload 9 /* charBuf */
invokevirtual java.io.Reader.read:([C)I
dup
istore 3 /* limit */
putfield java.util.Properties$LineReader.inLimit:I
54: .line 554
iload 3 /* limit */
ifgt 56
55: .line 555
iconst_m1
ireturn
56: .line 557
StackMap locals:
StackMap stack:
iconst_0
istore 2 /* off */
57: .line 531
goto 36
58: .line 561
StackMap locals:
StackMap stack:
iconst_1
istore 4 /* skipWhiteSpace */
59: .line 562
goto 12
60: .line 566
StackMap locals:
StackMap stack:
iload 11 /* c */
bipush 10
if_icmpeq 80
iload 11 /* c */
bipush 13
if_icmpeq 80
61: .line 567
aload 10 /* lineBuf */
iload 1 /* len */
iinc 1 /* len */ 1
iload 11 /* c */
castore
62: .line 568
iload 1 /* len */
aload 10 /* lineBuf */
arraylength
if_icmpne 75
63: .line 569
ldc 2147483639
istore 12 /* maxLen */
start local 12 // int maxLen
64: .line 570
iload 1 /* len */
iconst_2
imul
istore 13 /* newLen */
start local 13 // int newLen
65: .line 571
iload 13 /* newLen */
iflt 66
iload 13 /* newLen */
iload 12 /* maxLen */
if_icmple 67
66: .line 572
StackMap locals: int int
StackMap stack:
iload 12 /* maxLen */
istore 13 /* newLen */
67: .line 574
StackMap locals:
StackMap stack:
iload 13 /* newLen */
iload 1 /* len */
if_icmpgt 72
68: .line 575
iload 1 /* len */
ldc 2147483647
if_icmpeq 71
69: .line 576
iload 1 /* len */
iconst_1
iadd
istore 13 /* newLen */
70: .line 577
goto 72
71: .line 578
StackMap locals:
StackMap stack:
new java.lang.OutOfMemoryError
dup
ldc "Required array length too large"
invokespecial java.lang.OutOfMemoryError.<init>:(Ljava/lang/String;)V
athrow
72: .line 581
StackMap locals:
StackMap stack:
iload 13 /* newLen */
newarray 5
astore 10 /* lineBuf */
73: .line 582
aload 0 /* this */
getfield java.util.Properties$LineReader.lineBuf:[C
iconst_0
aload 10 /* lineBuf */
iconst_0
iload 1 /* len */
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
74: .line 583
aload 0 /* this */
aload 10 /* lineBuf */
putfield java.util.Properties$LineReader.lineBuf:[C
end local 13 // int newLen
end local 12 // int maxLen
75: .line 586
StackMap locals:
StackMap stack:
iload 11 /* c */
bipush 92
if_icmpne 77
iload 6 /* precedingBackslash */
ifeq 76
iconst_0
goto 78
StackMap locals:
StackMap stack:
76: iconst_1
goto 78
StackMap locals:
StackMap stack:
77: iconst_0
StackMap locals:
StackMap stack: int
78: istore 6 /* precedingBackslash */
79: .line 587
goto 12
80: .line 589
StackMap locals:
StackMap stack:
iload 1 /* len */
ifne 83
81: .line 590
iconst_1
istore 4 /* skipWhiteSpace */
82: .line 591
goto 12
83: .line 593
StackMap locals:
StackMap stack:
iload 2 /* off */
iload 3 /* limit */
if_icmplt 93
84: .line 594
aload 0 /* this */
iload 7 /* fromStream */
ifeq 85
aload 0 /* this */
getfield java.util.Properties$LineReader.inStream:Ljava/io/InputStream;
aload 8 /* byteBuf */
invokevirtual java.io.InputStream.read:([B)I
goto 86
85: .line 595
StackMap locals:
StackMap stack: java.util.Properties$LineReader
aload 0 /* this */
getfield java.util.Properties$LineReader.reader:Ljava/io/Reader;
aload 9 /* charBuf */
invokevirtual java.io.Reader.read:([C)I
StackMap locals: java.util.Properties$LineReader int int int int int int int byte[] char[] char[] int
StackMap stack: java.util.Properties$LineReader int
86: dup
istore 3 /* limit */
87: .line 594
putfield java.util.Properties$LineReader.inLimit:I
88: .line 596
iconst_0
istore 2 /* off */
89: .line 597
iload 3 /* limit */
ifgt 93
90: .line 598
iload 6 /* precedingBackslash */
ifeq 91
iload 1 /* len */
iconst_1
isub
goto 92
StackMap locals:
StackMap stack:
91: iload 1 /* len */
StackMap locals:
StackMap stack: int
92: ireturn
93: .line 601
StackMap locals:
StackMap stack:
iload 6 /* precedingBackslash */
ifeq 106
94: .line 603
iinc 1 /* len */ -1
95: .line 605
iconst_1
istore 4 /* skipWhiteSpace */
96: .line 606
iconst_1
istore 5 /* appendedLineBegin */
97: .line 607
iconst_0
istore 6 /* precedingBackslash */
98: .line 609
iload 11 /* c */
bipush 13
if_icmpne 12
99: .line 610
iload 7 /* fromStream */
ifeq 103
100: .line 611
aload 8 /* byteBuf */
iload 2 /* off */
baload
bipush 10
if_icmpne 12
101: .line 612
iinc 2 /* off */ 1
102: .line 614
goto 12
103: .line 615
StackMap locals:
StackMap stack:
aload 9 /* charBuf */
iload 2 /* off */
caload
bipush 10
if_icmpne 12
104: .line 616
iinc 2 /* off */ 1
105: .line 620
goto 12
106: .line 621
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 2 /* off */
putfield java.util.Properties$LineReader.inOff:I
107: .line 622
iload 1 /* len */
ireturn
end local 11 // char c
end local 10 // char[] lineBuf
end local 9 // char[] charBuf
end local 8 // byte[] byteBuf
end local 7 // boolean fromStream
end local 6 // boolean precedingBackslash
end local 5 // boolean appendedLineBegin
end local 4 // boolean skipWhiteSpace
end local 3 // int limit
end local 2 // int off
end local 1 // int len
end local 0 // java.util.Properties$LineReader this
LocalVariableTable:
Start End Slot Name Signature
0 108 0 this Ljava/util/Properties$LineReader;
1 108 1 len I
2 108 2 off I
3 108 3 limit I
4 108 4 skipWhiteSpace Z
5 108 5 appendedLineBegin Z
6 108 6 precedingBackslash Z
9 108 7 fromStream Z
10 108 8 byteBuf [B
11 108 9 charBuf [C
12 108 10 lineBuf [C
27 108 11 c C
39 41 12 b B
64 75 12 maxLen I
65 75 13 newLen I
Exceptions:
throws java.io.IOException
}
SourceFile: "Properties.java"
NestHost: java.util.Properties
InnerClasses:
private LineReader = java.util.Properties$LineReader of java.util.Properties