class java.time.format.DateTimeFormatterBuilder$NumberPrinterParser implements java.time.format.DateTimeFormatterBuilder$DateTimePrinterParser
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: java.time.format.DateTimeFormatterBuilder$NumberPrinterParser
super_class: java.lang.Object
{
static final long[] EXCEED_POINTS;
descriptor: [J
flags: (0x0018) ACC_STATIC, ACC_FINAL
final java.time.temporal.TemporalField field;
descriptor: Ljava/time/temporal/TemporalField;
flags: (0x0010) ACC_FINAL
final int minWidth;
descriptor: I
flags: (0x0010) ACC_FINAL
final int maxWidth;
descriptor: I
flags: (0x0010) ACC_FINAL
private final java.time.format.SignStyle signStyle;
descriptor: Ljava/time/format/SignStyle;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final int subsequentWidth;
descriptor: I
flags: (0x0010) ACC_FINAL
private static volatile int[] $SWITCH_TABLE$java$time$format$SignStyle;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=0, args_size=0
0: bipush 11
newarray 11
dup
iconst_1
1: ldc 10
lastore
dup
iconst_2
2: ldc 100
lastore
dup
iconst_3
3: ldc 1000
lastore
dup
iconst_4
4: ldc 10000
lastore
dup
iconst_5
5: ldc 100000
lastore
dup
bipush 6
6: ldc 1000000
lastore
dup
bipush 7
7: ldc 10000000
lastore
dup
bipush 8
8: ldc 100000000
lastore
dup
bipush 9
9: ldc 1000000000
lastore
dup
bipush 10
10: ldc 10000000000
lastore
11: putstatic java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.EXCEED_POINTS:[J
12: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.time.temporal.TemporalField, int, int, java.time.format.SignStyle);
descriptor: (Ljava/time/temporal/TemporalField;IILjava/time/format/SignStyle;)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
2: aload 0
iload 2
putfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
3: aload 0
iload 3
putfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
4: aload 0
aload 4
putfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
5: aload 0
iconst_0
putfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.subsequentWidth:I
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
0 7 1 field Ljava/time/temporal/TemporalField;
0 7 2 minWidth I
0 7 3 maxWidth I
0 7 4 signStyle Ljava/time/format/SignStyle;
MethodParameters:
Name Flags
field
minWidth
maxWidth
signStyle
protected void <init>(java.time.temporal.TemporalField, int, int, java.time.format.SignStyle, int);
descriptor: (Ljava/time/temporal/TemporalField;IILjava/time/format/SignStyle;I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
2: aload 0
iload 2
putfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
3: aload 0
iload 3
putfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
4: aload 0
aload 4
putfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
5: aload 0
iload 5
putfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.subsequentWidth:I
6: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
0 7 1 field Ljava/time/temporal/TemporalField;
0 7 2 minWidth I
0 7 3 maxWidth I
0 7 4 signStyle Ljava/time/format/SignStyle;
0 7 5 subsequentWidth I
MethodParameters:
Name Flags
field
minWidth
maxWidth
signStyle
subsequentWidth
java.time.format.DateTimeFormatterBuilder$NumberPrinterParser withFixedWidth();
descriptor: ()Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
flags: (0x0000)
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.subsequentWidth:I
iconst_m1
if_icmpne 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new java.time.format.DateTimeFormatterBuilder$NumberPrinterParser
dup
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
iconst_m1
invokespecial java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.<init>:(Ljava/time/temporal/TemporalField;IILjava/time/format/SignStyle;I)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
java.time.format.DateTimeFormatterBuilder$NumberPrinterParser withSubsequentWidth(int);
descriptor: (I)Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
flags: (0x0000)
Code:
stack=8, locals=2, args_size=2
start local 0 start local 1 0: new java.time.format.DateTimeFormatterBuilder$NumberPrinterParser
dup
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.subsequentWidth:I
iload 1
iadd
invokespecial java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.<init>:(Ljava/time/temporal/TemporalField;IILjava/time/format/SignStyle;I)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
0 1 1 subsequentWidth I
MethodParameters:
Name Flags
subsequentWidth
public boolean format(java.time.format.DateTimePrintContext, java.lang.StringBuilder);
descriptor: (Ljava/time/format/DateTimePrintContext;Ljava/lang/StringBuilder;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
invokevirtual java.time.format.DateTimePrintContext.getValue:(Ljava/time/temporal/TemporalField;)Ljava/lang/Long;
astore 3
start local 3 1: aload 3
ifnonnull 3
2: iconst_0
ireturn
3: StackMap locals: java.lang.Long
StackMap stack:
aload 0
aload 1
aload 3
invokevirtual java.lang.Long.longValue:()J
invokevirtual java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.getValue:(Ljava/time/format/DateTimePrintContext;J)J
lstore 4
start local 4 4: aload 1
invokevirtual java.time.format.DateTimePrintContext.getDecimalStyle:()Ljava/time/format/DecimalStyle;
astore 6
start local 6 5: lload 4
ldc -9223372036854775808
lcmp
ifne 6
ldc "9223372036854775808"
goto 7
StackMap locals: long java.time.format.DecimalStyle
StackMap stack:
6: lload 4
invokestatic java.lang.Math.abs:(J)J
invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
7: astore 7
start local 7 8: aload 7
invokevirtual java.lang.String.length:()I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
if_icmple 13
9: new java.time.DateTimeException
dup
new java.lang.StringBuilder
dup
ldc "Field "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
10: ldc " cannot be printed as the value "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 4
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
11: ldc " exceeds the maximum print width of "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
12: invokespecial java.time.DateTimeException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals: java.lang.String
StackMap stack:
aload 6
aload 7
invokevirtual java.time.format.DecimalStyle.convertNumberToI18N:(Ljava/lang/String;)Ljava/lang/String;
astore 7
14: lload 4
lconst_0
lcmp
iflt 21
15: invokestatic java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.$SWITCH_TABLE$java$time$format$SignStyle:()[I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
invokevirtual java.time.format.SignStyle.ordinal:()I
iaload
tableswitch { // 2 - 5
2: 19
3: 20
4: 20
5: 16
default: 20
}
16: StackMap locals:
StackMap stack:
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
bipush 19
if_icmpge 28
lload 4
getstatic java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.EXCEED_POINTS:[J
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
laload
lcmp
iflt 28
17: aload 2
aload 6
invokevirtual java.time.format.DecimalStyle.getPositiveSign:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
18: goto 28
19: StackMap locals:
StackMap stack:
aload 2
aload 6
invokevirtual java.time.format.DecimalStyle.getPositiveSign:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
20: StackMap locals:
StackMap stack:
goto 28
21: StackMap locals:
StackMap stack:
invokestatic java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.$SWITCH_TABLE$java$time$format$SignStyle:()[I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
invokevirtual java.time.format.SignStyle.ordinal:()I
iaload
tableswitch { // 1 - 5
1: 22
2: 22
3: 28
4: 24
5: 22
default: 28
}
22: StackMap locals:
StackMap stack:
aload 2
aload 6
invokevirtual java.time.format.DecimalStyle.getNegativeSign:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
23: goto 28
24: StackMap locals:
StackMap stack:
new java.time.DateTimeException
dup
new java.lang.StringBuilder
dup
ldc "Field "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
25: ldc " cannot be printed as the value "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 4
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
26: ldc " cannot be negative according to the SignStyle"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
27: invokespecial java.time.DateTimeException.<init>:(Ljava/lang/String;)V
athrow
28: StackMap locals:
StackMap stack:
iconst_0
istore 8
start local 8 29: goto 32
30: StackMap locals: int
StackMap stack:
aload 2
aload 6
invokevirtual java.time.format.DecimalStyle.getZeroDigit:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
31: iinc 8 1
StackMap locals:
StackMap stack:
32: iload 8
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
aload 7
invokevirtual java.lang.String.length:()I
isub
if_icmplt 30
end local 8 33: aload 2
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
34: iconst_1
ireturn
end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
0 35 1 context Ljava/time/format/DateTimePrintContext;
0 35 2 buf Ljava/lang/StringBuilder;
1 35 3 valueLong Ljava/lang/Long;
4 35 4 value J
5 35 6 decimalStyle Ljava/time/format/DecimalStyle;
8 35 7 str Ljava/lang/String;
29 33 8 i I
MethodParameters:
Name Flags
context
buf
long getValue(java.time.format.DateTimePrintContext, long);
descriptor: (Ljava/time/format/DateTimePrintContext;J)J
flags: (0x0000)
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: lload 2
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
0 1 1 context Ljava/time/format/DateTimePrintContext;
0 1 2 value J
MethodParameters:
Name Flags
context
value
boolean isFixedWidth(java.time.format.DateTimeParseContext);
descriptor: (Ljava/time/format/DateTimeParseContext;)Z
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.subsequentWidth:I
iconst_m1
if_icmpeq 3
1: aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.subsequentWidth:I
ifle 2
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
if_icmpne 2
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
getstatic java.time.format.SignStyle.NOT_NEGATIVE:Ljava/time/format/SignStyle;
if_acmpeq 3
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
StackMap locals:
StackMap stack:
3: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
0 4 1 context Ljava/time/format/DateTimeParseContext;
MethodParameters:
Name Flags
context
public int parse(java.time.format.DateTimeParseContext, java.lang.CharSequence, int);
descriptor: (Ljava/time/format/DateTimeParseContext;Ljava/lang/CharSequence;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=19, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
invokeinterface java.lang.CharSequence.length:()I
istore 4
start local 4 1: iload 3
iload 4
if_icmpne 3
2: iload 3
iconst_m1
ixor
ireturn
3: StackMap locals: int
StackMap stack:
aload 2
iload 3
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 5
start local 5 4: iconst_0
istore 6
start local 6 5: iconst_0
istore 7
start local 7 6: iload 5
aload 1
invokevirtual java.time.format.DateTimeParseContext.getDecimalStyle:()Ljava/time/format/DecimalStyle;
invokevirtual java.time.format.DecimalStyle.getPositiveSign:()C
if_icmpne 14
7: aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
iconst_1
aload 1
invokevirtual java.time.format.DateTimeParseContext.isStrict:()Z
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
if_icmpne 8
iconst_1
goto 9
StackMap locals: java.time.format.DateTimeFormatterBuilder$NumberPrinterParser java.time.format.DateTimeParseContext java.lang.CharSequence int int int int int
StackMap stack: java.time.format.SignStyle int int
8: iconst_0
StackMap locals: java.time.format.DateTimeFormatterBuilder$NumberPrinterParser java.time.format.DateTimeParseContext java.lang.CharSequence int int int int int
StackMap stack: java.time.format.SignStyle int int int
9: invokevirtual java.time.format.SignStyle.parse:(ZZZ)Z
ifne 11
10: iload 3
iconst_m1
ixor
ireturn
11: StackMap locals:
StackMap stack:
iconst_1
istore 7
12: iinc 3 1
13: goto 24
StackMap locals:
StackMap stack:
14: iload 5
aload 1
invokevirtual java.time.format.DateTimeParseContext.getDecimalStyle:()Ljava/time/format/DecimalStyle;
invokevirtual java.time.format.DecimalStyle.getNegativeSign:()C
if_icmpne 22
15: aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
iconst_0
aload 1
invokevirtual java.time.format.DateTimeParseContext.isStrict:()Z
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
if_icmpne 16
iconst_1
goto 17
StackMap locals: java.time.format.DateTimeFormatterBuilder$NumberPrinterParser java.time.format.DateTimeParseContext java.lang.CharSequence int int int int int
StackMap stack: java.time.format.SignStyle int int
16: iconst_0
StackMap locals: java.time.format.DateTimeFormatterBuilder$NumberPrinterParser java.time.format.DateTimeParseContext java.lang.CharSequence int int int int int
StackMap stack: java.time.format.SignStyle int int int
17: invokevirtual java.time.format.SignStyle.parse:(ZZZ)Z
ifne 19
18: iload 3
iconst_m1
ixor
ireturn
19: StackMap locals:
StackMap stack:
iconst_1
istore 6
20: iinc 3 1
21: goto 24
22: StackMap locals:
StackMap stack:
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
getstatic java.time.format.SignStyle.ALWAYS:Ljava/time/format/SignStyle;
if_acmpne 24
aload 1
invokevirtual java.time.format.DateTimeParseContext.isStrict:()Z
ifeq 24
23: iload 3
iconst_m1
ixor
ireturn
24: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.time.format.DateTimeParseContext.isStrict:()Z
ifne 25
aload 0
aload 1
invokevirtual java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.isFixedWidth:(Ljava/time/format/DateTimeParseContext;)Z
ifeq 26
StackMap locals:
StackMap stack:
25: aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
goto 27
StackMap locals:
StackMap stack:
26: iconst_1
StackMap locals:
StackMap stack: int
27: istore 8
start local 8 28: iload 3
iload 8
iadd
istore 9
start local 9 29: iload 9
iload 4
if_icmple 31
30: iload 3
iconst_m1
ixor
ireturn
31: StackMap locals: int int
StackMap stack:
aload 1
invokevirtual java.time.format.DateTimeParseContext.isStrict:()Z
ifne 32
aload 0
aload 1
invokevirtual java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.isFixedWidth:(Ljava/time/format/DateTimeParseContext;)Z
ifeq 33
StackMap locals:
StackMap stack:
32: aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
goto 34
StackMap locals:
StackMap stack:
33: bipush 9
StackMap locals:
StackMap stack: int
34: aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.subsequentWidth:I
iconst_0
invokestatic java.lang.Math.max:(II)I
iadd
istore 10
start local 10 35: lconst_0
lstore 11
start local 11 36: aconst_null
astore 13
start local 13 37: iload 3
istore 14
start local 14 38: iconst_0
istore 15
start local 15 39: goto 62
40: StackMap locals: java.time.format.DateTimeFormatterBuilder$NumberPrinterParser java.time.format.DateTimeParseContext java.lang.CharSequence int int int int int int int int long java.math.BigInteger int int
StackMap stack:
iload 14
iload 10
iadd
iload 4
invokestatic java.lang.Math.min:(II)I
istore 16
start local 16 41: goto 54
42: StackMap locals: int
StackMap stack:
aload 2
iload 14
iinc 14 1
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 17
start local 17 43: aload 1
invokevirtual java.time.format.DateTimeParseContext.getDecimalStyle:()Ljava/time/format/DecimalStyle;
iload 17
invokevirtual java.time.format.DecimalStyle.convertToDigit:(C)I
istore 18
start local 18 44: iload 18
ifge 48
45: iinc 14 -1
46: iload 14
iload 9
if_icmpge 55
47: iload 3
iconst_m1
ixor
ireturn
48: StackMap locals: int int
StackMap stack:
iload 14
iload 3
isub
bipush 18
if_icmple 53
49: aload 13
ifnonnull 51
50: lload 11
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
astore 13
51: StackMap locals:
StackMap stack:
aload 13
getstatic java.math.BigInteger.TEN:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.multiply:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
iload 18
i2l
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.add:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 13
52: goto 54
53: StackMap locals:
StackMap stack:
lload 11
ldc 10
lmul
iload 18
i2l
ladd
lstore 11
end local 18 end local 17 54: StackMap locals:
StackMap stack:
iload 14
iload 16
if_icmplt 42
55: StackMap locals:
StackMap stack:
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.subsequentWidth:I
ifle 63
iload 15
ifne 63
56: iload 14
iload 3
isub
istore 17
start local 17 57: iload 8
iload 17
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.subsequentWidth:I
isub
invokestatic java.lang.Math.max:(II)I
istore 10
58: iload 3
istore 14
59: lconst_0
lstore 11
60: aconst_null
astore 13
end local 17 end local 16 61: iinc 15 1
StackMap locals:
StackMap stack:
62: iload 15
iconst_2
if_icmplt 40
end local 15 63: StackMap locals:
StackMap stack:
iload 6
ifeq 73
64: aload 13
ifnull 69
65: aload 13
getstatic java.math.BigInteger.ZERO:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.equals:(Ljava/lang/Object;)Z
ifeq 67
aload 1
invokevirtual java.time.format.DateTimeParseContext.isStrict:()Z
ifeq 67
66: iload 3
iconst_1
isub
iconst_m1
ixor
ireturn
67: StackMap locals:
StackMap stack:
aload 13
invokevirtual java.math.BigInteger.negate:()Ljava/math/BigInteger;
astore 13
68: goto 80
69: StackMap locals:
StackMap stack:
lload 11
lconst_0
lcmp
ifne 71
aload 1
invokevirtual java.time.format.DateTimeParseContext.isStrict:()Z
ifeq 71
70: iload 3
iconst_1
isub
iconst_m1
ixor
ireturn
71: StackMap locals:
StackMap stack:
lload 11
lneg
lstore 11
72: goto 80
StackMap locals:
StackMap stack:
73: aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
getstatic java.time.format.SignStyle.EXCEEDS_PAD:Ljava/time/format/SignStyle;
if_acmpne 80
aload 1
invokevirtual java.time.format.DateTimeParseContext.isStrict:()Z
ifeq 80
74: iload 14
iload 3
isub
istore 15
start local 15 75: iload 7
ifeq 78
76: iload 15
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
if_icmpgt 80
77: iload 3
iconst_1
isub
iconst_m1
ixor
ireturn
78: StackMap locals: int
StackMap stack:
iload 15
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
if_icmple 80
79: iload 3
iconst_m1
ixor
ireturn
end local 15 80: StackMap locals:
StackMap stack:
aload 13
ifnull 85
81: aload 13
invokevirtual java.math.BigInteger.bitLength:()I
bipush 63
if_icmple 84
82: aload 13
getstatic java.math.BigInteger.TEN:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.divide:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 13
83: iinc 14 -1
84: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 13
invokevirtual java.math.BigInteger.longValue:()J
iload 3
iload 14
invokevirtual java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.setValue:(Ljava/time/format/DateTimeParseContext;JII)I
ireturn
85: StackMap locals:
StackMap stack:
aload 0
aload 1
lload 11
iload 3
iload 14
invokevirtual java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.setValue:(Ljava/time/format/DateTimeParseContext;JII)I
ireturn
end local 14 end local 13 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 86 0 this Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
0 86 1 context Ljava/time/format/DateTimeParseContext;
0 86 2 text Ljava/lang/CharSequence;
0 86 3 position I
1 86 4 length I
4 86 5 sign C
5 86 6 negative Z
6 86 7 positive Z
28 86 8 effMinWidth I
29 86 9 minEndPos I
35 86 10 effMaxWidth I
36 86 11 total J
37 86 13 totalBig Ljava/math/BigInteger;
38 86 14 pos I
39 63 15 pass I
41 61 16 maxEndPos I
43 54 17 ch C
44 54 18 digit I
57 61 17 parseLen I
75 80 15 parseLen I
MethodParameters:
Name Flags
context
text
position
int setValue(java.time.format.DateTimeParseContext, long, int, int);
descriptor: (Ljava/time/format/DateTimeParseContext;JII)I
flags: (0x0000)
Code:
stack=6, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 5 0: aload 1
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
lload 2
iload 4
iload 5
invokevirtual java.time.format.DateTimeParseContext.setParsedField:(Ljava/time/temporal/TemporalField;JII)I
ireturn
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
0 1 1 context Ljava/time/format/DateTimeParseContext;
0 1 2 value J
0 1 4 errorPos I
0 1 5 successPos I
MethodParameters:
Name Flags
context
value
errorPos
successPos
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
iconst_1
if_icmpne 2
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
bipush 19
if_icmpne 2
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
getstatic java.time.format.SignStyle.NORMAL:Ljava/time/format/SignStyle;
if_acmpne 2
1: new java.lang.StringBuilder
dup
ldc "Value("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
if_icmpne 4
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
getstatic java.time.format.SignStyle.NOT_NEGATIVE:Ljava/time/format/SignStyle;
if_acmpne 4
3: new java.lang.StringBuilder
dup
ldc "Value("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Value("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.field:Ljava/time/temporal/TemporalField;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.minWidth:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.maxWidth:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.signStyle:Ljava/time/format/SignStyle;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/time/format/DateTimeFormatterBuilder$NumberPrinterParser;
static int[] $SWITCH_TABLE$java$time$format$SignStyle();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.$SWITCH_TABLE$java$time$format$SignStyle:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic java.time.format.SignStyle.values:()[Ljava/time/format/SignStyle;
arraylength
newarray 10
astore 0
2: aload 0
getstatic java.time.format.SignStyle.ALWAYS:Ljava/time/format/SignStyle;
invokevirtual java.time.format.SignStyle.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic java.time.format.SignStyle.EXCEEDS_PAD:Ljava/time/format/SignStyle;
invokevirtual java.time.format.SignStyle.ordinal:()I
iconst_5
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic java.time.format.SignStyle.NEVER:Ljava/time/format/SignStyle;
invokevirtual java.time.format.SignStyle.ordinal:()I
iconst_3
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic java.time.format.SignStyle.NORMAL:Ljava/time/format/SignStyle;
invokevirtual java.time.format.SignStyle.ordinal:()I
iconst_1
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic java.time.format.SignStyle.NOT_NEGATIVE:Ljava/time/format/SignStyle;
invokevirtual java.time.format.SignStyle.ordinal:()I
iconst_4
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
dup
putstatic java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.$SWITCH_TABLE$java$time$format$SignStyle:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
}
SourceFile: "DateTimeFormatterBuilder.java"
NestHost: java.time.format.DateTimeFormatterBuilder
InnerClasses:
abstract DateTimePrinterParser = java.time.format.DateTimeFormatterBuilder$DateTimePrinterParser of java.time.format.DateTimeFormatterBuilder
NumberPrinterParser = java.time.format.DateTimeFormatterBuilder$NumberPrinterParser of java.time.format.DateTimeFormatterBuilder