public class java.text.DecimalFormat extends java.text.NumberFormat
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: java.text.DecimalFormat
super_class: java.text.NumberFormat
{
private transient java.math.BigInteger bigIntegerMultiplier;
descriptor: Ljava/math/BigInteger;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient java.math.BigDecimal bigDecimalMultiplier;
descriptor: Ljava/math/BigDecimal;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private static final int STATUS_INFINITE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int STATUS_POSITIVE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int STATUS_LENGTH;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private transient java.text.DigitList digitList;
descriptor: Ljava/text/DigitList;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private java.lang.String positivePrefix;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String positiveSuffix;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String negativePrefix;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String negativeSuffix;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String posPrefixPattern;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String posSuffixPattern;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String negPrefixPattern;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String negSuffixPattern;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private int multiplier;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private byte groupingSize;
descriptor: B
flags: (0x0002) ACC_PRIVATE
private boolean decimalSeparatorAlwaysShown;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean parseBigDecimal;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private transient boolean isCurrencyFormat;
descriptor: Z
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private java.text.DecimalFormatSymbols symbols;
descriptor: Ljava/text/DecimalFormatSymbols;
flags: (0x0002) ACC_PRIVATE
private boolean useExponentialNotation;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private transient java.text.FieldPosition[] positivePrefixFieldPositions;
descriptor: [Ljava/text/FieldPosition;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient java.text.FieldPosition[] positiveSuffixFieldPositions;
descriptor: [Ljava/text/FieldPosition;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient java.text.FieldPosition[] negativePrefixFieldPositions;
descriptor: [Ljava/text/FieldPosition;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient java.text.FieldPosition[] negativeSuffixFieldPositions;
descriptor: [Ljava/text/FieldPosition;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private byte minExponentDigits;
descriptor: B
flags: (0x0002) ACC_PRIVATE
private int maximumIntegerDigits;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int minimumIntegerDigits;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int maximumFractionDigits;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int minimumFractionDigits;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.math.RoundingMode roundingMode;
descriptor: Ljava/math/RoundingMode;
flags: (0x0002) ACC_PRIVATE
private transient boolean isFastPath;
descriptor: Z
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient boolean fastPathCheckNeeded;
descriptor: Z
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient java.text.DecimalFormat$FastPathData fastPathData;
descriptor: Ljava/text/DecimalFormat$FastPathData;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
static final int currentSerialVersion;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 4
private int serialVersionOnStream;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private static final double MAX_INT_AS_DOUBLE;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2.147483647E9
private static final char PATTERN_ZERO_DIGIT;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 48
private static final char PATTERN_GROUPING_SEPARATOR;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 44
private static final char PATTERN_DECIMAL_SEPARATOR;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 46
private static final char PATTERN_PER_MILLE;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 8240
private static final char PATTERN_PERCENT;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 37
private static final char PATTERN_DIGIT;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 35
private static final char PATTERN_SEPARATOR;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 59
private static final java.lang.String PATTERN_EXPONENT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "E"
private static final char PATTERN_MINUS;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 45
private static final char CURRENCY_SIGN;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 164
private static final char QUOTE;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 39
private static java.text.FieldPosition[] EmptyFieldPositionArray;
descriptor: [Ljava/text/FieldPosition;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static final int DOUBLE_INTEGER_DIGITS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 309
static final int DOUBLE_FRACTION_DIGITS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 340
static final int MAXIMUM_INTEGER_DIGITS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2147483647
static final int MAXIMUM_FRACTION_DIGITS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2147483647
static final long serialVersionUID;
descriptor: J
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 864413376551465018
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Ljava/text/DecimalFormat;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic java.text.DecimalFormat.$assertionsDisabled:Z
3: iconst_0
anewarray java.text.FieldPosition
putstatic java.text.DecimalFormat.EmptyFieldPositionArray:[Ljava/text/FieldPosition;
4: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
invokespecial java.text.NumberFormat.<init>:()V
1: aload 0
new java.text.DigitList
dup
invokespecial java.text.DigitList.<init>:()V
putfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
2: aload 0
ldc ""
putfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
3: aload 0
ldc ""
putfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
4: aload 0
ldc "-"
putfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
5: aload 0
ldc ""
putfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
6: aload 0
iconst_1
putfield java.text.DecimalFormat.multiplier:I
7: aload 0
iconst_3
putfield java.text.DecimalFormat.groupingSize:B
8: aload 0
iconst_0
putfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
9: aload 0
iconst_0
putfield java.text.DecimalFormat.parseBigDecimal:Z
10: aload 0
iconst_0
putfield java.text.DecimalFormat.isCurrencyFormat:Z
11: aload 0
aconst_null
putfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
12: aload 0
aload 0
invokespecial java.text.NumberFormat.getMaximumIntegerDigits:()I
putfield java.text.DecimalFormat.maximumIntegerDigits:I
13: aload 0
aload 0
invokespecial java.text.NumberFormat.getMinimumIntegerDigits:()I
putfield java.text.DecimalFormat.minimumIntegerDigits:I
14: aload 0
aload 0
invokespecial java.text.NumberFormat.getMaximumFractionDigits:()I
putfield java.text.DecimalFormat.maximumFractionDigits:I
15: aload 0
aload 0
invokespecial java.text.NumberFormat.getMinimumFractionDigits:()I
putfield java.text.DecimalFormat.minimumFractionDigits:I
16: aload 0
getstatic java.math.RoundingMode.HALF_EVEN:Ljava/math/RoundingMode;
putfield java.text.DecimalFormat.roundingMode:Ljava/math/RoundingMode;
17: aload 0
iconst_0
putfield java.text.DecimalFormat.isFastPath:Z
18: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
19: aload 0
iconst_4
putfield java.text.DecimalFormat.serialVersionOnStream:I
20: getstatic java.util.Locale$Category.FORMAT:Ljava/util/Locale$Category;
invokestatic java.util.Locale.getDefault:(Ljava/util/Locale$Category;)Ljava/util/Locale;
astore 1
start local 1 21: ldc Ljava/text/spi/NumberFormatProvider;
aload 1
invokestatic sun.util.locale.provider.LocaleProviderAdapter.getAdapter:(Ljava/lang/Class;Ljava/util/Locale;)Lsun/util/locale/provider/LocaleProviderAdapter;
astore 2
start local 2 22: aload 2
instanceof sun.util.locale.provider.ResourceBundleBasedAdapter
ifne 24
23: invokestatic sun.util.locale.provider.LocaleProviderAdapter.getResourceBundleBased:()Lsun/util/locale/provider/LocaleProviderAdapter;
astore 2
24: StackMap locals: java.text.DecimalFormat java.util.Locale sun.util.locale.provider.LocaleProviderAdapter
StackMap stack:
aload 2
aload 1
invokevirtual sun.util.locale.provider.LocaleProviderAdapter.getLocaleResources:(Ljava/util/Locale;)Lsun/util/locale/provider/LocaleResources;
invokevirtual sun.util.locale.provider.LocaleResources.getNumberPatterns:()[Ljava/lang/String;
astore 3
start local 3 25: aload 0
aload 1
invokestatic java.text.DecimalFormatSymbols.getInstance:(Ljava/util/Locale;)Ljava/text/DecimalFormatSymbols;
putfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
26: aload 0
aload 3
iconst_0
aaload
iconst_0
invokevirtual java.text.DecimalFormat.applyPattern:(Ljava/lang/String;Z)V
27: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Ljava/text/DecimalFormat;
21 28 1 def Ljava/util/Locale;
22 28 2 adapter Lsun/util/locale/provider/LocaleProviderAdapter;
25 28 3 all [Ljava/lang/String;
public void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.text.NumberFormat.<init>:()V
1: aload 0
new java.text.DigitList
dup
invokespecial java.text.DigitList.<init>:()V
putfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
2: aload 0
ldc ""
putfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
3: aload 0
ldc ""
putfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
4: aload 0
ldc "-"
putfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
5: aload 0
ldc ""
putfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
6: aload 0
iconst_1
putfield java.text.DecimalFormat.multiplier:I
7: aload 0
iconst_3
putfield java.text.DecimalFormat.groupingSize:B
8: aload 0
iconst_0
putfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
9: aload 0
iconst_0
putfield java.text.DecimalFormat.parseBigDecimal:Z
10: aload 0
iconst_0
putfield java.text.DecimalFormat.isCurrencyFormat:Z
11: aload 0
aconst_null
putfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
12: aload 0
aload 0
invokespecial java.text.NumberFormat.getMaximumIntegerDigits:()I
putfield java.text.DecimalFormat.maximumIntegerDigits:I
13: aload 0
aload 0
invokespecial java.text.NumberFormat.getMinimumIntegerDigits:()I
putfield java.text.DecimalFormat.minimumIntegerDigits:I
14: aload 0
aload 0
invokespecial java.text.NumberFormat.getMaximumFractionDigits:()I
putfield java.text.DecimalFormat.maximumFractionDigits:I
15: aload 0
aload 0
invokespecial java.text.NumberFormat.getMinimumFractionDigits:()I
putfield java.text.DecimalFormat.minimumFractionDigits:I
16: aload 0
getstatic java.math.RoundingMode.HALF_EVEN:Ljava/math/RoundingMode;
putfield java.text.DecimalFormat.roundingMode:Ljava/math/RoundingMode;
17: aload 0
iconst_0
putfield java.text.DecimalFormat.isFastPath:Z
18: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
19: aload 0
iconst_4
putfield java.text.DecimalFormat.serialVersionOnStream:I
20: aload 0
getstatic java.util.Locale$Category.FORMAT:Ljava/util/Locale$Category;
invokestatic java.util.Locale.getDefault:(Ljava/util/Locale$Category;)Ljava/util/Locale;
invokestatic java.text.DecimalFormatSymbols.getInstance:(Ljava/util/Locale;)Ljava/text/DecimalFormatSymbols;
putfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
21: aload 0
aload 1
iconst_0
invokevirtual java.text.DecimalFormat.applyPattern:(Ljava/lang/String;Z)V
22: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Ljava/text/DecimalFormat;
0 23 1 pattern Ljava/lang/String;
MethodParameters:
Name Flags
pattern
public void <init>(java.lang.String, java.text.DecimalFormatSymbols);
descriptor: (Ljava/lang/String;Ljava/text/DecimalFormatSymbols;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.text.NumberFormat.<init>:()V
1: aload 0
new java.text.DigitList
dup
invokespecial java.text.DigitList.<init>:()V
putfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
2: aload 0
ldc ""
putfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
3: aload 0
ldc ""
putfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
4: aload 0
ldc "-"
putfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
5: aload 0
ldc ""
putfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
6: aload 0
iconst_1
putfield java.text.DecimalFormat.multiplier:I
7: aload 0
iconst_3
putfield java.text.DecimalFormat.groupingSize:B
8: aload 0
iconst_0
putfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
9: aload 0
iconst_0
putfield java.text.DecimalFormat.parseBigDecimal:Z
10: aload 0
iconst_0
putfield java.text.DecimalFormat.isCurrencyFormat:Z
11: aload 0
aconst_null
putfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
12: aload 0
aload 0
invokespecial java.text.NumberFormat.getMaximumIntegerDigits:()I
putfield java.text.DecimalFormat.maximumIntegerDigits:I
13: aload 0
aload 0
invokespecial java.text.NumberFormat.getMinimumIntegerDigits:()I
putfield java.text.DecimalFormat.minimumIntegerDigits:I
14: aload 0
aload 0
invokespecial java.text.NumberFormat.getMaximumFractionDigits:()I
putfield java.text.DecimalFormat.maximumFractionDigits:I
15: aload 0
aload 0
invokespecial java.text.NumberFormat.getMinimumFractionDigits:()I
putfield java.text.DecimalFormat.minimumFractionDigits:I
16: aload 0
getstatic java.math.RoundingMode.HALF_EVEN:Ljava/math/RoundingMode;
putfield java.text.DecimalFormat.roundingMode:Ljava/math/RoundingMode;
17: aload 0
iconst_0
putfield java.text.DecimalFormat.isFastPath:Z
18: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
19: aload 0
iconst_4
putfield java.text.DecimalFormat.serialVersionOnStream:I
20: aload 0
aload 2
invokevirtual java.text.DecimalFormatSymbols.clone:()Ljava/lang/Object;
checkcast java.text.DecimalFormatSymbols
putfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
21: aload 0
aload 1
iconst_0
invokevirtual java.text.DecimalFormat.applyPattern:(Ljava/lang/String;Z)V
22: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Ljava/text/DecimalFormat;
0 23 1 pattern Ljava/lang/String;
0 23 2 symbols Ljava/text/DecimalFormatSymbols;
MethodParameters:
Name Flags
pattern
symbols
public final java.lang.StringBuffer format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition);
descriptor: (Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
instanceof java.lang.Long
ifne 6
aload 1
instanceof java.lang.Integer
ifne 6
1: aload 1
instanceof java.lang.Short
ifne 6
aload 1
instanceof java.lang.Byte
ifne 6
2: aload 1
instanceof java.util.concurrent.atomic.AtomicInteger
ifne 6
3: aload 1
instanceof java.util.concurrent.atomic.AtomicLong
ifne 6
4: aload 1
instanceof java.math.BigInteger
ifeq 7
5: aload 1
checkcast java.math.BigInteger
invokevirtual java.math.BigInteger.bitLength:()I
bipush 64
if_icmpge 7
6: StackMap locals:
StackMap stack:
aload 0
aload 1
checkcast java.lang.Number
invokevirtual java.lang.Number.longValue:()J
aload 2
aload 3
invokevirtual java.text.DecimalFormat.format:(JLjava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer;
areturn
7: StackMap locals:
StackMap stack:
aload 1
instanceof java.math.BigDecimal
ifeq 9
8: aload 0
aload 1
checkcast java.math.BigDecimal
aload 2
aload 3
invokevirtual java.text.DecimalFormat.format:(Ljava/math/BigDecimal;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer;
areturn
9: StackMap locals:
StackMap stack:
aload 1
instanceof java.math.BigInteger
ifeq 11
10: aload 0
aload 1
checkcast java.math.BigInteger
aload 2
aload 3
invokevirtual java.text.DecimalFormat.format:(Ljava/math/BigInteger;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer;
areturn
11: StackMap locals:
StackMap stack:
aload 1
instanceof java.lang.Number
ifeq 13
12: aload 0
aload 1
checkcast java.lang.Number
invokevirtual java.lang.Number.doubleValue:()D
aload 2
aload 3
invokevirtual java.text.DecimalFormat.format:(DLjava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer;
areturn
13: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "Cannot format given Object as a Number"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljava/text/DecimalFormat;
0 14 1 number Ljava/lang/Object;
0 14 2 toAppendTo Ljava/lang/StringBuffer;
0 14 3 pos Ljava/text/FieldPosition;
MethodParameters:
Name Flags
number
toAppendTo
pos
public java.lang.StringBuffer format(double, java.lang.StringBuffer, java.text.FieldPosition);
descriptor: (DLjava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 3 start local 4 0: iconst_0
istore 5
start local 5 1: aload 4
getstatic java.text.DontCareFieldPosition.INSTANCE:Ljava/text/FieldPosition;
if_acmpne 3
2: iconst_1
istore 5
goto 5
3: StackMap locals: int
StackMap stack:
aload 4
iconst_0
invokevirtual java.text.FieldPosition.setBeginIndex:(I)V
4: aload 4
iconst_0
invokevirtual java.text.FieldPosition.setEndIndex:(I)V
5: StackMap locals:
StackMap stack:
iload 5
ifeq 10
6: aload 0
dload 1
invokevirtual java.text.DecimalFormat.fastFormat:(D)Ljava/lang/String;
astore 6
start local 6 7: aload 6
ifnull 10
8: aload 3
aload 6
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
9: aload 3
areturn
end local 6 10: StackMap locals:
StackMap stack:
aload 0
dload 1
aload 3
aload 4
invokevirtual java.text.FieldPosition.getFieldDelegate:()Ljava/text/Format$FieldDelegate;
invokevirtual java.text.DecimalFormat.format:(DLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
areturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljava/text/DecimalFormat;
0 11 1 number D
0 11 3 result Ljava/lang/StringBuffer;
0 11 4 fieldPosition Ljava/text/FieldPosition;
1 11 5 tryFastPath Z
7 10 6 tempResult Ljava/lang/String;
MethodParameters:
Name Flags
number
result
fieldPosition
java.lang.StringBuffer format(double, java.lang.StringBuffer, java.text.Format$FieldDelegate);
descriptor: (DLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
flags: (0x0000)
Code:
stack=6, locals=7, args_size=4
start local 0 start local 1 start local 3 start local 4 0: aload 0
dload 1
aload 3
aload 4
invokevirtual java.text.DecimalFormat.handleNaN:(DLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Z
istore 5
start local 5 1: iload 5
ifeq 3
2: aload 3
areturn
3: StackMap locals: int
StackMap stack:
dload 1
dconst_0
dcmpg
iflt 5
dload 1
dconst_0
dcmpl
ifne 4
dconst_1
dload 1
ddiv
dconst_0
dcmpg
iflt 5
StackMap locals:
StackMap stack:
4: iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: aload 0
getfield java.text.DecimalFormat.multiplier:I
ifge 7
iconst_1
goto 8
StackMap locals:
StackMap stack: int
7: iconst_0
StackMap locals: java.text.DecimalFormat double java.lang.StringBuffer java.text.Format$FieldDelegate int
StackMap stack: int int
8: ixor
istore 6
start local 6 9: aload 0
getfield java.text.DecimalFormat.multiplier:I
iconst_1
if_icmpeq 11
10: dload 1
aload 0
getfield java.text.DecimalFormat.multiplier:I
i2d
dmul
dstore 1
11: StackMap locals: int
StackMap stack:
aload 0
dload 1
aload 3
aload 4
iload 6
invokevirtual java.text.DecimalFormat.handleInfinity:(DLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;Z)Z
istore 5
12: iload 5
ifeq 14
13: aload 3
areturn
14: StackMap locals:
StackMap stack:
iload 6
ifeq 16
15: dload 1
dneg
dstore 1
16: StackMap locals:
StackMap stack:
getstatic java.text.DecimalFormat.$assertionsDisabled:Z
ifne 18
dload 1
dconst_0
dcmpl
iflt 17
dload 1
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 18
StackMap locals:
StackMap stack:
17: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
18: StackMap locals:
StackMap stack:
aload 0
dload 1
aload 3
aload 4
iload 6
invokevirtual java.text.DecimalFormat.doubleSubformat:(DLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;Z)Ljava/lang/StringBuffer;
areturn
end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Ljava/text/DecimalFormat;
0 19 1 number D
0 19 3 result Ljava/lang/StringBuffer;
0 19 4 delegate Ljava/text/Format$FieldDelegate;
1 19 5 nanOrInfinity Z
9 19 6 isNegative Z
MethodParameters:
Name Flags
number
result
delegate
boolean handleNaN(double, java.lang.StringBuffer, java.text.Format$FieldDelegate);
descriptor: (DLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Z
flags: (0x0000)
Code:
stack=7, locals=6, args_size=4
start local 0 start local 1 start local 3 start local 4 0: dload 1
invokestatic java.lang.Double.isNaN:(D)Z
ifne 2
1: dload 1
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 8
aload 0
getfield java.text.DecimalFormat.multiplier:I
ifne 8
2: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.StringBuffer.length:()I
istore 5
start local 5 3: aload 3
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getNaN:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
4: aload 4
iconst_0
getstatic java.text.NumberFormat$Field.INTEGER:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.INTEGER:Ljava/text/NumberFormat$Field;
5: iload 5
aload 3
invokevirtual java.lang.StringBuffer.length:()I
aload 3
6: invokeinterface java.text.Format$FieldDelegate.formatted:(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
7: iconst_1
ireturn
end local 5 8: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/text/DecimalFormat;
0 9 1 number D
0 9 3 result Ljava/lang/StringBuffer;
0 9 4 delegate Ljava/text/Format$FieldDelegate;
3 8 5 iFieldStart I
MethodParameters:
Name Flags
number
result
delegate
boolean handleInfinity(double, java.lang.StringBuffer, java.text.Format$FieldDelegate, boolean);
descriptor: (DLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;Z)Z
flags: (0x0000)
Code:
stack=7, locals=7, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: dload 1
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 23
1: iload 5
ifeq 6
2: aload 0
aload 3
aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
aload 4
3: aload 0
invokevirtual java.text.DecimalFormat.getNegativePrefixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
4: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
5: goto 9
6: StackMap locals:
StackMap stack:
aload 0
aload 3
aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
aload 4
7: aload 0
invokevirtual java.text.DecimalFormat.getPositivePrefixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
8: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
9: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.StringBuffer.length:()I
istore 6
start local 6 10: aload 3
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getInfinity:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
11: aload 4
iconst_0
getstatic java.text.NumberFormat$Field.INTEGER:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.INTEGER:Ljava/text/NumberFormat$Field;
12: iload 6
aload 3
invokevirtual java.lang.StringBuffer.length:()I
aload 3
13: invokeinterface java.text.Format$FieldDelegate.formatted:(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
14: iload 5
ifeq 19
15: aload 0
aload 3
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
aload 4
16: aload 0
invokevirtual java.text.DecimalFormat.getNegativeSuffixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
17: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
18: goto 22
19: StackMap locals: int
StackMap stack:
aload 0
aload 3
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
aload 4
20: aload 0
invokevirtual java.text.DecimalFormat.getPositiveSuffixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
21: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
22: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 6 23: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Ljava/text/DecimalFormat;
0 24 1 number D
0 24 3 result Ljava/lang/StringBuffer;
0 24 4 delegate Ljava/text/Format$FieldDelegate;
0 24 5 isNegative Z
10 23 6 iFieldStart I
MethodParameters:
Name Flags
number
result
delegate
isNegative
java.lang.StringBuffer doubleSubformat(double, java.lang.StringBuffer, java.text.Format$FieldDelegate, boolean);
descriptor: (DLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;Z)Ljava/lang/StringBuffer;
flags: (0x0000)
Code:
stack=9, locals=11, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
dup
astore 6
monitorenter
1: aload 0
invokespecial java.text.NumberFormat.getMaximumIntegerDigits:()I
istore 7
start local 7 2: aload 0
invokespecial java.text.NumberFormat.getMinimumIntegerDigits:()I
istore 8
start local 8 3: aload 0
invokespecial java.text.NumberFormat.getMaximumFractionDigits:()I
istore 9
start local 9 4: aload 0
invokespecial java.text.NumberFormat.getMinimumFractionDigits:()I
istore 10
start local 10 5: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iload 5
dload 1
aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 7
6: iload 7
iload 9
iadd
goto 8
StackMap locals: java.text.DecimalFormat double java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList int int int int
StackMap stack: java.text.DigitList int double
7: iload 9
8: StackMap locals: java.text.DecimalFormat double java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList int int int int
StackMap stack: java.text.DigitList int double int
aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 9
iconst_0
goto 10
StackMap locals: java.text.DecimalFormat double java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList int int int int
StackMap stack: java.text.DigitList int double int
9: iconst_1
10: StackMap locals: java.text.DecimalFormat double java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList int int int int
StackMap stack: java.text.DigitList int double int int
invokevirtual java.text.DigitList.set:(ZDIZ)V
11: aload 0
aload 3
aload 4
iload 5
iconst_0
12: iload 7
iload 8
iload 9
iload 10
13: invokevirtual java.text.DecimalFormat.subformat:(Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;ZZIIII)Ljava/lang/StringBuffer;
aload 6
monitorexit
14: areturn
end local 10 end local 9 end local 8 end local 7 15: StackMap locals: java.text.DecimalFormat double java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList
StackMap stack: java.lang.Throwable
aload 6
monitorexit
16: athrow
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljava/text/DecimalFormat;
0 17 1 number D
0 17 3 result Ljava/lang/StringBuffer;
0 17 4 delegate Ljava/text/Format$FieldDelegate;
0 17 5 isNegative Z
2 15 7 maxIntDigits I
3 15 8 minIntDigits I
4 15 9 maxFraDigits I
5 15 10 minFraDigits I
Exception table:
from to target type
1 14 15 any
15 16 15 any
MethodParameters:
Name Flags
number
result
delegate
isNegative
public java.lang.StringBuffer format(long, java.lang.StringBuffer, java.text.FieldPosition);
descriptor: (JLjava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 3 start local 4 0: aload 4
iconst_0
invokevirtual java.text.FieldPosition.setBeginIndex:(I)V
1: aload 4
iconst_0
invokevirtual java.text.FieldPosition.setEndIndex:(I)V
2: aload 0
lload 1
aload 3
aload 4
invokevirtual java.text.FieldPosition.getFieldDelegate:()Ljava/text/Format$FieldDelegate;
invokevirtual java.text.DecimalFormat.format:(JLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
areturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/text/DecimalFormat;
0 3 1 number J
0 3 3 result Ljava/lang/StringBuffer;
0 3 4 fieldPosition Ljava/text/FieldPosition;
MethodParameters:
Name Flags
number
result
fieldPosition
java.lang.StringBuffer format(long, java.lang.StringBuffer, java.text.Format$FieldDelegate);
descriptor: (JLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
flags: (0x0000)
Code:
stack=9, locals=12, args_size=4
start local 0 start local 1 start local 3 start local 4 0: lload 1
lconst_0
lcmp
ifge 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: istore 5
start local 5 3: iload 5
ifeq 5
4: lload 1
lneg
lstore 1
5: StackMap locals: int
StackMap stack:
iconst_0
istore 6
start local 6 6: lload 1
lconst_0
lcmp
ifge 10
7: aload 0
getfield java.text.DecimalFormat.multiplier:I
ifeq 17
8: iconst_1
istore 6
9: goto 17
StackMap locals: int
StackMap stack:
10: aload 0
getfield java.text.DecimalFormat.multiplier:I
iconst_1
if_icmpeq 17
aload 0
getfield java.text.DecimalFormat.multiplier:I
ifeq 17
11: ldc 9223372036854775807
aload 0
getfield java.text.DecimalFormat.multiplier:I
i2l
ldiv
lstore 7
start local 7 12: lload 7
lconst_0
lcmp
ifge 14
13: lload 7
lneg
lstore 7
14: StackMap locals: long
StackMap stack:
lload 1
lload 7
lcmp
ifle 15
iconst_1
goto 16
StackMap locals:
StackMap stack:
15: iconst_0
StackMap locals:
StackMap stack: int
16: istore 6
end local 7 17: StackMap locals:
StackMap stack:
iload 6
ifeq 22
18: iload 5
ifeq 20
19: lload 1
lneg
lstore 1
20: StackMap locals:
StackMap stack:
lload 1
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
astore 7
start local 7 21: aload 0
aload 7
aload 3
aload 4
iconst_1
invokevirtual java.text.DecimalFormat.format:(Ljava/math/BigInteger;Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;Z)Ljava/lang/StringBuffer;
areturn
end local 7 22: StackMap locals:
StackMap stack:
lload 1
aload 0
getfield java.text.DecimalFormat.multiplier:I
i2l
lmul
lstore 1
23: lload 1
lconst_0
lcmp
ifne 26
24: iconst_0
istore 5
25: goto 31
26: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.multiplier:I
ifge 31
27: lload 1
lneg
lstore 1
28: iload 5
ifeq 29
iconst_0
goto 30
StackMap locals:
StackMap stack:
29: iconst_1
StackMap locals:
StackMap stack: int
30: istore 5
31: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
dup
astore 7
monitorenter
32: aload 0
invokespecial java.text.NumberFormat.getMaximumIntegerDigits:()I
istore 8
start local 8 33: aload 0
invokespecial java.text.NumberFormat.getMinimumIntegerDigits:()I
istore 9
start local 9 34: aload 0
invokespecial java.text.NumberFormat.getMaximumFractionDigits:()I
istore 10
start local 10 35: aload 0
invokespecial java.text.NumberFormat.getMinimumFractionDigits:()I
istore 11
start local 11 36: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iload 5
lload 1
37: aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 38
iload 8
iload 10
iadd
goto 39
StackMap locals: java.text.DecimalFormat long java.lang.StringBuffer java.text.Format$FieldDelegate int int java.text.DigitList int int int int
StackMap stack: java.text.DigitList int long
38: iconst_0
39: StackMap locals: java.text.DecimalFormat long java.lang.StringBuffer java.text.Format$FieldDelegate int int java.text.DigitList int int int int
StackMap stack: java.text.DigitList int long int
invokevirtual java.text.DigitList.set:(ZJI)V
40: aload 0
aload 3
aload 4
iload 5
iconst_1
41: iload 8
iload 9
iload 10
iload 11
42: invokevirtual java.text.DecimalFormat.subformat:(Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;ZZIIII)Ljava/lang/StringBuffer;
aload 7
monitorexit
43: areturn
end local 11 end local 10 end local 9 end local 8 44: StackMap locals: java.text.DecimalFormat long java.lang.StringBuffer java.text.Format$FieldDelegate int int java.text.DigitList
StackMap stack: java.lang.Throwable
aload 7
monitorexit
45: athrow
end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 46 0 this Ljava/text/DecimalFormat;
0 46 1 number J
0 46 3 result Ljava/lang/StringBuffer;
0 46 4 delegate Ljava/text/Format$FieldDelegate;
3 46 5 isNegative Z
6 46 6 useBigInteger Z
12 17 7 cutoff J
21 22 7 bigIntegerValue Ljava/math/BigInteger;
33 44 8 maxIntDigits I
34 44 9 minIntDigits I
35 44 10 maxFraDigits I
36 44 11 minFraDigits I
Exception table:
from to target type
32 43 44 any
44 45 44 any
MethodParameters:
Name Flags
number
result
delegate
private java.lang.StringBuffer format(java.math.BigDecimal, java.lang.StringBuffer, java.text.FieldPosition);
descriptor: (Ljava/math/BigDecimal;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
iconst_0
invokevirtual java.text.FieldPosition.setBeginIndex:(I)V
1: aload 3
iconst_0
invokevirtual java.text.FieldPosition.setEndIndex:(I)V
2: aload 0
aload 1
aload 2
aload 3
invokevirtual java.text.FieldPosition.getFieldDelegate:()Ljava/text/Format$FieldDelegate;
invokevirtual java.text.DecimalFormat.format:(Ljava/math/BigDecimal;Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/text/DecimalFormat;
0 3 1 number Ljava/math/BigDecimal;
0 3 2 result Ljava/lang/StringBuffer;
0 3 3 fieldPosition Ljava/text/FieldPosition;
MethodParameters:
Name Flags
number
result
fieldPosition
java.lang.StringBuffer format(java.math.BigDecimal, java.lang.StringBuffer, java.text.Format$FieldDelegate);
descriptor: (Ljava/math/BigDecimal;Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
flags: (0x0000)
Code:
stack=9, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield java.text.DecimalFormat.multiplier:I
iconst_1
if_icmpeq 2
1: aload 1
aload 0
invokevirtual java.text.DecimalFormat.getBigDecimalMultiplier:()Ljava/math/BigDecimal;
invokevirtual java.math.BigDecimal.multiply:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
astore 1
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.math.BigDecimal.signum:()I
iconst_m1
if_icmpne 3
iconst_1
goto 4
StackMap locals:
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: istore 4
start local 4 5: iload 4
ifeq 7
6: aload 1
invokevirtual java.math.BigDecimal.negate:()Ljava/math/BigDecimal;
astore 1
7: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
dup
astore 5
monitorenter
8: aload 0
invokevirtual java.text.DecimalFormat.getMaximumIntegerDigits:()I
istore 6
start local 6 9: aload 0
invokevirtual java.text.DecimalFormat.getMinimumIntegerDigits:()I
istore 7
start local 7 10: aload 0
invokevirtual java.text.DecimalFormat.getMaximumFractionDigits:()I
istore 8
start local 8 11: aload 0
invokevirtual java.text.DecimalFormat.getMinimumFractionDigits:()I
istore 9
start local 9 12: iload 6
iload 8
iadd
istore 10
start local 10 13: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iload 4
aload 1
aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 16
14: iload 10
ifge 15
ldc 2147483647
goto 17
StackMap locals: java.text.DecimalFormat java.math.BigDecimal java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList int int int int int
StackMap stack: java.text.DigitList int java.math.BigDecimal
15: iload 10
goto 17
16: StackMap locals: java.text.DecimalFormat java.math.BigDecimal java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList int int int int int
StackMap stack: java.text.DigitList int java.math.BigDecimal
iload 8
StackMap locals: java.text.DecimalFormat java.math.BigDecimal java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList int int int int int
StackMap stack: java.text.DigitList int java.math.BigDecimal int
17: aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 18
iconst_0
goto 19
StackMap locals: java.text.DecimalFormat java.math.BigDecimal java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList int int int int int
StackMap stack: java.text.DigitList int java.math.BigDecimal int
18: iconst_1
19: StackMap locals: java.text.DecimalFormat java.math.BigDecimal java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList int int int int int
StackMap stack: java.text.DigitList int java.math.BigDecimal int int
invokevirtual java.text.DigitList.set:(ZLjava/math/BigDecimal;IZ)V
20: aload 0
aload 2
aload 3
iload 4
iconst_0
21: iload 6
iload 7
iload 8
iload 9
22: invokevirtual java.text.DecimalFormat.subformat:(Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;ZZIIII)Ljava/lang/StringBuffer;
aload 5
monitorexit
23: areturn
end local 10 end local 9 end local 8 end local 7 end local 6 24: StackMap locals: java.text.DecimalFormat java.math.BigDecimal java.lang.StringBuffer java.text.Format$FieldDelegate int java.text.DigitList
StackMap stack: java.lang.Throwable
aload 5
monitorexit
25: athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Ljava/text/DecimalFormat;
0 26 1 number Ljava/math/BigDecimal;
0 26 2 result Ljava/lang/StringBuffer;
0 26 3 delegate Ljava/text/Format$FieldDelegate;
5 26 4 isNegative Z
9 24 6 maxIntDigits I
10 24 7 minIntDigits I
11 24 8 maxFraDigits I
12 24 9 minFraDigits I
13 24 10 maximumDigits I
Exception table:
from to target type
8 23 24 any
24 25 24 any
MethodParameters:
Name Flags
number
result
delegate
private java.lang.StringBuffer format(java.math.BigInteger, java.lang.StringBuffer, java.text.FieldPosition);
descriptor: (Ljava/math/BigInteger;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;)Ljava/lang/StringBuffer;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
iconst_0
invokevirtual java.text.FieldPosition.setBeginIndex:(I)V
1: aload 3
iconst_0
invokevirtual java.text.FieldPosition.setEndIndex:(I)V
2: aload 0
aload 1
aload 2
aload 3
invokevirtual java.text.FieldPosition.getFieldDelegate:()Ljava/text/Format$FieldDelegate;
iconst_0
invokevirtual java.text.DecimalFormat.format:(Ljava/math/BigInteger;Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;Z)Ljava/lang/StringBuffer;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/text/DecimalFormat;
0 3 1 number Ljava/math/BigInteger;
0 3 2 result Ljava/lang/StringBuffer;
0 3 3 fieldPosition Ljava/text/FieldPosition;
MethodParameters:
Name Flags
number
result
fieldPosition
java.lang.StringBuffer format(java.math.BigInteger, java.lang.StringBuffer, java.text.Format$FieldDelegate, boolean);
descriptor: (Ljava/math/BigInteger;Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;Z)Ljava/lang/StringBuffer;
flags: (0x0000)
Code:
stack=9, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield java.text.DecimalFormat.multiplier:I
iconst_1
if_icmpeq 2
1: aload 1
aload 0
invokevirtual java.text.DecimalFormat.getBigIntegerMultiplier:()Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.multiply:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.math.BigInteger.signum:()I
iconst_m1
if_icmpne 3
iconst_1
goto 4
StackMap locals:
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: istore 5
start local 5 5: iload 5
ifeq 7
6: aload 1
invokevirtual java.math.BigInteger.negate:()Ljava/math/BigInteger;
astore 1
7: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
dup
astore 6
monitorenter
8: iload 4
ifeq 15
9: aload 0
invokespecial java.text.NumberFormat.getMaximumIntegerDigits:()I
istore 7
start local 7 10: aload 0
invokespecial java.text.NumberFormat.getMinimumIntegerDigits:()I
istore 8
start local 8 11: aload 0
invokespecial java.text.NumberFormat.getMaximumFractionDigits:()I
istore 9
start local 9 12: aload 0
invokespecial java.text.NumberFormat.getMinimumFractionDigits:()I
istore 10
start local 10 13: iload 7
iload 9
iadd
istore 11
start local 11 14: goto 22
end local 11 end local 10 end local 9 end local 8 end local 7 15: StackMap locals: java.text.DigitList
StackMap stack:
aload 0
invokevirtual java.text.DecimalFormat.getMaximumIntegerDigits:()I
istore 7
start local 7 16: aload 0
invokevirtual java.text.DecimalFormat.getMinimumIntegerDigits:()I
istore 8
start local 8 17: aload 0
invokevirtual java.text.DecimalFormat.getMaximumFractionDigits:()I
istore 9
start local 9 18: aload 0
invokevirtual java.text.DecimalFormat.getMinimumFractionDigits:()I
istore 10
start local 10 19: iload 7
iload 9
iadd
istore 11
start local 11 20: iload 11
ifge 22
21: ldc 2147483647
istore 11
22: StackMap locals: java.text.DecimalFormat java.math.BigInteger java.lang.StringBuffer java.text.Format$FieldDelegate int int java.text.DigitList int int int int int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iload 5
aload 1
23: aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 24
iload 11
goto 25
StackMap locals: java.text.DecimalFormat java.math.BigInteger java.lang.StringBuffer java.text.Format$FieldDelegate int int java.text.DigitList int int int int int
StackMap stack: java.text.DigitList int java.math.BigInteger
24: iconst_0
25: StackMap locals: java.text.DecimalFormat java.math.BigInteger java.lang.StringBuffer java.text.Format$FieldDelegate int int java.text.DigitList int int int int int
StackMap stack: java.text.DigitList int java.math.BigInteger int
invokevirtual java.text.DigitList.set:(ZLjava/math/BigInteger;I)V
26: aload 0
aload 2
aload 3
iload 5
iconst_1
27: iload 7
iload 8
iload 9
iload 10
28: invokevirtual java.text.DecimalFormat.subformat:(Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;ZZIIII)Ljava/lang/StringBuffer;
aload 6
monitorexit
29: areturn
end local 11 end local 10 end local 9 end local 8 end local 7 30: StackMap locals: java.text.DecimalFormat java.math.BigInteger java.lang.StringBuffer java.text.Format$FieldDelegate int int java.text.DigitList
StackMap stack: java.lang.Throwable
aload 6
monitorexit
31: athrow
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 32 0 this Ljava/text/DecimalFormat;
0 32 1 number Ljava/math/BigInteger;
0 32 2 result Ljava/lang/StringBuffer;
0 32 3 delegate Ljava/text/Format$FieldDelegate;
0 32 4 formatLong Z
5 32 5 isNegative Z
10 15 7 maxIntDigits I
16 30 7 maxIntDigits I
11 15 8 minIntDigits I
17 30 8 minIntDigits I
12 15 9 maxFraDigits I
18 30 9 maxFraDigits I
13 15 10 minFraDigits I
19 30 10 minFraDigits I
14 15 11 maximumDigits I
20 30 11 maximumDigits I
Exception table:
from to target type
8 29 30 any
30 31 30 any
MethodParameters:
Name Flags
number
result
delegate
formatLong
public java.text.AttributedCharacterIterator formatToCharacterIterator(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/text/AttributedCharacterIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: new java.text.CharacterIteratorFieldDelegate
dup
invokespecial java.text.CharacterIteratorFieldDelegate.<init>:()V
1: astore 2
start local 2 2: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 3
start local 3 3: aload 1
instanceof java.lang.Double
ifne 4
aload 1
instanceof java.lang.Float
ifeq 6
4: StackMap locals: java.text.CharacterIteratorFieldDelegate java.lang.StringBuffer
StackMap stack:
aload 0
aload 1
checkcast java.lang.Number
invokevirtual java.lang.Number.doubleValue:()D
aload 3
aload 2
invokevirtual java.text.DecimalFormat.format:(DLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
pop
5: goto 24
StackMap locals:
StackMap stack:
6: aload 1
instanceof java.lang.Long
ifne 9
aload 1
instanceof java.lang.Integer
ifne 9
7: aload 1
instanceof java.lang.Short
ifne 9
aload 1
instanceof java.lang.Byte
ifne 9
8: aload 1
instanceof java.util.concurrent.atomic.AtomicInteger
ifne 9
aload 1
instanceof java.util.concurrent.atomic.AtomicLong
ifeq 11
9: StackMap locals:
StackMap stack:
aload 0
aload 1
checkcast java.lang.Number
invokevirtual java.lang.Number.longValue:()J
aload 3
aload 2
invokevirtual java.text.DecimalFormat.format:(JLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
pop
10: goto 24
StackMap locals:
StackMap stack:
11: aload 1
instanceof java.math.BigDecimal
ifeq 14
12: aload 0
aload 1
checkcast java.math.BigDecimal
aload 3
aload 2
invokevirtual java.text.DecimalFormat.format:(Ljava/math/BigDecimal;Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
pop
13: goto 24
StackMap locals:
StackMap stack:
14: aload 1
instanceof java.math.BigInteger
ifeq 17
15: aload 0
aload 1
checkcast java.math.BigInteger
aload 3
aload 2
iconst_0
invokevirtual java.text.DecimalFormat.format:(Ljava/math/BigInteger;Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;Z)Ljava/lang/StringBuffer;
pop
16: goto 24
StackMap locals:
StackMap stack:
17: aload 1
ifnonnull 21
18: new java.lang.NullPointerException
dup
19: ldc "formatToCharacterIterator must be passed non-null object"
20: invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
22: ldc "Cannot format given Object as a Number"
23: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
24: StackMap locals:
StackMap stack:
aload 2
aload 3
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
invokevirtual java.text.CharacterIteratorFieldDelegate.getIterator:(Ljava/lang/String;)Ljava/text/AttributedCharacterIterator;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Ljava/text/DecimalFormat;
0 25 1 obj Ljava/lang/Object;
2 25 2 delegate Ljava/text/CharacterIteratorFieldDelegate;
3 25 3 sb Ljava/lang/StringBuffer;
MethodParameters:
Name Flags
obj
private boolean checkAndSetFastPathStatus();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.isFastPath:Z
istore 1
start local 1 1: aload 0
getfield java.text.DecimalFormat.roundingMode:Ljava/math/RoundingMode;
getstatic java.math.RoundingMode.HALF_EVEN:Ljava/math/RoundingMode;
if_acmpne 21
2: aload 0
invokevirtual java.text.DecimalFormat.isGroupingUsed:()Z
ifeq 21
3: aload 0
getfield java.text.DecimalFormat.groupingSize:B
iconst_3
if_icmpne 21
4: aload 0
getfield java.text.DecimalFormat.multiplier:I
iconst_1
if_icmpne 21
5: aload 0
getfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
ifne 21
6: aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifne 21
7: aload 0
aload 0
getfield java.text.DecimalFormat.minimumIntegerDigits:I
iconst_1
if_icmpne 9
8: aload 0
getfield java.text.DecimalFormat.maximumIntegerDigits:I
bipush 10
if_icmplt 9
iconst_1
goto 10
StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat
9: iconst_0
10: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat int
putfield java.text.DecimalFormat.isFastPath:Z
11: aload 0
getfield java.text.DecimalFormat.isFastPath:Z
ifeq 22
12: aload 0
getfield java.text.DecimalFormat.isCurrencyFormat:Z
ifeq 17
13: aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
iconst_2
if_icmpne 15
14: aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
iconst_2
if_icmpeq 22
15: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield java.text.DecimalFormat.isFastPath:Z
16: goto 22
StackMap locals:
StackMap stack:
17: aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
ifne 19
18: aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
iconst_3
if_icmpeq 22
19: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield java.text.DecimalFormat.isFastPath:Z
20: goto 22
21: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield java.text.DecimalFormat.isFastPath:Z
22: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual java.text.DecimalFormat.resetFastPathData:(Z)V
23: aload 0
iconst_0
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
24: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Ljava/text/DecimalFormat;
1 25 1 fastPathWasOn Z
private void resetFastPathData(boolean);
descriptor: (Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield java.text.DecimalFormat.isFastPath:Z
ifeq 54
1: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
ifnonnull 3
2: aload 0
new java.text.DecimalFormat$FastPathData
dup
invokespecial java.text.DecimalFormat$FastPathData.<init>:()V
putfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
3: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getZeroDigit:()C
bipush 48
isub
putfield java.text.DecimalFormat$FastPathData.zeroDelta:I
4: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getGroupingSeparator:()C
putfield java.text.DecimalFormat$FastPathData.groupingChar:C
5: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aload 0
getfield java.text.DecimalFormat.isCurrencyFormat:Z
ifeq 7
6: bipush 99
goto 8
StackMap locals:
StackMap stack: java.text.DecimalFormat$FastPathData
7: sipush 999
8: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat$FastPathData int
putfield java.text.DecimalFormat$FastPathData.fractionalMaxIntBound:I
9: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aload 0
getfield java.text.DecimalFormat.isCurrencyFormat:Z
ifeq 11
10: ldc 100.0
goto 12
StackMap locals:
StackMap stack: java.text.DecimalFormat$FastPathData
11: ldc 1000.0
12: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat$FastPathData double
putfield java.text.DecimalFormat$FastPathData.fractionalScaleFactor:D
13: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
14: aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifeq 15
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifeq 15
iconst_0
goto 16
StackMap locals:
StackMap stack: java.text.DecimalFormat$FastPathData
15: iconst_1
16: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat$FastPathData int
putfield java.text.DecimalFormat$FastPathData.positiveAffixesRequired:Z
17: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
18: aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifeq 19
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifeq 19
iconst_0
goto 20
StackMap locals:
StackMap stack: java.text.DecimalFormat$FastPathData
19: iconst_1
20: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat$FastPathData int
putfield java.text.DecimalFormat$FastPathData.negativeAffixesRequired:Z
21: bipush 10
istore 2
start local 2 22: iconst_3
istore 3
start local 3 23: aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
invokestatic java.lang.Math.max:(II)I
24: iload 2
25: iadd
26: iload 3
27: iadd
28: iconst_1
29: iadd
30: aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
31: iadd
32: aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
invokestatic java.lang.Math.max:(II)I
33: iadd
34: istore 4
start local 4 35: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
iload 4
newarray 5
putfield java.text.DecimalFormat$FastPathData.fastPathContainer:[C
36: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
putfield java.text.DecimalFormat$FastPathData.charsPositiveSuffix:[C
37: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
putfield java.text.DecimalFormat$FastPathData.charsNegativeSuffix:[C
38: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
putfield java.text.DecimalFormat$FastPathData.charsPositivePrefix:[C
39: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
putfield java.text.DecimalFormat$FastPathData.charsNegativePrefix:[C
40: aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
41: aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
42: invokestatic java.lang.Math.max:(II)I
43: istore 5
start local 5 44: iload 2
iload 3
iadd
iload 5
iadd
45: istore 6
start local 6 46: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
iload 6
iconst_1
isub
putfield java.text.DecimalFormat$FastPathData.integralLastIndex:I
47: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
iload 6
iconst_1
iadd
putfield java.text.DecimalFormat$FastPathData.fractionalFirstIndex:I
48: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.fastPathContainer:[C
iload 6
49: aload 0
getfield java.text.DecimalFormat.isCurrencyFormat:Z
ifeq 51
50: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMonetaryDecimalSeparator:()C
goto 52
51: StackMap locals: java.text.DecimalFormat int int int int int int
StackMap stack: char[] int
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDecimalSeparator:()C
52: StackMap locals: java.text.DecimalFormat int int int int int int
StackMap stack: char[] int int
castore
end local 6 end local 5 end local 4 end local 3 end local 2 53: goto 60
StackMap locals: java.text.DecimalFormat int
StackMap stack:
54: iload 1
ifeq 60
55: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aconst_null
putfield java.text.DecimalFormat$FastPathData.fastPathContainer:[C
56: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aconst_null
putfield java.text.DecimalFormat$FastPathData.charsPositiveSuffix:[C
57: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aconst_null
putfield java.text.DecimalFormat$FastPathData.charsNegativeSuffix:[C
58: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aconst_null
putfield java.text.DecimalFormat$FastPathData.charsPositivePrefix:[C
59: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
aconst_null
putfield java.text.DecimalFormat$FastPathData.charsNegativePrefix:[C
60: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 61 0 this Ljava/text/DecimalFormat;
0 61 1 fastPathWasOn Z
22 53 2 maxNbIntegralDigits I
23 53 3 maxNbGroups I
35 53 4 containerSize I
44 53 5 longestPrefixLength I
46 53 6 decimalPointIndex I
MethodParameters:
Name Flags
fastPathWasOn
private boolean exactRoundUp(double, int);
descriptor: (DI)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=28, args_size=3
start local 0 start local 1 start local 3 0: dconst_0
dstore 10
start local 10 1: dconst_0
dstore 12
start local 12 2: dconst_0
dstore 14
start local 14 3: aload 0
getfield java.text.DecimalFormat.isCurrencyFormat:Z
ifeq 8
4: dload 1
ldc 128.0
dmul
dstore 4
start local 4 5: dload 1
ldc 32.0
dmul
dneg
dstore 6
start local 6 6: dload 1
ldc 4.0
dmul
dstore 8
start local 8 7: goto 11
end local 8 end local 6 end local 4 8: StackMap locals: java.text.DecimalFormat double int top top top top top top double double double
StackMap stack:
dload 1
ldc 1024.0
dmul
dstore 4
start local 4 9: dload 1
ldc 16.0
dmul
dneg
dstore 6
start local 6 10: dload 1
ldc 8.0
dmul
dneg
dstore 8
start local 8 11: StackMap locals: java.text.DecimalFormat double int double double double double double double
StackMap stack:
getstatic java.text.DecimalFormat.$assertionsDisabled:Z
ifne 12
dload 6
dneg
dload 8
invokestatic java.lang.Math.abs:(D)D
dcmpl
ifge 12
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
12: StackMap locals:
StackMap stack:
dload 6
dload 8
dadd
dstore 10
13: dload 10
dload 6
dsub
dstore 14
14: dload 8
dload 14
dsub
dstore 12
15: dload 10
dstore 16
start local 16 16: dload 12
dstore 18
start local 18 17: getstatic java.text.DecimalFormat.$assertionsDisabled:Z
ifne 18
dload 4
dload 16
invokestatic java.lang.Math.abs:(D)D
dcmpl
ifge 18
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
18: StackMap locals: double double
StackMap stack:
dload 4
dload 16
dadd
dstore 10
19: dload 10
dload 4
dsub
dstore 14
20: dload 16
dload 14
dsub
dstore 12
21: dload 12
dstore 20
start local 20 22: dload 10
dstore 22
start local 22 23: dload 18
dload 20
dadd
dstore 24
start local 24 24: getstatic java.text.DecimalFormat.$assertionsDisabled:Z
ifne 25
dload 22
dload 24
invokestatic java.lang.Math.abs:(D)D
dcmpl
ifge 25
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
25: StackMap locals: double double double
StackMap stack:
dload 22
dload 24
dadd
dstore 10
26: dload 10
dload 22
dsub
dstore 14
27: dload 24
dload 14
dsub
dstore 26
start local 26 28: dload 26
dconst_0
dcmpl
ifle 30
29: iconst_1
ireturn
30: StackMap locals: double
StackMap stack:
dload 26
dconst_0
dcmpg
ifge 32
31: iconst_0
ireturn
32: StackMap locals:
StackMap stack:
iload 3
iconst_1
iand
ifeq 34
33: iconst_1
ireturn
34: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 26 end local 24 end local 22 end local 20 end local 18 end local 16 end local 14 end local 12 end local 10 end local 8 end local 6 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Ljava/text/DecimalFormat;
0 35 1 fractionalPart D
0 35 3 scaledFractionalPartAsInt I
5 8 4 approxMax D
9 35 4 approxMax D
6 8 6 approxMedium D
10 35 6 approxMedium D
7 8 8 approxMin D
11 35 8 approxMin D
1 35 10 fastTwoSumApproximation D
2 35 12 fastTwoSumRoundOff D
3 35 14 bVirtual D
16 35 16 approxS1 D
17 35 18 roundoffS1 D
22 35 20 roundoff1000 D
23 35 22 approx1000 D
24 35 24 roundoffTotal D
28 35 26 scaledFractionalRoundoff D
MethodParameters:
Name Flags
fractionalPart
scaledFractionalPartAsInt
private void collectIntegralDigits(int, char[], int);
descriptor: (I[CI)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
istore 4
start local 4 1: goto 9
2: StackMap locals: int
StackMap stack:
iload 1
sipush 1000
idiv
istore 5
start local 5 3: iload 1
iload 5
bipush 10
ishl
isub
iload 5
iconst_4
ishl
iadd
iload 5
iconst_3
ishl
iadd
istore 6
start local 6 4: iload 5
istore 1
5: aload 2
iload 4
iinc 4 -1
getstatic java.text.DecimalFormat$DigitArrays.DigitOnes1000:[C
iload 6
caload
castore
6: aload 2
iload 4
iinc 4 -1
getstatic java.text.DecimalFormat$DigitArrays.DigitTens1000:[C
iload 6
caload
castore
7: aload 2
iload 4
iinc 4 -1
getstatic java.text.DecimalFormat$DigitArrays.DigitHundreds1000:[C
iload 6
caload
castore
8: aload 2
iload 4
iinc 4 -1
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.groupingChar:C
castore
end local 6 end local 5 9: StackMap locals:
StackMap stack:
iload 1
sipush 999
if_icmpgt 2
10: aload 2
iload 4
getstatic java.text.DecimalFormat$DigitArrays.DigitOnes1000:[C
iload 1
caload
castore
11: iload 1
bipush 9
if_icmple 15
12: aload 2
iinc 4 -1
iload 4
getstatic java.text.DecimalFormat$DigitArrays.DigitTens1000:[C
iload 1
caload
castore
13: iload 1
bipush 99
if_icmple 15
14: aload 2
iinc 4 -1
iload 4
getstatic java.text.DecimalFormat$DigitArrays.DigitHundreds1000:[C
iload 1
caload
castore
15: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
iload 4
putfield java.text.DecimalFormat$FastPathData.firstUsedIndex:I
16: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljava/text/DecimalFormat;
0 17 1 number I
0 17 2 digitsBuffer [C
0 17 3 backwardIndex I
1 17 4 index I
3 9 5 q I
4 9 6 r I
MethodParameters:
Name Flags
number
digitsBuffer
backwardIndex
private void collectFractionalDigits(int, char[], int);
descriptor: (I[CI)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
istore 4
start local 4 1: getstatic java.text.DecimalFormat$DigitArrays.DigitOnes1000:[C
iload 1
caload
istore 5
start local 5 2: getstatic java.text.DecimalFormat$DigitArrays.DigitTens1000:[C
iload 1
caload
istore 6
start local 6 3: aload 0
getfield java.text.DecimalFormat.isCurrencyFormat:Z
ifeq 7
4: aload 2
iload 4
iinc 4 1
iload 6
castore
5: aload 2
iload 4
iinc 4 1
iload 5
castore
6: goto 17
StackMap locals: int int int
StackMap stack:
7: iload 1
ifeq 16
8: aload 2
iload 4
iinc 4 1
getstatic java.text.DecimalFormat$DigitArrays.DigitHundreds1000:[C
iload 1
caload
castore
9: iload 5
bipush 48
if_icmpeq 13
10: aload 2
iload 4
iinc 4 1
iload 6
castore
11: aload 2
iload 4
iinc 4 1
iload 5
castore
12: goto 17
StackMap locals:
StackMap stack:
13: iload 6
bipush 48
if_icmpeq 17
14: aload 2
iload 4
iinc 4 1
iload 6
castore
15: goto 17
16: StackMap locals:
StackMap stack:
iinc 4 -1
17: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
iload 4
putfield java.text.DecimalFormat$FastPathData.lastFreeIndex:I
18: return
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 19 0 this Ljava/text/DecimalFormat;
0 19 1 number I
0 19 2 digitsBuffer [C
0 19 3 startIndex I
1 19 4 index I
2 19 5 digitOnes C
3 19 6 digitTens C
MethodParameters:
Name Flags
number
digitsBuffer
startIndex
private void addAffixes(char[], char[], char[]);
descriptor: ([C[C[C)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
arraylength
istore 4
start local 4 1: aload 3
arraylength
istore 5
start local 5 2: iload 4
ifeq 3
aload 0
aload 2
iload 4
aload 1
invokevirtual java.text.DecimalFormat.prependPrefix:([CI[C)V
3: StackMap locals: int int
StackMap stack:
iload 5
ifeq 4
aload 0
aload 3
iload 5
aload 1
invokevirtual java.text.DecimalFormat.appendSuffix:([CI[C)V
4: StackMap locals:
StackMap stack:
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 5 0 this Ljava/text/DecimalFormat;
0 5 1 container [C
0 5 2 prefix [C
0 5 3 suffix [C
1 5 4 pl I
2 5 5 sl I
MethodParameters:
Name Flags
container
prefix
suffix
private void prependPrefix(char[], int, char[]);
descriptor: ([CI[C)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
dup
getfield java.text.DecimalFormat$FastPathData.firstUsedIndex:I
iload 2
isub
putfield java.text.DecimalFormat$FastPathData.firstUsedIndex:I
1: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.firstUsedIndex:I
istore 4
start local 4 2: iload 2
iconst_1
if_icmpne 4
3: aload 3
iload 4
aload 1
iconst_0
caload
castore
goto 16
4: StackMap locals: int
StackMap stack:
iload 2
iconst_4
if_icmpgt 15
5: iload 4
istore 5
start local 5 6: iload 5
iload 2
iadd
iconst_1
isub
istore 6
start local 6 7: iload 2
iconst_1
isub
istore 7
start local 7 8: aload 3
iload 5
aload 1
iconst_0
caload
castore
9: aload 3
iload 6
aload 1
iload 7
caload
castore
10: iload 2
iconst_2
if_icmple 12
11: aload 3
iinc 5 1
iload 5
aload 1
iconst_1
caload
castore
12: StackMap locals: int int int
StackMap stack:
iload 2
iconst_4
if_icmpne 16
13: aload 3
iinc 6 -1
iload 6
aload 1
iconst_2
caload
castore
end local 7 end local 6 end local 5 14: goto 16
15: StackMap locals:
StackMap stack:
aload 1
iconst_0
aload 3
iload 4
iload 2
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
16: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljava/text/DecimalFormat;
0 17 1 prefix [C
0 17 2 len I
0 17 3 container [C
2 17 4 startIndex I
6 14 5 dstLower I
7 14 6 dstUpper I
8 14 7 srcUpper I
MethodParameters:
Name Flags
prefix
len
container
private void appendSuffix(char[], int, char[]);
descriptor: ([CI[C)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.lastFreeIndex:I
istore 4
start local 4 1: iload 2
iconst_1
if_icmpne 3
2: aload 3
iload 4
aload 1
iconst_0
caload
castore
goto 15
3: StackMap locals: int
StackMap stack:
iload 2
iconst_4
if_icmpgt 14
4: iload 4
istore 5
start local 5 5: iload 5
iload 2
iadd
iconst_1
isub
istore 6
start local 6 6: iload 2
iconst_1
isub
istore 7
start local 7 7: aload 3
iload 5
aload 1
iconst_0
caload
castore
8: aload 3
iload 6
aload 1
iload 7
caload
castore
9: iload 2
iconst_2
if_icmple 11
10: aload 3
iinc 5 1
iload 5
aload 1
iconst_1
caload
castore
11: StackMap locals: int int int
StackMap stack:
iload 2
iconst_4
if_icmpne 15
12: aload 3
iinc 6 -1
iload 6
aload 1
iconst_2
caload
castore
end local 7 end local 6 end local 5 13: goto 15
14: StackMap locals:
StackMap stack:
aload 1
iconst_0
aload 3
iload 4
iload 2
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
15: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
dup
getfield java.text.DecimalFormat$FastPathData.lastFreeIndex:I
iload 2
iadd
putfield java.text.DecimalFormat$FastPathData.lastFreeIndex:I
16: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljava/text/DecimalFormat;
0 17 1 suffix [C
0 17 2 len I
0 17 3 container [C
1 17 4 startIndex I
5 13 5 dstLower I
6 13 6 dstUpper I
7 13 7 srcUpper I
MethodParameters:
Name Flags
suffix
len
container
private void localizeDigits(char[]);
descriptor: ([C)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.lastFreeIndex:I
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.fractionalFirstIndex:I
isub
1: istore 2
start local 2 2: iload 2
ifge 4
3: aload 0
getfield java.text.DecimalFormat.groupingSize:B
istore 2
4: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.lastFreeIndex:I
iconst_1
isub
istore 3
start local 3 5: goto 12
6: StackMap locals: int
StackMap stack:
iload 2
ifeq 10
7: aload 1
iload 3
dup2
caload
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.zeroDelta:I
iadd
i2c
castore
8: iinc 2 -1
9: goto 11
10: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.groupingSize:B
istore 2
11: StackMap locals:
StackMap stack:
iinc 3 -1
12: StackMap locals:
StackMap stack:
iload 3
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.firstUsedIndex:I
13: if_icmpge 6
end local 3 14: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljava/text/DecimalFormat;
0 15 1 digitsBuffer [C
2 15 2 digitsCounter I
5 14 3 cursor I
MethodParameters:
Name Flags
digitsBuffer
private void fastDoubleFormat(double, boolean);
descriptor: (DZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=12, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.fastPathContainer:[C
astore 4
start local 4 1: dload 1
d2i
istore 5
start local 5 2: dload 1
iload 5
i2d
dsub
dstore 6
start local 6 3: dload 6
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.fractionalScaleFactor:D
dmul
4: dstore 8
start local 8 5: dload 8
d2i
istore 10
start local 10 6: dload 8
iload 10
i2d
dsub
dstore 8
7: iconst_0
istore 11
start local 11 8: dload 8
ldc 0.5
dcmpl
iflt 18
9: dload 8
ldc 0.5
dcmpl
ifne 11
10: aload 0
dload 6
iload 10
invokevirtual java.text.DecimalFormat.exactRoundUp:(DI)Z
istore 11
goto 12
11: StackMap locals: java.text.DecimalFormat double int char[] int double double int int
StackMap stack:
iconst_1
istore 11
12: StackMap locals:
StackMap stack:
iload 11
ifeq 18
13: iload 10
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.fractionalMaxIntBound:I
if_icmpge 16
14: iinc 10 1
15: goto 18
16: StackMap locals:
StackMap stack:
iconst_0
istore 10
17: iinc 5 1
18: StackMap locals:
StackMap stack:
aload 0
iload 10
aload 4
19: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.fractionalFirstIndex:I
20: invokevirtual java.text.DecimalFormat.collectFractionalDigits:(I[CI)V
21: aload 0
iload 5
aload 4
22: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.integralLastIndex:I
23: invokevirtual java.text.DecimalFormat.collectIntegralDigits:(I[CI)V
24: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.zeroDelta:I
ifeq 26
25: aload 0
aload 4
invokevirtual java.text.DecimalFormat.localizeDigits:([C)V
26: StackMap locals:
StackMap stack:
iload 3
ifeq 33
27: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.negativeAffixesRequired:Z
ifeq 38
28: aload 0
aload 4
29: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.charsNegativePrefix:[C
30: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.charsNegativeSuffix:[C
31: invokevirtual java.text.DecimalFormat.addAffixes:([C[C[C)V
32: goto 38
StackMap locals:
StackMap stack:
33: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.positiveAffixesRequired:Z
ifeq 38
34: aload 0
aload 4
35: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.charsPositivePrefix:[C
36: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.charsPositiveSuffix:[C
37: invokevirtual java.text.DecimalFormat.addAffixes:([C[C[C)V
38: StackMap locals:
StackMap stack:
return
end local 11 end local 10 end local 8 end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Ljava/text/DecimalFormat;
0 39 1 d D
0 39 3 negative Z
1 39 4 container [C
2 39 5 integralPartAsInt I
3 39 6 exactFractionalPart D
5 39 8 scaledFractional D
6 39 10 fractionalPartAsInt I
8 39 11 roundItUp Z
MethodParameters:
Name Flags
d
negative
java.lang.String fastFormat(double);
descriptor: (D)Ljava/lang/String;
flags: (0x0000)
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: iconst_0
istore 3
start local 3 1: aload 0
getfield java.text.DecimalFormat.fastPathCheckNeeded:Z
ifeq 3
2: aload 0
invokevirtual java.text.DecimalFormat.checkAndSetFastPathStatus:()Z
istore 3
3: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.isFastPath:Z
ifne 5
4: aconst_null
areturn
5: StackMap locals:
StackMap stack:
dload 1
invokestatic java.lang.Double.isFinite:(D)Z
ifne 7
6: aconst_null
areturn
7: StackMap locals:
StackMap stack:
iconst_0
istore 4
start local 4 8: dload 1
dconst_0
dcmpg
ifge 12
9: iconst_1
istore 4
10: dload 1
dneg
dstore 1
11: goto 17
StackMap locals: int
StackMap stack:
12: dload 1
dconst_0
dcmpl
ifne 17
13: dconst_1
dload 1
invokestatic java.lang.Math.copySign:(DD)D
ldc -1.0
dcmpl
ifne 14
iconst_1
goto 15
StackMap locals:
StackMap stack:
14: iconst_0
StackMap locals:
StackMap stack: int
15: istore 4
16: dconst_0
dstore 1
17: StackMap locals:
StackMap stack:
dload 1
ldc 2.147483647E9
dcmpl
ifle 19
18: aconst_null
areturn
19: StackMap locals:
StackMap stack:
iload 3
ifne 21
20: aload 0
aload 0
getfield java.text.DecimalFormat.isFastPath:Z
invokevirtual java.text.DecimalFormat.resetFastPathData:(Z)V
21: StackMap locals:
StackMap stack:
aload 0
dload 1
iload 4
invokevirtual java.text.DecimalFormat.fastDoubleFormat:(DZ)V
22: new java.lang.String
dup
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.fastPathContainer:[C
23: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.firstUsedIndex:I
24: aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.lastFreeIndex:I
aload 0
getfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
getfield java.text.DecimalFormat$FastPathData.firstUsedIndex:I
isub
25: invokespecial java.lang.String.<init>:([CII)V
areturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Ljava/text/DecimalFormat;
0 26 1 d D
1 26 3 isDataSet Z
8 26 4 negative Z
MethodParameters:
Name Flags
d
void setDigitList(java.lang.Number, boolean, int);
descriptor: (Ljava/lang/Number;ZI)V
flags: (0x0000)
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
instanceof java.lang.Double
ifeq 3
1: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iload 2
aload 1
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
iload 3
iconst_1
invokevirtual java.text.DigitList.set:(ZDIZ)V
2: goto 11
StackMap locals:
StackMap stack:
3: aload 1
instanceof java.math.BigDecimal
ifeq 6
4: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iload 2
aload 1
checkcast java.math.BigDecimal
iload 3
iconst_1
invokevirtual java.text.DigitList.set:(ZLjava/math/BigDecimal;IZ)V
5: goto 11
StackMap locals:
StackMap stack:
6: aload 1
instanceof java.lang.Long
ifeq 9
7: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iload 2
aload 1
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
iload 3
invokevirtual java.text.DigitList.set:(ZJI)V
8: goto 11
StackMap locals:
StackMap stack:
9: aload 1
instanceof java.math.BigInteger
ifeq 11
10: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iload 2
aload 1
checkcast java.math.BigInteger
iload 3
invokevirtual java.text.DigitList.set:(ZLjava/math/BigInteger;I)V
11: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljava/text/DecimalFormat;
0 12 1 number Ljava/lang/Number;
0 12 2 isNegative Z
0 12 3 maxDigits I
MethodParameters:
Name Flags
number
isNegative
maxDigits
private java.lang.StringBuffer subformat(java.lang.StringBuffer, java.text.Format$FieldDelegate, boolean, boolean, int, int, int, int);
descriptor: (Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;ZZIIII)Ljava/lang/StringBuffer;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: iload 3
ifeq 5
1: aload 0
aload 1
aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
aload 2
2: aload 0
invokevirtual java.text.DecimalFormat.getNegativePrefixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
3: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
4: goto 8
5: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
aload 2
6: aload 0
invokevirtual java.text.DecimalFormat.getPositivePrefixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
7: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
8: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
iload 3
iload 4
9: iload 5
iload 6
iload 7
iload 8
10: invokevirtual java.text.DecimalFormat.subformatNumber:(Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;ZZIIII)V
11: iload 3
ifeq 16
12: aload 0
aload 1
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
aload 2
13: aload 0
invokevirtual java.text.DecimalFormat.getNegativeSuffixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
14: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
15: goto 19
16: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
aload 2
17: aload 0
invokevirtual java.text.DecimalFormat.getPositiveSuffixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
18: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
19: StackMap locals:
StackMap stack:
aload 1
areturn
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 20 0 this Ljava/text/DecimalFormat;
0 20 1 result Ljava/lang/StringBuffer;
0 20 2 delegate Ljava/text/Format$FieldDelegate;
0 20 3 isNegative Z
0 20 4 isInteger Z
0 20 5 maxIntDigits I
0 20 6 minIntDigits I
0 20 7 maxFraDigits I
0 20 8 minFraDigits I
MethodParameters:
Name Flags
result
delegate
isNegative
isInteger
maxIntDigits
minIntDigits
maxFraDigits
minFraDigits
void subformatNumber(java.lang.StringBuffer, java.text.Format$FieldDelegate, boolean, boolean, int, int, int, int);
descriptor: (Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;ZZIIII)V
flags: (0x0000)
Code:
stack=7, locals=27, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getGroupingSeparator:()C
istore 9
start local 9 1: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getZeroDigit:()C
istore 10
start local 10 2: iload 10
bipush 48
isub
istore 11
start local 11 3: aload 0
getfield java.text.DecimalFormat.isCurrencyFormat:Z
ifeq 5
4: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMonetaryDecimalSeparator:()C
goto 6
5: StackMap locals: int int int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDecimalSeparator:()C
6: StackMap locals:
StackMap stack: int
istore 12
start local 12 7: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
invokevirtual java.text.DigitList.isZero:()Z
ifeq 9
8: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iconst_0
putfield java.text.DigitList.decimalAt:I
9: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 105
10: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 13
start local 13 11: iconst_m1
istore 14
start local 14 12: iconst_m1
istore 15
start local 15 13: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
istore 16
start local 16 14: iload 5
istore 17
start local 17 15: iload 6
istore 18
start local 18 16: iload 17
iconst_1
if_icmple 23
iload 17
iload 6
if_icmple 23
17: iload 16
iconst_1
if_icmplt 20
18: iload 16
iconst_1
isub
iload 17
idiv
iload 17
imul
istore 16
19: goto 21
20: StackMap locals: java.text.DecimalFormat java.lang.StringBuffer java.text.Format$FieldDelegate int int int int int int int int int int int int int int int int
StackMap stack:
iload 16
iload 17
isub
iload 17
idiv
iload 17
imul
istore 16
21: StackMap locals:
StackMap stack:
iconst_1
istore 18
22: goto 24
23: StackMap locals:
StackMap stack:
iload 16
iload 18
isub
istore 16
24: StackMap locals:
StackMap stack:
iload 6
iload 8
iadd
istore 19
start local 19 25: iload 19
ifge 27
26: ldc 2147483647
istore 19
27: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
invokevirtual java.text.DigitList.isZero:()Z
ifeq 28
iload 18
goto 29
28: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
iload 16
isub
29: StackMap locals:
StackMap stack: int
istore 20
start local 20 30: iload 19
iload 20
if_icmpge 32
31: iload 20
istore 19
32: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
istore 21
start local 21 33: iload 19
iload 21
if_icmple 35
34: iload 19
istore 21
35: StackMap locals: int
StackMap stack:
iconst_0
istore 22
start local 22 36: iconst_0
istore 23
start local 23 37: goto 48
38: StackMap locals: int int
StackMap stack:
iload 23
iload 20
if_icmpne 43
39: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 14
40: aload 1
iload 12
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
41: iconst_1
istore 22
42: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 15
43: StackMap locals:
StackMap stack:
aload 1
iload 23
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
if_icmpge 45
44: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.digits:[C
iload 23
caload
iload 11
iadd
i2c
goto 46
45: StackMap locals:
StackMap stack: java.lang.StringBuffer
iload 10
46: StackMap locals: java.text.DecimalFormat java.lang.StringBuffer java.text.Format$FieldDelegate int int int int int int int int int int int int int int int int int int int int int
StackMap stack: java.lang.StringBuffer int
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
47: iinc 23 1
StackMap locals:
StackMap stack:
48: iload 23
iload 21
if_icmplt 38
end local 23 49: aload 0
getfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
ifeq 54
iload 21
iload 20
if_icmpne 54
50: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 14
51: aload 1
iload 12
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
52: iconst_1
istore 22
53: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 15
54: StackMap locals:
StackMap stack:
iload 14
iconst_m1
if_icmpne 56
55: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 14
56: StackMap locals:
StackMap stack:
aload 2
iconst_0
getstatic java.text.NumberFormat$Field.INTEGER:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.INTEGER:Ljava/text/NumberFormat$Field;
57: iload 13
iload 14
aload 1
58: invokeinterface java.text.Format$FieldDelegate.formatted:(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
59: iload 22
ifeq 64
60: aload 2
getstatic java.text.NumberFormat$Field.DECIMAL_SEPARATOR:Ljava/text/NumberFormat$Field;
61: getstatic java.text.NumberFormat$Field.DECIMAL_SEPARATOR:Ljava/text/NumberFormat$Field;
62: iload 14
iload 15
aload 1
63: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
64: StackMap locals:
StackMap stack:
iload 15
iconst_m1
if_icmpne 66
65: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 15
66: StackMap locals:
StackMap stack:
aload 2
iconst_1
getstatic java.text.NumberFormat$Field.FRACTION:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.FRACTION:Ljava/text/NumberFormat$Field;
67: iload 15
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
68: invokeinterface java.text.Format$FieldDelegate.formatted:(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
69: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 23
start local 23 70: aload 1
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getExponentSeparator:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
71: aload 2
getstatic java.text.NumberFormat$Field.EXPONENT_SYMBOL:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.EXPONENT_SYMBOL:Ljava/text/NumberFormat$Field;
72: iload 23
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
73: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
74: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
invokevirtual java.text.DigitList.isZero:()Z
ifeq 76
75: iconst_0
istore 16
76: StackMap locals: int
StackMap stack:
iload 16
ifge 77
iconst_1
goto 78
StackMap locals:
StackMap stack:
77: iconst_0
StackMap locals:
StackMap stack: int
78: istore 24
start local 24 79: iload 24
ifeq 86
80: iload 16
ineg
istore 16
81: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 23
82: aload 1
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMinusSign:()C
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
83: aload 2
getstatic java.text.NumberFormat$Field.EXPONENT_SIGN:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.EXPONENT_SIGN:Ljava/text/NumberFormat$Field;
84: iload 23
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
85: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
86: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iload 24
iload 16
i2l
invokevirtual java.text.DigitList.set:(ZJ)V
87: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 25
start local 25 88: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
istore 26
start local 26 89: goto 92
90: StackMap locals: int int
StackMap stack:
aload 1
iload 10
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
91: iinc 26 1
StackMap locals:
StackMap stack:
92: iload 26
aload 0
getfield java.text.DecimalFormat.minExponentDigits:B
if_icmplt 90
end local 26 93: iconst_0
istore 26
start local 26 94: goto 100
95: StackMap locals:
StackMap stack:
aload 1
iload 26
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
if_icmpge 97
96: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.digits:[C
iload 26
caload
iload 11
iadd
i2c
goto 98
StackMap locals:
StackMap stack: java.lang.StringBuffer
97: iload 10
98: StackMap locals: java.text.DecimalFormat java.lang.StringBuffer java.text.Format$FieldDelegate int int int int int int int int int int int int int int int int int int int int int int int int
StackMap stack: java.lang.StringBuffer int
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
99: iinc 26 1
StackMap locals:
StackMap stack:
100: iload 26
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
if_icmplt 95
end local 26 101: aload 2
getstatic java.text.NumberFormat$Field.EXPONENT:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.EXPONENT:Ljava/text/NumberFormat$Field;
iload 25
102: aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
103: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
end local 25 end local 24 end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 104: goto 167
105: StackMap locals: java.text.DecimalFormat java.lang.StringBuffer java.text.Format$FieldDelegate int int int int int int int int int int
StackMap stack:
aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 13
start local 13 106: iload 6
istore 14
start local 14 107: iconst_0
istore 15
start local 15 108: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
ifle 110
iload 14
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
if_icmpge 110
109: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
istore 14
110: StackMap locals: int int int
StackMap stack:
iload 14
iload 5
if_icmple 113
111: iload 5
istore 14
112: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
iload 14
isub
istore 15
113: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 16
start local 16 114: iload 14
iconst_1
isub
istore 17
start local 17 115: goto 129
116: StackMap locals: int int
StackMap stack:
iload 17
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
if_icmpge 119
iload 15
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
if_icmpge 119
117: aload 1
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.digits:[C
iload 15
iinc 15 1
caload
iload 11
iadd
i2c
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
118: goto 120
119: StackMap locals:
StackMap stack:
aload 1
iload 10
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
120: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.text.DecimalFormat.isGroupingUsed:()Z
ifeq 128
iload 17
ifle 128
aload 0
getfield java.text.DecimalFormat.groupingSize:B
ifeq 128
121: iload 17
aload 0
getfield java.text.DecimalFormat.groupingSize:B
irem
ifne 128
122: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 18
start local 18 123: aload 1
iload 9
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
124: aload 2
getstatic java.text.NumberFormat$Field.GROUPING_SEPARATOR:Ljava/text/NumberFormat$Field;
125: getstatic java.text.NumberFormat$Field.GROUPING_SEPARATOR:Ljava/text/NumberFormat$Field;
iload 18
126: aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
127: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
end local 18 128: StackMap locals:
StackMap stack:
iinc 17 -1
StackMap locals:
StackMap stack:
129: iload 17
ifge 116
end local 17 130: iload 8
ifgt 134
131: iload 4
ifne 133
iload 15
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
132: if_icmplt 134
StackMap locals:
StackMap stack:
133: iconst_0
goto 135
StackMap locals:
StackMap stack:
134: iconst_1
StackMap locals:
StackMap stack: int
135: istore 17
start local 17 136: iload 17
ifne 138
aload 1
invokevirtual java.lang.StringBuffer.length:()I
iload 16
if_icmpne 138
137: aload 1
iload 10
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
138: StackMap locals: int
StackMap stack:
aload 2
iconst_0
getstatic java.text.NumberFormat$Field.INTEGER:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.INTEGER:Ljava/text/NumberFormat$Field;
139: iload 13
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
140: invokeinterface java.text.Format$FieldDelegate.formatted:(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
141: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 18
start local 18 142: aload 0
getfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
ifne 143
iload 17
ifeq 144
143: StackMap locals: int
StackMap stack:
aload 1
iload 12
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
144: StackMap locals:
StackMap stack:
iload 18
aload 1
invokevirtual java.lang.StringBuffer.length:()I
if_icmpeq 149
145: aload 2
getstatic java.text.NumberFormat$Field.DECIMAL_SEPARATOR:Ljava/text/NumberFormat$Field;
146: getstatic java.text.NumberFormat$Field.DECIMAL_SEPARATOR:Ljava/text/NumberFormat$Field;
147: iload 18
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
148: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
149: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 19
start local 19 150: iconst_0
istore 20
start local 20 151: goto 163
152: StackMap locals: int int
StackMap stack:
iload 20
iload 8
if_icmplt 155
153: iload 4
ifne 164
iload 15
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
if_icmplt 155
154: goto 164
155: StackMap locals:
StackMap stack:
iconst_m1
iload 20
isub
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
iconst_1
isub
if_icmple 158
156: aload 1
iload 10
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
157: goto 162
158: StackMap locals:
StackMap stack:
iload 4
ifne 161
iload 15
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
if_icmpge 161
159: aload 1
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.digits:[C
iload 15
iinc 15 1
caload
iload 11
iadd
i2c
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
160: goto 162
161: StackMap locals:
StackMap stack:
aload 1
iload 10
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
162: StackMap locals:
StackMap stack:
iinc 20 1
StackMap locals:
StackMap stack:
163: iload 20
iload 7
if_icmplt 152
end local 20 164: StackMap locals:
StackMap stack:
aload 2
iconst_1
getstatic java.text.NumberFormat$Field.FRACTION:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.FRACTION:Ljava/text/NumberFormat$Field;
165: iload 19
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
166: invokeinterface java.text.Format$FieldDelegate.formatted:(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 167: StackMap locals: java.text.DecimalFormat java.lang.StringBuffer java.text.Format$FieldDelegate int int int int int int int int int int
StackMap stack:
return
end local 12 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 168 0 this Ljava/text/DecimalFormat;
0 168 1 result Ljava/lang/StringBuffer;
0 168 2 delegate Ljava/text/Format$FieldDelegate;
0 168 3 isNegative Z
0 168 4 isInteger Z
0 168 5 maxIntDigits I
0 168 6 minIntDigits I
0 168 7 maxFraDigits I
0 168 8 minFraDigits I
1 168 9 grouping C
2 168 10 zero C
3 168 11 zeroDelta I
7 168 12 decimal C
11 104 13 iFieldStart I
12 104 14 iFieldEnd I
13 104 15 fFieldStart I
14 104 16 exponent I
15 104 17 repeat I
16 104 18 minimumIntegerDigits I
25 104 19 minimumDigits I
30 104 20 integerDigits I
33 104 21 totalDigits I
36 104 22 addedDecimalSeparator Z
37 49 23 i I
70 104 23 fieldStart I
79 104 24 negativeExponent Z
88 104 25 eFieldStart I
89 93 26 i I
94 101 26 i I
106 167 13 iFieldStart I
107 167 14 count I
108 167 15 digitIndex I
114 167 16 sizeBeforeIntegerPart I
115 130 17 i I
123 128 18 gStart I
136 167 17 fractionPresent Z
142 167 18 sStart I
150 167 19 fFieldStart I
151 164 20 i I
MethodParameters:
Name Flags
result
delegate
isNegative
isInteger
maxIntDigits
minIntDigits
maxFraDigits
minFraDigits
private void append(java.lang.StringBuffer, java.lang.String, java.text.Format$FieldDelegate, java.text.FieldPosition[], java.text.Format$Field);
descriptor: (Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=11, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 6
start local 6 1: aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifne 16
2: aload 1
aload 2
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
3: iconst_0
istore 7
start local 7 4: aload 4
arraylength
istore 8
start local 8 5: goto 15
6: StackMap locals: int int int
StackMap stack:
aload 4
iload 7
aaload
astore 9
start local 9 7: aload 9
invokevirtual java.text.FieldPosition.getFieldAttribute:()Ljava/text/Format$Field;
astore 10
start local 10 8: aload 10
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
if_acmpne 10
9: aload 5
astore 10
10: StackMap locals: java.text.FieldPosition java.text.Format$Field
StackMap stack:
aload 3
aload 10
aload 10
11: iload 6
aload 9
invokevirtual java.text.FieldPosition.getBeginIndex:()I
iadd
12: iload 6
aload 9
invokevirtual java.text.FieldPosition.getEndIndex:()I
iadd
aload 1
13: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
end local 10 end local 9 14: iinc 7 1
15: StackMap locals:
StackMap stack:
iload 7
iload 8
if_icmplt 6
end local 8 end local 7 16: StackMap locals:
StackMap stack:
return
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 17 0 this Ljava/text/DecimalFormat;
0 17 1 result Ljava/lang/StringBuffer;
0 17 2 string Ljava/lang/String;
0 17 3 delegate Ljava/text/Format$FieldDelegate;
0 17 4 positions [Ljava/text/FieldPosition;
0 17 5 signAttribute Ljava/text/Format$Field;
1 17 6 start I
4 16 7 counter I
5 16 8 max I
7 14 9 fp Ljava/text/FieldPosition;
8 14 10 attribute Ljava/text/Format$Field;
MethodParameters:
Name Flags
result
string
delegate
positions
signAttribute
public java.lang.Number parse(java.lang.String, java.text.ParsePosition);
descriptor: (Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/lang/Number;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
getfield java.text.ParsePosition.index:I
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getNaN:()Ljava/lang/String;
iconst_0
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getNaN:()Ljava/lang/String;
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
ifeq 3
1: aload 2
aload 2
getfield java.text.ParsePosition.index:I
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getNaN:()Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iadd
putfield java.text.ParsePosition.index:I
2: ldc NaN
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
areturn
3: StackMap locals:
StackMap stack:
iconst_2
newarray 4
astore 3
start local 3 4: aload 0
aload 1
aload 2
aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iconst_0
aload 3
invokevirtual java.text.DecimalFormat.subparse:(Ljava/lang/String;Ljava/text/ParsePosition;Ljava/lang/String;Ljava/lang/String;Ljava/text/DigitList;Z[Z)Z
ifne 6
5: aconst_null
areturn
6: StackMap locals: boolean[]
StackMap stack:
aload 3
iconst_0
baload
ifeq 12
7: aload 3
iconst_1
baload
aload 0
getfield java.text.DecimalFormat.multiplier:I
iflt 8
iconst_1
goto 9
StackMap locals:
StackMap stack: int
8: iconst_0
StackMap locals: java.text.DecimalFormat java.lang.String java.text.ParsePosition boolean[]
StackMap stack: int int
9: if_icmpne 11
10: ldc Infinity
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
areturn
11: StackMap locals:
StackMap stack:
ldc -Infinity
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
areturn
12: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.multiplier:I
ifne 18
13: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
invokevirtual java.text.DigitList.isZero:()Z
ifeq 15
14: ldc NaN
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
areturn
15: StackMap locals:
StackMap stack:
aload 3
iconst_1
baload
ifeq 17
16: ldc Infinity
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
areturn
17: StackMap locals:
StackMap stack:
ldc -Infinity
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
areturn
18: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.text.DecimalFormat.isParseBigDecimal:()Z
ifeq 28
19: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
invokevirtual java.text.DigitList.getBigDecimal:()Ljava/math/BigDecimal;
astore 4
start local 4 20: aload 0
getfield java.text.DecimalFormat.multiplier:I
iconst_1
if_icmpeq 25
21: aload 4
aload 0
invokevirtual java.text.DecimalFormat.getBigDecimalMultiplier:()Ljava/math/BigDecimal;
invokevirtual java.math.BigDecimal.divide:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
astore 4
22: goto 25
23: StackMap locals: java.text.DecimalFormat java.lang.String java.text.ParsePosition boolean[] java.math.BigDecimal
StackMap stack: java.lang.ArithmeticException
pop
24: aload 4
aload 0
invokevirtual java.text.DecimalFormat.getBigDecimalMultiplier:()Ljava/math/BigDecimal;
aload 0
getfield java.text.DecimalFormat.roundingMode:Ljava/math/RoundingMode;
invokevirtual java.math.BigDecimal.divide:(Ljava/math/BigDecimal;Ljava/math/RoundingMode;)Ljava/math/BigDecimal;
astore 4
25: StackMap locals:
StackMap stack:
aload 3
iconst_1
baload
ifne 27
26: aload 4
invokevirtual java.math.BigDecimal.negate:()Ljava/math/BigDecimal;
astore 4
27: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 28: StackMap locals:
StackMap stack:
iconst_1
istore 4
start local 4 29: iconst_0
istore 5
start local 5 30: dconst_0
dstore 6
start local 6 31: lconst_0
lstore 8
start local 8 32: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
aload 3
iconst_1
baload
aload 0
invokevirtual java.text.DecimalFormat.isParseIntegerOnly:()Z
invokevirtual java.text.DigitList.fitsIntoLong:(ZZ)Z
ifeq 38
33: iconst_0
istore 4
34: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
invokevirtual java.text.DigitList.getLong:()J
lstore 8
35: lload 8
lconst_0
lcmp
ifge 39
36: iconst_1
istore 5
37: goto 39
38: StackMap locals: java.text.DecimalFormat java.lang.String java.text.ParsePosition boolean[] int int double long
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
invokevirtual java.text.DigitList.getDouble:()D
dstore 6
39: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.multiplier:I
iconst_1
if_icmpeq 48
40: iload 4
ifeq 43
41: dload 6
aload 0
getfield java.text.DecimalFormat.multiplier:I
i2d
ddiv
dstore 6
42: goto 48
43: StackMap locals:
StackMap stack:
lload 8
aload 0
getfield java.text.DecimalFormat.multiplier:I
i2l
lrem
lconst_0
lcmp
ifne 46
44: lload 8
aload 0
getfield java.text.DecimalFormat.multiplier:I
i2l
ldiv
lstore 8
45: goto 48
46: StackMap locals:
StackMap stack:
lload 8
l2d
aload 0
getfield java.text.DecimalFormat.multiplier:I
i2d
ddiv
dstore 6
47: iconst_1
istore 4
48: StackMap locals:
StackMap stack:
aload 3
iconst_1
baload
ifne 51
iload 5
ifne 51
49: dload 6
dneg
dstore 6
50: lload 8
lneg
lstore 8
51: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.multiplier:I
iconst_1
if_icmpeq 59
iload 4
ifeq 59
52: dload 6
d2l
lstore 8
53: dload 6
lload 8
l2d
dcmpl
ifne 55
54: dload 6
dconst_0
dcmpl
ifne 57
dconst_1
dload 6
ddiv
dconst_0
dcmpg
ifge 57
55: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.text.DecimalFormat.isParseIntegerOnly:()Z
ifne 57
56: iconst_1
goto 58
StackMap locals:
StackMap stack:
57: iconst_0
StackMap locals:
StackMap stack: int
58: istore 4
59: StackMap locals:
StackMap stack:
iload 4
ifeq 60
dload 6
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
goto 61
StackMap locals:
StackMap stack:
60: lload 8
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
StackMap locals:
StackMap stack: java.lang.Number
61: areturn
end local 8 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 62 0 this Ljava/text/DecimalFormat;
0 62 1 text Ljava/lang/String;
0 62 2 pos Ljava/text/ParsePosition;
4 62 3 status [Z
20 28 4 bigDecimalResult Ljava/math/BigDecimal;
29 62 4 gotDouble Z
30 62 5 gotLongMinimum Z
31 62 6 doubleResult D
32 62 8 longResult J
Exception table:
from to target type
21 22 23 Class java.lang.ArithmeticException
MethodParameters:
Name Flags
text
pos
private java.math.BigInteger getBigIntegerMultiplier();
descriptor: ()Ljava/math/BigInteger;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.bigIntegerMultiplier:Ljava/math/BigInteger;
ifnonnull 2
1: aload 0
aload 0
getfield java.text.DecimalFormat.multiplier:I
i2l
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putfield java.text.DecimalFormat.bigIntegerMultiplier:Ljava/math/BigInteger;
2: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.bigIntegerMultiplier:Ljava/math/BigInteger;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/text/DecimalFormat;
private java.math.BigDecimal getBigDecimalMultiplier();
descriptor: ()Ljava/math/BigDecimal;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.bigDecimalMultiplier:Ljava/math/BigDecimal;
ifnonnull 2
1: aload 0
new java.math.BigDecimal
dup
aload 0
getfield java.text.DecimalFormat.multiplier:I
invokespecial java.math.BigDecimal.<init>:(I)V
putfield java.text.DecimalFormat.bigDecimalMultiplier:Ljava/math/BigDecimal;
2: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.bigDecimalMultiplier:Ljava/math/BigDecimal;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/text/DecimalFormat;
private final boolean subparse(java.lang.String, java.text.ParsePosition, java.lang.String, java.lang.String, java.text.DigitList, boolean, boolean[]);
descriptor: (Ljava/lang/String;Ljava/text/ParsePosition;Ljava/lang/String;Ljava/lang/String;Ljava/text/DigitList;Z[Z)Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=7, locals=12, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 2
getfield java.text.ParsePosition.index:I
istore 8
start local 8 1: aload 2
getfield java.text.ParsePosition.index:I
istore 9
start local 9 2: aload 1
iload 8
aload 3
iconst_0
3: aload 3
invokevirtual java.lang.String.length:()I
4: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
istore 10
start local 10 5: aload 1
iload 8
aload 4
iconst_0
6: aload 4
invokevirtual java.lang.String.length:()I
7: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
istore 11
start local 11 8: iload 10
ifeq 14
iload 11
ifeq 14
9: aload 3
invokevirtual java.lang.String.length:()I
aload 4
invokevirtual java.lang.String.length:()I
if_icmple 12
10: iconst_0
istore 11
11: goto 14
StackMap locals: java.text.DecimalFormat java.lang.String java.text.ParsePosition java.lang.String java.lang.String java.text.DigitList int boolean[] int int int int
StackMap stack:
12: aload 3
invokevirtual java.lang.String.length:()I
aload 4
invokevirtual java.lang.String.length:()I
if_icmpge 14
13: iconst_0
istore 10
14: StackMap locals:
StackMap stack:
iload 10
ifeq 17
15: iload 8
aload 3
invokevirtual java.lang.String.length:()I
iadd
istore 8
16: goto 22
StackMap locals:
StackMap stack:
17: iload 11
ifeq 20
18: iload 8
aload 4
invokevirtual java.lang.String.length:()I
iadd
istore 8
19: goto 22
20: StackMap locals:
StackMap stack:
aload 2
iload 8
putfield java.text.ParsePosition.errorIndex:I
21: iconst_0
ireturn
22: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 8
aload 5
iconst_1
iload 6
aload 7
invokevirtual java.text.DecimalFormat.subparseNumber:(Ljava/lang/String;ILjava/text/DigitList;ZZ[Z)I
istore 8
23: iload 8
iconst_m1
if_icmpne 27
24: aload 2
iload 9
putfield java.text.ParsePosition.index:I
25: aload 2
iload 9
putfield java.text.ParsePosition.errorIndex:I
26: iconst_0
ireturn
27: StackMap locals:
StackMap stack:
iload 6
ifne 51
28: iload 10
ifeq 32
29: aload 1
iload 8
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
iconst_0
30: aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
31: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
istore 10
32: StackMap locals:
StackMap stack:
iload 11
ifeq 36
33: aload 1
iload 8
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
iconst_0
34: aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
35: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
istore 11
36: StackMap locals:
StackMap stack:
iload 10
ifeq 42
iload 11
ifeq 42
37: aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmple 40
38: iconst_0
istore 11
39: goto 42
StackMap locals:
StackMap stack:
40: aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmpge 42
41: iconst_0
istore 10
42: StackMap locals:
StackMap stack:
iload 10
iload 11
if_icmpne 45
43: aload 2
iload 8
putfield java.text.ParsePosition.errorIndex:I
44: iconst_0
ireturn
45: StackMap locals:
StackMap stack:
aload 2
iload 8
46: iload 10
ifeq 47
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
goto 48
StackMap locals: java.text.DecimalFormat java.lang.String java.text.ParsePosition java.lang.String java.lang.String java.text.DigitList int boolean[] int int int int
StackMap stack: java.text.ParsePosition int
47: aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
StackMap locals: java.text.DecimalFormat java.lang.String java.text.ParsePosition java.lang.String java.lang.String java.text.DigitList int boolean[] int int int int
StackMap stack: java.text.ParsePosition int int
48: iadd
49: putfield java.text.ParsePosition.index:I
50: goto 52
51: StackMap locals:
StackMap stack:
aload 2
iload 8
putfield java.text.ParsePosition.index:I
52: StackMap locals:
StackMap stack:
aload 7
iconst_1
iload 10
bastore
53: aload 2
getfield java.text.ParsePosition.index:I
iload 9
if_icmpne 56
54: aload 2
iload 8
putfield java.text.ParsePosition.errorIndex:I
55: iconst_0
ireturn
56: StackMap locals:
StackMap stack:
iconst_1
ireturn
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 57 0 this Ljava/text/DecimalFormat;
0 57 1 text Ljava/lang/String;
0 57 2 parsePosition Ljava/text/ParsePosition;
0 57 3 positivePrefix Ljava/lang/String;
0 57 4 negativePrefix Ljava/lang/String;
0 57 5 digits Ljava/text/DigitList;
0 57 6 isExponent Z
0 57 7 status [Z
1 57 8 position I
2 57 9 oldStart I
5 57 10 gotPositive Z
8 57 11 gotNegative Z
MethodParameters:
Name Flags
text
parsePosition
positivePrefix
negativePrefix
digits
isExponent
status
int subparseNumber(java.lang.String, int, java.text.DigitList, boolean, boolean, boolean[]);
descriptor: (Ljava/lang/String;ILjava/text/DigitList;ZZ[Z)I
flags: (0x0000)
Code:
stack=8, locals=22, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 6
iconst_0
iconst_0
bastore
1: iload 5
ifne 8
aload 1
iload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getInfinity:()Ljava/lang/String;
iconst_0
2: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getInfinity:()Ljava/lang/String;
invokevirtual java.lang.String.length:()I
3: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
4: ifeq 8
5: iload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getInfinity:()Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iadd
istore 2
6: aload 6
iconst_0
iconst_1
bastore
7: goto 77
8: StackMap locals:
StackMap stack:
aload 3
aload 3
iconst_0
dup_x1
putfield java.text.DigitList.count:I
putfield java.text.DigitList.decimalAt:I
9: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getZeroDigit:()C
istore 7
start local 7 10: aload 0
getfield java.text.DecimalFormat.isCurrencyFormat:Z
ifeq 12
11: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMonetaryDecimalSeparator:()C
goto 13
12: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDecimalSeparator:()C
13: StackMap locals:
StackMap stack: int
istore 8
start local 8 14: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getGroupingSeparator:()C
istore 9
start local 9 15: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getExponentSeparator:()Ljava/lang/String;
astore 10
start local 10 16: iconst_0
istore 11
start local 11 17: iconst_0
istore 12
start local 12 18: iconst_0
istore 13
start local 13 19: iconst_0
istore 14
start local 14 20: iconst_0
istore 15
start local 15 21: iconst_m1
istore 16
start local 16 22: goto 69
23: StackMap locals: java.text.DecimalFormat java.lang.String int java.text.DigitList int int boolean[] int int int java.lang.String int int int int int int
StackMap stack:
aload 1
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 17
start local 17 24: iload 17
iload 7
isub
istore 18
start local 18 25: iload 18
iflt 26
iload 18
bipush 9
if_icmple 27
26: StackMap locals: int int
StackMap stack:
iload 17
bipush 10
invokestatic java.lang.Character.digit:(CI)I
istore 18
27: StackMap locals:
StackMap stack:
iload 18
ifne 38
28: iconst_m1
istore 16
29: iconst_1
istore 13
30: aload 3
getfield java.text.DigitList.count:I
ifne 35
31: iload 11
ifne 33
32: goto 68
33: StackMap locals:
StackMap stack:
aload 3
dup
getfield java.text.DigitList.decimalAt:I
iconst_1
isub
putfield java.text.DigitList.decimalAt:I
34: goto 68
35: StackMap locals:
StackMap stack:
iinc 15 1
36: aload 3
iload 18
bipush 48
iadd
i2c
invokevirtual java.text.DigitList.append:(C)V
37: goto 68
StackMap locals:
StackMap stack:
38: iload 18
ifle 44
iload 18
bipush 9
if_icmpgt 44
39: iconst_1
istore 13
40: iinc 15 1
41: aload 3
iload 18
bipush 48
iadd
i2c
invokevirtual java.text.DigitList.append:(C)V
42: iconst_m1
istore 16
43: goto 68
StackMap locals:
StackMap stack:
44: iload 5
ifne 50
iload 17
iload 8
if_icmpne 50
45: aload 0
invokevirtual java.text.DecimalFormat.isParseIntegerOnly:()Z
ifne 70
iload 11
ifeq 47
46: goto 70
47: StackMap locals:
StackMap stack:
aload 3
iload 15
putfield java.text.DigitList.decimalAt:I
48: iconst_1
istore 11
49: goto 68
StackMap locals:
StackMap stack:
50: iload 5
ifne 55
iload 17
iload 9
if_icmpne 55
aload 0
invokevirtual java.text.DecimalFormat.isGroupingUsed:()Z
ifeq 55
51: iload 11
ifeq 53
52: goto 70
53: StackMap locals:
StackMap stack:
iload 2
istore 16
54: goto 68
StackMap locals:
StackMap stack:
55: iload 4
ifeq 70
iload 5
ifne 70
aload 1
iload 2
aload 10
iconst_0
aload 10
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
ifeq 70
56: iload 12
ifne 70
57: new java.text.ParsePosition
dup
iload 2
aload 10
invokevirtual java.lang.String.length:()I
iadd
invokespecial java.text.ParsePosition.<init>:(I)V
astore 19
start local 19 58: iconst_2
newarray 4
astore 20
start local 20 59: new java.text.DigitList
dup
invokespecial java.text.DigitList.<init>:()V
astore 21
start local 21 60: aload 0
aload 1
aload 19
ldc ""
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMinusSign:()C
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
aload 21
iconst_1
aload 20
invokevirtual java.text.DecimalFormat.subparse:(Ljava/lang/String;Ljava/text/ParsePosition;Ljava/lang/String;Ljava/lang/String;Ljava/text/DigitList;Z[Z)Z
ifeq 70
61: aload 21
aload 20
iconst_1
baload
iconst_1
invokevirtual java.text.DigitList.fitsIntoLong:(ZZ)Z
ifeq 70
62: aload 19
getfield java.text.ParsePosition.index:I
istore 2
63: aload 21
invokevirtual java.text.DigitList.getLong:()J
l2i
istore 14
64: aload 20
iconst_1
baload
ifne 66
65: iload 14
ineg
istore 14
66: StackMap locals: java.text.ParsePosition boolean[] java.text.DigitList
StackMap stack:
iconst_1
istore 12
67: goto 70
end local 21 end local 20 end local 19 end local 18 end local 17 68: StackMap locals: java.text.DecimalFormat java.lang.String int java.text.DigitList int int boolean[] int int int java.lang.String int int int int int int
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
69: iload 2
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 23
70: StackMap locals:
StackMap stack:
iload 16
iconst_m1
if_icmpeq 72
71: iload 16
istore 2
72: StackMap locals:
StackMap stack:
iload 11
ifne 74
73: aload 3
iload 15
putfield java.text.DigitList.decimalAt:I
74: StackMap locals:
StackMap stack:
aload 3
dup
getfield java.text.DigitList.decimalAt:I
iload 14
iadd
putfield java.text.DigitList.decimalAt:I
75: iload 13
ifne 77
iload 15
ifne 77
76: iconst_m1
ireturn
end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 77: StackMap locals: java.text.DecimalFormat java.lang.String int java.text.DigitList int int boolean[]
StackMap stack:
iload 2
ireturn
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 78 0 this Ljava/text/DecimalFormat;
0 78 1 text Ljava/lang/String;
0 78 2 position I
0 78 3 digits Ljava/text/DigitList;
0 78 4 checkExponent Z
0 78 5 isExponent Z
0 78 6 status [Z
10 77 7 zero C
14 77 8 decimal C
15 77 9 grouping C
16 77 10 exponentString Ljava/lang/String;
17 77 11 sawDecimal Z
18 77 12 sawExponent Z
19 77 13 sawDigit Z
20 77 14 exponent I
21 77 15 digitCount I
22 77 16 backup I
24 68 17 ch C
25 68 18 digit I
58 68 19 pos Ljava/text/ParsePosition;
59 68 20 stat [Z
60 68 21 exponentDigits Ljava/text/DigitList;
MethodParameters:
Name Flags
text
position
digits
checkExponent
isExponent
status
public java.text.DecimalFormatSymbols getDecimalFormatSymbols();
descriptor: ()Ljava/text/DecimalFormatSymbols;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.clone:()Ljava/lang/Object;
checkcast java.text.DecimalFormatSymbols
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
pop
3: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/text/DecimalFormat;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
public void setDecimalFormatSymbols(java.text.DecimalFormatSymbols);
descriptor: (Ljava/text/DecimalFormatSymbols;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.text.DecimalFormatSymbols.clone:()Ljava/lang/Object;
checkcast java.text.DecimalFormatSymbols
putfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
1: aload 0
invokevirtual java.text.DecimalFormat.expandAffixes:()V
2: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
3: goto 5
StackMap locals:
StackMap stack: java.lang.Exception
4: pop
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/text/DecimalFormat;
0 6 1 newSymbols Ljava/text/DecimalFormatSymbols;
Exception table:
from to target type
0 3 4 Class java.lang.Exception
MethodParameters:
Name Flags
newSymbols
public java.lang.String getPositivePrefix();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public void setPositivePrefix(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
1: aload 0
aconst_null
putfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
2: aload 0
aconst_null
putfield java.text.DecimalFormat.positivePrefixFieldPositions:[Ljava/text/FieldPosition;
3: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/text/DecimalFormat;
0 5 1 newValue Ljava/lang/String;
MethodParameters:
Name Flags
newValue
private java.text.FieldPosition[] getPositivePrefixFieldPositions();
descriptor: ()[Ljava/text/FieldPosition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.positivePrefixFieldPositions:[Ljava/text/FieldPosition;
ifnonnull 5
1: aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
ifnull 4
2: aload 0
aload 0
aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
invokevirtual java.text.DecimalFormat.expandAffix:(Ljava/lang/String;)[Ljava/text/FieldPosition;
putfield java.text.DecimalFormat.positivePrefixFieldPositions:[Ljava/text/FieldPosition;
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
getstatic java.text.DecimalFormat.EmptyFieldPositionArray:[Ljava/text/FieldPosition;
putfield java.text.DecimalFormat.positivePrefixFieldPositions:[Ljava/text/FieldPosition;
5: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.positivePrefixFieldPositions:[Ljava/text/FieldPosition;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/text/DecimalFormat;
public java.lang.String getNegativePrefix();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public void setNegativePrefix(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
1: aload 0
aconst_null
putfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
2: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/text/DecimalFormat;
0 4 1 newValue Ljava/lang/String;
MethodParameters:
Name Flags
newValue
private java.text.FieldPosition[] getNegativePrefixFieldPositions();
descriptor: ()[Ljava/text/FieldPosition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.negativePrefixFieldPositions:[Ljava/text/FieldPosition;
ifnonnull 5
1: aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
ifnull 4
2: aload 0
aload 0
aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
invokevirtual java.text.DecimalFormat.expandAffix:(Ljava/lang/String;)[Ljava/text/FieldPosition;
putfield java.text.DecimalFormat.negativePrefixFieldPositions:[Ljava/text/FieldPosition;
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
getstatic java.text.DecimalFormat.EmptyFieldPositionArray:[Ljava/text/FieldPosition;
putfield java.text.DecimalFormat.negativePrefixFieldPositions:[Ljava/text/FieldPosition;
5: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negativePrefixFieldPositions:[Ljava/text/FieldPosition;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/text/DecimalFormat;
public java.lang.String getPositiveSuffix();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public void setPositiveSuffix(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
1: aload 0
aconst_null
putfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
2: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/text/DecimalFormat;
0 4 1 newValue Ljava/lang/String;
MethodParameters:
Name Flags
newValue
private java.text.FieldPosition[] getPositiveSuffixFieldPositions();
descriptor: ()[Ljava/text/FieldPosition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.positiveSuffixFieldPositions:[Ljava/text/FieldPosition;
ifnonnull 5
1: aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
ifnull 4
2: aload 0
aload 0
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
invokevirtual java.text.DecimalFormat.expandAffix:(Ljava/lang/String;)[Ljava/text/FieldPosition;
putfield java.text.DecimalFormat.positiveSuffixFieldPositions:[Ljava/text/FieldPosition;
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
getstatic java.text.DecimalFormat.EmptyFieldPositionArray:[Ljava/text/FieldPosition;
putfield java.text.DecimalFormat.positiveSuffixFieldPositions:[Ljava/text/FieldPosition;
5: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.positiveSuffixFieldPositions:[Ljava/text/FieldPosition;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/text/DecimalFormat;
public java.lang.String getNegativeSuffix();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public void setNegativeSuffix(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
1: aload 0
aconst_null
putfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
2: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/text/DecimalFormat;
0 4 1 newValue Ljava/lang/String;
MethodParameters:
Name Flags
newValue
private java.text.FieldPosition[] getNegativeSuffixFieldPositions();
descriptor: ()[Ljava/text/FieldPosition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.negativeSuffixFieldPositions:[Ljava/text/FieldPosition;
ifnonnull 5
1: aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
ifnull 4
2: aload 0
aload 0
aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
invokevirtual java.text.DecimalFormat.expandAffix:(Ljava/lang/String;)[Ljava/text/FieldPosition;
putfield java.text.DecimalFormat.negativeSuffixFieldPositions:[Ljava/text/FieldPosition;
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
getstatic java.text.DecimalFormat.EmptyFieldPositionArray:[Ljava/text/FieldPosition;
putfield java.text.DecimalFormat.negativeSuffixFieldPositions:[Ljava/text/FieldPosition;
5: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negativeSuffixFieldPositions:[Ljava/text/FieldPosition;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/text/DecimalFormat;
public int getMultiplier();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.multiplier:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public void setMultiplier(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield java.text.DecimalFormat.multiplier:I
1: aload 0
aconst_null
putfield java.text.DecimalFormat.bigDecimalMultiplier:Ljava/math/BigDecimal;
2: aload 0
aconst_null
putfield java.text.DecimalFormat.bigIntegerMultiplier:Ljava/math/BigInteger;
3: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/text/DecimalFormat;
0 5 1 newValue I
MethodParameters:
Name Flags
newValue
public void setGroupingUsed(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokespecial java.text.NumberFormat.setGroupingUsed:(Z)V
1: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/text/DecimalFormat;
0 3 1 newValue Z
MethodParameters:
Name Flags
newValue
public int getGroupingSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.groupingSize:B
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public void setGroupingSize(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
i2b
putfield java.text.DecimalFormat.groupingSize:B
1: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/text/DecimalFormat;
0 3 1 newValue I
MethodParameters:
Name Flags
newValue
public boolean isDecimalSeparatorAlwaysShown();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public void setDecimalSeparatorAlwaysShown(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
1: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/text/DecimalFormat;
0 3 1 newValue Z
MethodParameters:
Name Flags
newValue
public boolean isParseBigDecimal();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.parseBigDecimal:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public void setParseBigDecimal(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield java.text.DecimalFormat.parseBigDecimal:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/text/DecimalFormat;
0 2 1 newValue Z
MethodParameters:
Name Flags
newValue
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokespecial java.text.NumberFormat.clone:()Ljava/lang/Object;
checkcast java.text.DecimalFormat
astore 1
start local 1 1: aload 1
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.clone:()Ljava/lang/Object;
checkcast java.text.DecimalFormatSymbols
putfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
2: aload 1
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
invokevirtual java.text.DigitList.clone:()Ljava/lang/Object;
checkcast java.text.DigitList
putfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
3: aload 1
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
4: aload 1
iconst_0
putfield java.text.DecimalFormat.isFastPath:Z
5: aload 1
aconst_null
putfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/text/DecimalFormat;
1 7 1 other Ljava/text/DecimalFormat;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial java.text.NumberFormat.equals:(Ljava/lang/Object;)Z
ifne 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 1
checkcast java.text.DecimalFormat
astore 2
start local 2 5: aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
if_acmpne 7
6: aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 9
7: StackMap locals: java.text.DecimalFormat
StackMap stack:
aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
ifnull 35
8: aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 35
9: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
if_acmpne 11
10: aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 13
11: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
ifnull 35
12: aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 35
13: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
if_acmpne 15
14: aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 17
15: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
ifnull 35
16: aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 35
17: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
if_acmpne 19
18: aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 21
19: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
ifnull 35
20: aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
aload 2
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 35
21: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.multiplier:I
aload 2
getfield java.text.DecimalFormat.multiplier:I
if_icmpne 35
22: aload 0
getfield java.text.DecimalFormat.groupingSize:B
aload 2
getfield java.text.DecimalFormat.groupingSize:B
if_icmpne 35
23: aload 0
getfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
aload 2
getfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
if_icmpne 35
24: aload 0
getfield java.text.DecimalFormat.parseBigDecimal:Z
aload 2
getfield java.text.DecimalFormat.parseBigDecimal:Z
if_icmpne 35
25: aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
aload 2
getfield java.text.DecimalFormat.useExponentialNotation:Z
if_icmpne 35
26: aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 28
27: aload 0
getfield java.text.DecimalFormat.minExponentDigits:B
aload 2
getfield java.text.DecimalFormat.minExponentDigits:B
if_icmpne 35
28: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.maximumIntegerDigits:I
aload 2
getfield java.text.DecimalFormat.maximumIntegerDigits:I
if_icmpne 35
29: aload 0
getfield java.text.DecimalFormat.minimumIntegerDigits:I
aload 2
getfield java.text.DecimalFormat.minimumIntegerDigits:I
if_icmpne 35
30: aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
aload 2
getfield java.text.DecimalFormat.maximumFractionDigits:I
if_icmpne 35
31: aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
aload 2
getfield java.text.DecimalFormat.minimumFractionDigits:I
if_icmpne 35
32: aload 0
getfield java.text.DecimalFormat.roundingMode:Ljava/math/RoundingMode;
aload 2
getfield java.text.DecimalFormat.roundingMode:Ljava/math/RoundingMode;
if_acmpne 35
33: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
aload 2
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.equals:(Ljava/lang/Object;)Z
ifeq 35
34: iconst_1
ireturn
StackMap locals:
StackMap stack:
35: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 36 0 this Ljava/text/DecimalFormat;
0 36 1 obj Ljava/lang/Object;
5 36 2 other Ljava/text/DecimalFormat;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.text.NumberFormat.hashCode:()I
bipush 37
imul
aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
invokevirtual java.lang.String.hashCode:()I
iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public java.lang.String toPattern();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokevirtual java.text.DecimalFormat.toPattern:(Z)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public java.lang.String toLocalizedPattern();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual java.text.DecimalFormat.toPattern:(Z)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
private void expandAffixes();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=1
start local 0 0: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 1
start local 1 1: aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
ifnull 4
2: aload 0
aload 0
aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
aload 1
invokevirtual java.text.DecimalFormat.expandAffix:(Ljava/lang/String;Ljava/lang/StringBuffer;)Ljava/lang/String;
putfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
3: aload 0
aconst_null
putfield java.text.DecimalFormat.positivePrefixFieldPositions:[Ljava/text/FieldPosition;
4: StackMap locals: java.lang.StringBuffer
StackMap stack:
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
ifnull 7
5: aload 0
aload 0
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
aload 1
invokevirtual java.text.DecimalFormat.expandAffix:(Ljava/lang/String;Ljava/lang/StringBuffer;)Ljava/lang/String;
putfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
6: aload 0
aconst_null
putfield java.text.DecimalFormat.positiveSuffixFieldPositions:[Ljava/text/FieldPosition;
7: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
ifnull 10
8: aload 0
aload 0
aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
aload 1
invokevirtual java.text.DecimalFormat.expandAffix:(Ljava/lang/String;Ljava/lang/StringBuffer;)Ljava/lang/String;
putfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
9: aload 0
aconst_null
putfield java.text.DecimalFormat.negativePrefixFieldPositions:[Ljava/text/FieldPosition;
10: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
ifnull 13
11: aload 0
aload 0
aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
aload 1
invokevirtual java.text.DecimalFormat.expandAffix:(Ljava/lang/String;Ljava/lang/StringBuffer;)Ljava/lang/String;
putfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
12: aload 0
aconst_null
putfield java.text.DecimalFormat.negativeSuffixFieldPositions:[Ljava/text/FieldPosition;
13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljava/text/DecimalFormat;
1 14 1 buffer Ljava/lang/StringBuffer;
private java.lang.String expandAffix(java.lang.String, java.lang.StringBuffer);
descriptor: (Ljava/lang/String;Ljava/lang/StringBuffer;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
iconst_0
invokevirtual java.lang.StringBuffer.setLength:(I)V
1: iconst_0
istore 3
start local 3 2: goto 20
3: StackMap locals: int
StackMap stack:
aload 1
iload 3
iinc 3 1
invokevirtual java.lang.String.charAt:(I)C
istore 4
start local 4 4: iload 4
bipush 39
if_icmpne 19
5: aload 1
iload 3
iinc 3 1
invokevirtual java.lang.String.charAt:(I)C
istore 4
6: iload 4
lookupswitch { // 4
37: 14
45: 18
164: 7
8240: 16
default: 19
}
7: StackMap locals: int
StackMap stack:
iload 3
aload 1
invokevirtual java.lang.String.length:()I
if_icmpge 12
8: aload 1
iload 3
invokevirtual java.lang.String.charAt:(I)C
sipush 164
if_icmpne 12
9: iinc 3 1
10: aload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getInternationalCurrencySymbol:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
11: goto 20
12: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getCurrencySymbol:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
13: goto 20
14: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPercent:()C
istore 4
15: goto 19
16: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPerMill:()C
istore 4
17: goto 19
18: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMinusSign:()C
istore 4
19: StackMap locals:
StackMap stack:
aload 2
iload 4
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
end local 4 20: StackMap locals:
StackMap stack:
iload 3
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 3
end local 3 21: aload 2
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Ljava/text/DecimalFormat;
0 22 1 pattern Ljava/lang/String;
0 22 2 buffer Ljava/lang/StringBuffer;
2 21 3 i I
4 20 4 c C
MethodParameters:
Name Flags
pattern
buffer
private java.text.FieldPosition[] expandAffix(java.lang.String);
descriptor: (Ljava/lang/String;)[Ljava/text/FieldPosition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=10, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 44
4: StackMap locals: java.util.ArrayList int int
StackMap stack:
aload 1
iload 4
iinc 4 1
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 5: iload 5
bipush 39
if_icmpne 43
6: iconst_m1
istore 6
start local 6 7: aconst_null
astore 7
start local 7 8: aload 1
iload 4
iinc 4 1
invokevirtual java.lang.String.charAt:(I)C
istore 5
9: iload 5
lookupswitch { // 4
37: 25
45: 33
164: 10
8240: 29
default: 36
}
10: StackMap locals: int int java.text.Format$Field
StackMap stack:
iload 4
aload 1
invokevirtual java.lang.String.length:()I
if_icmpge 15
11: aload 1
iload 4
invokevirtual java.lang.String.charAt:(I)C
sipush 164
if_icmpne 15
12: iinc 4 1
13: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getInternationalCurrencySymbol:()Ljava/lang/String;
astore 8
start local 8 14: goto 16
end local 8 15: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getCurrencySymbol:()Ljava/lang/String;
astore 8
start local 8 16: StackMap locals: java.lang.String
StackMap stack:
aload 8
invokevirtual java.lang.String.isEmpty:()Z
ifne 44
17: aload 2
ifnonnull 19
18: new java.util.ArrayList
dup
iconst_2
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
19: StackMap locals:
StackMap stack:
new java.text.FieldPosition
dup
getstatic java.text.NumberFormat$Field.CURRENCY:Ljava/text/NumberFormat$Field;
invokespecial java.text.FieldPosition.<init>:(Ljava/text/Format$Field;)V
astore 9
start local 9 20: aload 9
iload 3
invokevirtual java.text.FieldPosition.setBeginIndex:(I)V
21: aload 9
iload 3
aload 8
invokevirtual java.lang.String.length:()I
iadd
invokevirtual java.text.FieldPosition.setEndIndex:(I)V
22: aload 2
aload 9
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
23: iload 3
aload 8
invokevirtual java.lang.String.length:()I
iadd
istore 3
end local 9 24: goto 44
end local 8 25: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPercent:()C
istore 5
26: iconst_m1
istore 6
27: getstatic java.text.NumberFormat$Field.PERCENT:Ljava/text/NumberFormat$Field;
astore 7
28: goto 36
29: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPerMill:()C
istore 5
30: iconst_m1
istore 6
31: getstatic java.text.NumberFormat$Field.PERMILLE:Ljava/text/NumberFormat$Field;
astore 7
32: goto 36
33: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMinusSign:()C
istore 5
34: iconst_m1
istore 6
35: getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
astore 7
36: StackMap locals:
StackMap stack:
aload 7
ifnull 43
37: aload 2
ifnonnull 39
38: new java.util.ArrayList
dup
iconst_2
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
39: StackMap locals:
StackMap stack:
new java.text.FieldPosition
dup
aload 7
iload 6
invokespecial java.text.FieldPosition.<init>:(Ljava/text/Format$Field;I)V
astore 8
start local 8 40: aload 8
iload 3
invokevirtual java.text.FieldPosition.setBeginIndex:(I)V
41: aload 8
iload 3
iconst_1
iadd
invokevirtual java.text.FieldPosition.setEndIndex:(I)V
42: aload 2
aload 8
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 7 end local 6 43: StackMap locals:
StackMap stack:
iinc 3 1
end local 5 44: StackMap locals:
StackMap stack:
iload 4
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 4
end local 4 45: aload 2
ifnull 47
46: aload 2
getstatic java.text.DecimalFormat.EmptyFieldPositionArray:[Ljava/text/FieldPosition;
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.text.FieldPosition[]
areturn
47: StackMap locals:
StackMap stack:
getstatic java.text.DecimalFormat.EmptyFieldPositionArray:[Ljava/text/FieldPosition;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 48 0 this Ljava/text/DecimalFormat;
0 48 1 pattern Ljava/lang/String;
1 48 2 positions Ljava/util/ArrayList<Ljava/text/FieldPosition;>;
2 48 3 stringIndex I
3 45 4 i I
5 44 5 c C
7 43 6 field I
8 43 7 fieldID Ljava/text/Format$Field;
14 15 8 string Ljava/lang/String;
16 25 8 string Ljava/lang/String;
20 24 9 fp Ljava/text/FieldPosition;
40 43 8 fp Ljava/text/FieldPosition;
MethodParameters:
Name Flags
pattern
private void appendAffix(java.lang.StringBuffer, java.lang.String, java.lang.String, boolean);
descriptor: (Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
ifnonnull 3
1: aload 0
aload 1
aload 3
iload 4
invokevirtual java.text.DecimalFormat.appendAffix:(Ljava/lang/StringBuffer;Ljava/lang/String;Z)V
2: goto 32
3: StackMap locals:
StackMap stack:
iconst_0
istore 6
start local 6 4: goto 31
5: StackMap locals: java.text.DecimalFormat java.lang.StringBuffer java.lang.String java.lang.String int top int
StackMap stack:
aload 2
bipush 39
iload 6
invokevirtual java.lang.String.indexOf:(II)I
istore 5
start local 5 6: iload 5
ifge 9
7: aload 0
aload 1
aload 2
iload 6
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
iload 4
invokevirtual java.text.DecimalFormat.appendAffix:(Ljava/lang/StringBuffer;Ljava/lang/String;Z)V
8: goto 32
9: StackMap locals: java.text.DecimalFormat java.lang.StringBuffer java.lang.String java.lang.String int int int
StackMap stack:
iload 5
iload 6
if_icmple 11
10: aload 0
aload 1
aload 2
iload 6
iload 5
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
iload 4
invokevirtual java.text.DecimalFormat.appendAffix:(Ljava/lang/StringBuffer;Ljava/lang/String;Z)V
11: StackMap locals:
StackMap stack:
aload 2
iinc 5 1
iload 5
invokevirtual java.lang.String.charAt:(I)C
istore 7
start local 7 12: iinc 5 1
13: iload 7
bipush 39
if_icmpne 16
14: aload 1
iload 7
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
15: goto 29
StackMap locals: int
StackMap stack:
16: iload 7
sipush 164
if_icmpne 22
17: iload 5
aload 2
invokevirtual java.lang.String.length:()I
if_icmpge 22
18: aload 2
iload 5
invokevirtual java.lang.String.charAt:(I)C
sipush 164
if_icmpne 22
19: iinc 5 1
20: aload 1
iload 7
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
21: goto 29
StackMap locals:
StackMap stack:
22: iload 4
ifeq 29
23: iload 7
lookupswitch { // 3
37: 24
45: 28
8240: 26
default: 29
}
24: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPercent:()C
istore 7
25: goto 29
26: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPerMill:()C
istore 7
27: goto 29
28: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMinusSign:()C
istore 7
29: StackMap locals:
StackMap stack:
aload 1
iload 7
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
end local 7 30: iload 5
istore 6
end local 5 StackMap locals: java.text.DecimalFormat java.lang.StringBuffer java.lang.String java.lang.String int top int
StackMap stack:
31: iload 6
aload 2
invokevirtual java.lang.String.length:()I
if_icmplt 5
end local 6 32: StackMap locals: java.text.DecimalFormat java.lang.StringBuffer java.lang.String java.lang.String int
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Ljava/text/DecimalFormat;
0 33 1 buffer Ljava/lang/StringBuffer;
0 33 2 affixPattern Ljava/lang/String;
0 33 3 expAffix Ljava/lang/String;
0 33 4 localized Z
6 31 5 i I
4 32 6 pos I
12 30 7 c C
MethodParameters:
Name Flags
buffer
affixPattern
expAffix
localized
private void appendAffix(java.lang.StringBuffer, java.lang.String, boolean);
descriptor: (Ljava/lang/StringBuffer;Ljava/lang/String;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
ifeq 14
1: aload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getZeroDigit:()C
invokevirtual java.lang.String.indexOf:(I)I
ifge 11
2: aload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getGroupingSeparator:()C
invokevirtual java.lang.String.indexOf:(I)I
ifge 11
3: aload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDecimalSeparator:()C
invokevirtual java.lang.String.indexOf:(I)I
ifge 11
4: aload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPercent:()C
invokevirtual java.lang.String.indexOf:(I)I
ifge 11
5: aload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPerMill:()C
invokevirtual java.lang.String.indexOf:(I)I
ifge 11
6: aload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDigit:()C
invokevirtual java.lang.String.indexOf:(I)I
ifge 11
7: aload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPatternSeparator:()C
invokevirtual java.lang.String.indexOf:(I)I
ifge 11
8: aload 2
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMinusSign:()C
invokevirtual java.lang.String.indexOf:(I)I
ifge 11
9: aload 2
sipush 164
invokevirtual java.lang.String.indexOf:(I)I
10: ifge 11
iconst_0
goto 12
StackMap locals:
StackMap stack:
11: iconst_1
StackMap locals:
StackMap stack: int
12: istore 4
start local 4 13: goto 26
end local 4 14: StackMap locals:
StackMap stack:
aload 2
bipush 48
invokevirtual java.lang.String.indexOf:(I)I
ifge 24
15: aload 2
bipush 44
invokevirtual java.lang.String.indexOf:(I)I
ifge 24
16: aload 2
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
ifge 24
17: aload 2
bipush 37
invokevirtual java.lang.String.indexOf:(I)I
ifge 24
18: aload 2
sipush 8240
invokevirtual java.lang.String.indexOf:(I)I
ifge 24
19: aload 2
bipush 35
invokevirtual java.lang.String.indexOf:(I)I
ifge 24
20: aload 2
bipush 59
invokevirtual java.lang.String.indexOf:(I)I
ifge 24
21: aload 2
bipush 45
invokevirtual java.lang.String.indexOf:(I)I
ifge 24
22: aload 2
sipush 164
invokevirtual java.lang.String.indexOf:(I)I
23: ifge 24
iconst_0
goto 25
StackMap locals:
StackMap stack:
24: iconst_1
StackMap locals:
StackMap stack: int
25: istore 4
start local 4 26: StackMap locals: int
StackMap stack:
iload 4
ifeq 27
aload 1
bipush 39
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
27: StackMap locals:
StackMap stack:
aload 2
bipush 39
invokevirtual java.lang.String.indexOf:(I)I
ifge 28
aload 1
aload 2
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
goto 35
28: StackMap locals:
StackMap stack:
iconst_0
istore 5
start local 5 29: goto 34
30: StackMap locals: int
StackMap stack:
aload 2
iload 5
invokevirtual java.lang.String.charAt:(I)C
istore 6
start local 6 31: aload 1
iload 6
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
32: iload 6
bipush 39
if_icmpne 33
aload 1
iload 6
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
end local 6 33: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
34: iload 5
aload 2
invokevirtual java.lang.String.length:()I
if_icmplt 30
end local 5 35: StackMap locals:
StackMap stack:
iload 4
ifeq 36
aload 1
bipush 39
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
36: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Ljava/text/DecimalFormat;
0 37 1 buffer Ljava/lang/StringBuffer;
0 37 2 affix Ljava/lang/String;
0 37 3 localized Z
13 14 4 needQuote Z
26 37 4 needQuote Z
29 35 5 j I
31 33 6 c C
MethodParameters:
Name Flags
buffer
affix
localized
private java.lang.String toPattern(boolean);
descriptor: (Z)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 2
start local 2 1: iconst_1
istore 3
start local 3 2: goto 67
3: StackMap locals: java.lang.StringBuffer int
StackMap stack:
iload 3
iconst_1
if_icmpne 5
4: aload 0
aload 2
aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
iload 1
invokevirtual java.text.DecimalFormat.appendAffix:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Z)V
goto 6
5: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
iload 1
invokevirtual java.text.DecimalFormat.appendAffix:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Z)V
6: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 8
7: aload 0
invokevirtual java.text.DecimalFormat.getMaximumIntegerDigits:()I
goto 9
8: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.groupingSize:B
aload 0
invokevirtual java.text.DecimalFormat.getMinimumIntegerDigits:()I
invokestatic java.lang.Math.max:(II)I
iconst_1
iadd
9: StackMap locals:
StackMap stack: int
istore 5
start local 5 10: iload 5
istore 4
start local 4 11: goto 24
12: StackMap locals: int int
StackMap stack:
iload 4
iload 5
if_icmpeq 17
aload 0
invokevirtual java.text.DecimalFormat.isGroupingUsed:()Z
ifeq 17
aload 0
getfield java.text.DecimalFormat.groupingSize:B
ifeq 17
13: iload 4
aload 0
getfield java.text.DecimalFormat.groupingSize:B
irem
ifne 17
14: aload 2
iload 1
ifeq 15
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getGroupingSeparator:()C
goto 16
15: StackMap locals:
StackMap stack: java.lang.StringBuffer
bipush 44
16: StackMap locals: java.text.DecimalFormat int java.lang.StringBuffer int int int
StackMap stack: java.lang.StringBuffer int
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
17: StackMap locals:
StackMap stack:
aload 2
iload 4
aload 0
invokevirtual java.text.DecimalFormat.getMinimumIntegerDigits:()I
if_icmpgt 20
18: iload 1
ifeq 19
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getZeroDigit:()C
goto 22
StackMap locals:
StackMap stack: java.lang.StringBuffer
19: bipush 48
goto 22
20: StackMap locals:
StackMap stack: java.lang.StringBuffer
iload 1
ifeq 21
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDigit:()C
goto 22
StackMap locals:
StackMap stack: java.lang.StringBuffer
21: bipush 35
22: StackMap locals: java.text.DecimalFormat int java.lang.StringBuffer int int int
StackMap stack: java.lang.StringBuffer int
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
23: iinc 4 -1
StackMap locals:
StackMap stack:
24: iload 4
ifgt 12
25: aload 0
invokevirtual java.text.DecimalFormat.getMaximumFractionDigits:()I
ifgt 26
aload 0
getfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
ifeq 29
26: StackMap locals:
StackMap stack:
aload 2
iload 1
ifeq 27
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDecimalSeparator:()C
goto 28
27: StackMap locals:
StackMap stack: java.lang.StringBuffer
bipush 46
28: StackMap locals: java.text.DecimalFormat int java.lang.StringBuffer int int int
StackMap stack: java.lang.StringBuffer int
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
29: StackMap locals:
StackMap stack:
iconst_0
istore 4
goto 39
30: StackMap locals:
StackMap stack:
iload 4
aload 0
invokevirtual java.text.DecimalFormat.getMinimumFractionDigits:()I
if_icmpge 35
31: aload 2
iload 1
ifeq 32
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getZeroDigit:()C
goto 33
32: StackMap locals:
StackMap stack: java.lang.StringBuffer
bipush 48
33: StackMap locals: java.text.DecimalFormat int java.lang.StringBuffer int int int
StackMap stack: java.lang.StringBuffer int
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
34: goto 38
35: StackMap locals:
StackMap stack:
aload 2
iload 1
ifeq 36
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDigit:()C
goto 37
36: StackMap locals:
StackMap stack: java.lang.StringBuffer
bipush 35
37: StackMap locals: java.text.DecimalFormat int java.lang.StringBuffer int int int
StackMap stack: java.lang.StringBuffer int
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
38: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
39: iload 4
aload 0
invokevirtual java.text.DecimalFormat.getMaximumFractionDigits:()I
if_icmplt 30
40: aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 50
41: aload 2
iload 1
ifeq 42
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getExponentSeparator:()Ljava/lang/String;
goto 43
42: StackMap locals:
StackMap stack: java.lang.StringBuffer
ldc "E"
43: StackMap locals: java.text.DecimalFormat int java.lang.StringBuffer int int int
StackMap stack: java.lang.StringBuffer java.lang.String
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
44: iconst_0
istore 4
goto 49
45: StackMap locals:
StackMap stack:
aload 2
iload 1
ifeq 46
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getZeroDigit:()C
goto 47
46: StackMap locals:
StackMap stack: java.lang.StringBuffer
bipush 48
47: StackMap locals: java.text.DecimalFormat int java.lang.StringBuffer int int int
StackMap stack: java.lang.StringBuffer int
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
48: iinc 4 1
StackMap locals:
StackMap stack:
49: iload 4
aload 0
getfield java.text.DecimalFormat.minExponentDigits:B
if_icmplt 45
50: StackMap locals:
StackMap stack:
iload 3
iconst_1
if_icmpne 65
51: aload 0
aload 2
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
iload 1
invokevirtual java.text.DecimalFormat.appendAffix:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Z)V
52: aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
if_acmpne 54
53: aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 56
54: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
ifnull 61
55: aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 61
56: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
ifnull 58
aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
ifnull 58
57: aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
new java.lang.StringBuilder
dup
ldc "'-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 68
58: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
if_acmpne 61
59: aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
new java.lang.StringBuilder
dup
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMinusSign:()C
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 61
60: goto 68
61: StackMap locals:
StackMap stack:
aload 2
iload 1
ifeq 62
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPatternSeparator:()C
goto 63
62: StackMap locals:
StackMap stack: java.lang.StringBuffer
bipush 59
63: StackMap locals: java.text.DecimalFormat int java.lang.StringBuffer int int int
StackMap stack: java.lang.StringBuffer int
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
64: goto 66
StackMap locals:
StackMap stack:
65: aload 0
aload 2
aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
iload 1
invokevirtual java.text.DecimalFormat.appendAffix:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/lang/String;Z)V
end local 5 end local 4 66: StackMap locals:
StackMap stack:
iinc 3 -1
StackMap locals:
StackMap stack:
67: iload 3
ifge 3
end local 3 68: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 69 0 this Ljava/text/DecimalFormat;
0 69 1 localized Z
1 69 2 result Ljava/lang/StringBuffer;
2 68 3 j I
11 66 4 i I
10 66 5 digitCount I
MethodParameters:
Name Flags
localized
public void applyPattern(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual java.text.DecimalFormat.applyPattern:(Ljava/lang/String;Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/text/DecimalFormat;
0 2 1 pattern Ljava/lang/String;
MethodParameters:
Name Flags
pattern
public void applyLocalizedPattern(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokevirtual java.text.DecimalFormat.applyPattern:(Ljava/lang/String;Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/text/DecimalFormat;
0 2 1 pattern Ljava/lang/String;
MethodParameters:
Name Flags
pattern
private void applyPattern(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=29, args_size=3
start local 0 start local 1 start local 2 0: bipush 48
istore 3
start local 3 1: bipush 44
istore 4
start local 4 2: bipush 46
istore 5
start local 5 3: bipush 37
istore 6
start local 6 4: sipush 8240
istore 7
start local 7 5: bipush 35
istore 8
start local 8 6: bipush 59
istore 9
start local 9 7: ldc "E"
astore 10
start local 10 8: bipush 45
istore 11
start local 11 9: iload 2
ifeq 19
10: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getZeroDigit:()C
istore 3
11: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getGroupingSeparator:()C
istore 4
12: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDecimalSeparator:()C
istore 5
13: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPercent:()C
istore 6
14: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPerMill:()C
istore 7
15: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDigit:()C
istore 8
16: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getPatternSeparator:()C
istore 9
17: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getExponentSeparator:()Ljava/lang/String;
astore 10
18: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMinusSign:()C
istore 11
19: StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int
StackMap stack:
iconst_0
istore 12
start local 12 20: aload 0
iconst_0
putfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
21: aload 0
iconst_0
putfield java.text.DecimalFormat.isCurrencyFormat:Z
22: aload 0
iconst_0
putfield java.text.DecimalFormat.useExponentialNotation:Z
23: iconst_0
istore 13
start local 13 24: iconst_1
istore 14
start local 14 25: goto 236
26: StackMap locals: int int int
StackMap stack:
iconst_0
istore 15
start local 15 27: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 16
start local 16 28: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 17
start local 17 29: iconst_m1
istore 18
start local 18 30: iconst_1
istore 19
start local 19 31: iconst_0
istore 20
start local 20 32: iconst_0
istore 21
start local 21 33: iconst_0
istore 22
start local 22 34: iconst_m1
istore 23
start local 23 35: iconst_0
istore 24
start local 24 36: aload 16
astore 25
start local 25 37: iload 13
istore 26
start local 26 38: goto 182
39: StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int int int int int java.lang.StringBuffer java.lang.StringBuffer int int int int int int int java.lang.StringBuffer int
StackMap stack:
aload 1
iload 26
invokevirtual java.lang.String.charAt:(I)C
istore 27
start local 27 40: iload 24
tableswitch { // 0 - 2
0: 41
1: 108
2: 41
default: 181
}
41: StackMap locals: int
StackMap stack:
iload 15
ifeq 50
42: iload 27
bipush 39
if_icmpne 106
43: iload 26
iconst_1
iadd
aload 1
invokevirtual java.lang.String.length:()I
if_icmpge 48
44: aload 1
iload 26
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
bipush 39
if_icmpne 48
45: iinc 26 1
46: aload 25
ldc "''"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
47: goto 181
48: StackMap locals:
StackMap stack:
iconst_0
istore 15
49: goto 181
50: StackMap locals:
StackMap stack:
iload 27
iload 8
if_icmpeq 54
51: iload 27
iload 3
if_icmpeq 54
52: iload 27
iload 4
if_icmpeq 54
53: iload 27
iload 5
if_icmpne 57
54: StackMap locals:
StackMap stack:
iconst_1
istore 24
55: iinc 26 -1
56: goto 181
57: StackMap locals:
StackMap stack:
iload 27
sipush 164
if_icmpne 70
58: iload 26
iconst_1
iadd
aload 1
invokevirtual java.lang.String.length:()I
if_icmpge 61
59: aload 1
iload 26
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
sipush 164
if_icmpne 61
60: iconst_1
goto 62
StackMap locals:
StackMap stack:
61: iconst_0
StackMap locals:
StackMap stack: int
62: istore 28
start local 28 63: iload 28
ifeq 65
64: iinc 26 1
65: StackMap locals: int
StackMap stack:
aload 0
iconst_1
putfield java.text.DecimalFormat.isCurrencyFormat:Z
66: aload 25
iload 28
ifeq 67
ldc "'\u00A4\u00A4"
goto 68
StackMap locals:
StackMap stack: java.lang.StringBuffer
67: ldc "'\u00A4"
StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int int int int int java.lang.StringBuffer java.lang.StringBuffer int int int int int int int java.lang.StringBuffer int int int
StackMap stack: java.lang.StringBuffer java.lang.String
68: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
69: goto 181
end local 28 70: StackMap locals:
StackMap stack:
iload 27
bipush 39
if_icmpne 79
71: iload 27
bipush 39
if_icmpne 106
72: iload 26
iconst_1
iadd
aload 1
invokevirtual java.lang.String.length:()I
if_icmpge 77
73: aload 1
iload 26
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
bipush 39
if_icmpne 77
74: iinc 26 1
75: aload 25
ldc "''"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
76: goto 181
77: StackMap locals:
StackMap stack:
iconst_1
istore 15
78: goto 181
79: StackMap locals:
StackMap stack:
iload 27
iload 9
if_icmpne 87
80: iload 24
ifeq 81
iload 14
ifne 84
81: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Unquoted special character '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
82: iload 27
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc "' in pattern \""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
83: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
84: StackMap locals:
StackMap stack:
iload 26
iconst_1
iadd
istore 13
85: aload 1
invokevirtual java.lang.String.length:()I
istore 26
86: goto 181
87: StackMap locals:
StackMap stack:
iload 27
iload 6
if_icmpne 95
88: iload 19
iconst_1
if_icmpeq 92
89: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Too many percent/per mille characters in pattern \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
90: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
91: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
92: StackMap locals:
StackMap stack:
bipush 100
istore 19
93: aload 25
ldc "'%"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
94: goto 181
95: StackMap locals:
StackMap stack:
iload 27
iload 7
if_icmpne 103
96: iload 19
iconst_1
if_icmpeq 100
97: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Too many percent/per mille characters in pattern \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
98: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
99: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
100: StackMap locals:
StackMap stack:
sipush 1000
istore 19
101: aload 25
ldc "'\u2030"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
102: goto 181
103: StackMap locals:
StackMap stack:
iload 27
iload 11
if_icmpne 106
104: aload 25
ldc "'-"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
105: goto 181
106: StackMap locals:
StackMap stack:
aload 25
iload 27
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
107: goto 181
108: StackMap locals:
StackMap stack:
iload 14
ifne 129
109: goto 127
110: StackMap locals:
StackMap stack:
aload 1
iload 26
invokevirtual java.lang.String.charAt:(I)C
istore 28
start local 28 111: iload 28
iload 8
if_icmpeq 115
112: iload 28
iload 3
if_icmpeq 115
113: iload 28
iload 4
if_icmpeq 115
114: iload 28
iload 5
if_icmpne 117
115: StackMap locals: int
StackMap stack:
iinc 26 1
116: goto 127
StackMap locals:
StackMap stack:
117: aload 1
iload 26
aload 10
118: iconst_0
aload 10
invokevirtual java.lang.String.length:()I
119: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
120: ifeq 123
121: iload 26
aload 10
invokevirtual java.lang.String.length:()I
iadd
istore 26
122: goto 127
123: StackMap locals:
StackMap stack:
iinc 26 -1
124: iconst_2
istore 24
125: aload 17
astore 25
126: goto 181
end local 28 127: StackMap locals:
StackMap stack:
iload 26
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 110
128: goto 181
129: StackMap locals:
StackMap stack:
iload 27
iload 8
if_icmpne 137
130: iload 21
ifle 133
131: iinc 22 1
132: goto 134
133: StackMap locals:
StackMap stack:
iinc 20 1
134: StackMap locals:
StackMap stack:
iload 23
iflt 181
iload 18
ifge 181
135: iload 23
iconst_1
iadd
i2b
istore 23
136: goto 181
StackMap locals:
StackMap stack:
137: iload 27
iload 3
if_icmpne 146
138: iload 22
ifle 142
139: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Unexpected '0' in pattern \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
140: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
141: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
142: StackMap locals:
StackMap stack:
iinc 21 1
143: iload 23
iflt 181
iload 18
ifge 181
144: iload 23
iconst_1
iadd
i2b
istore 23
145: goto 181
StackMap locals:
StackMap stack:
146: iload 27
iload 4
if_icmpne 149
147: iconst_0
istore 23
148: goto 181
StackMap locals:
StackMap stack:
149: iload 27
iload 5
if_icmpne 156
150: iload 18
iflt 154
151: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Multiple decimal separators in pattern \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
152: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
153: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
154: StackMap locals:
StackMap stack:
iload 20
iload 21
iadd
iload 22
iadd
istore 18
155: goto 181
StackMap locals:
StackMap stack:
156: aload 1
iload 26
aload 10
iconst_0
aload 10
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
ifeq 178
157: aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 161
158: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Multiple exponential symbols in pattern \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
159: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
160: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
161: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield java.text.DecimalFormat.useExponentialNotation:Z
162: aload 0
iconst_0
putfield java.text.DecimalFormat.minExponentDigits:B
163: iload 26
aload 10
invokevirtual java.lang.String.length:()I
iadd
istore 26
164: goto 167
165: StackMap locals:
StackMap stack:
aload 0
dup
getfield java.text.DecimalFormat.minExponentDigits:B
iconst_1
iadd
i2b
putfield java.text.DecimalFormat.minExponentDigits:B
166: iinc 26 1
167: StackMap locals:
StackMap stack:
iload 26
aload 1
invokevirtual java.lang.String.length:()I
if_icmpge 169
168: aload 1
iload 26
invokevirtual java.lang.String.charAt:(I)C
iload 3
if_icmpeq 165
169: StackMap locals:
StackMap stack:
iload 20
iload 21
iadd
iconst_1
if_icmplt 171
170: aload 0
getfield java.text.DecimalFormat.minExponentDigits:B
iconst_1
if_icmpge 174
171: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Malformed exponential pattern \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
172: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
173: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
174: StackMap locals:
StackMap stack:
iconst_2
istore 24
175: aload 17
astore 25
176: iinc 26 -1
177: goto 181
178: StackMap locals:
StackMap stack:
iconst_2
istore 24
179: aload 17
astore 25
180: iinc 26 -1
end local 27 181: StackMap locals:
StackMap stack:
iinc 26 1
StackMap locals:
StackMap stack:
182: iload 26
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 39
end local 26 183: iload 21
ifne 190
iload 20
ifle 190
iload 18
iflt 190
184: iload 18
istore 26
start local 26 185: iload 26
ifne 187
186: iinc 26 1
187: StackMap locals:
StackMap stack:
iload 20
iload 26
isub
istore 22
188: iload 26
iconst_1
isub
istore 20
189: iconst_1
istore 21
end local 26 190: StackMap locals:
StackMap stack:
iload 18
ifge 191
iload 22
ifgt 194
191: StackMap locals:
StackMap stack:
iload 18
iflt 193
iload 18
iload 20
if_icmplt 194
192: iload 18
iload 20
iload 21
iadd
if_icmpgt 194
193: StackMap locals:
StackMap stack:
iload 23
ifeq 194
iload 15
ifeq 197
194: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Malformed pattern \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
195: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
196: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
197: StackMap locals:
StackMap stack:
iload 14
iconst_1
if_icmpne 232
198: aload 0
aload 16
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
putfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
199: aload 0
aload 17
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
putfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
200: aload 0
aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
putfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
201: aload 0
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
putfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
202: iload 20
iload 21
iadd
iload 22
iadd
istore 26
start local 26 203: iload 18
iflt 205
204: iload 18
goto 206
StackMap locals: int
StackMap stack:
205: iload 26
206: StackMap locals:
StackMap stack: int
istore 27
start local 27 207: aload 0
iload 27
iload 20
isub
invokevirtual java.text.DecimalFormat.setMinimumIntegerDigits:(I)V
208: aload 0
aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 210
209: iload 20
aload 0
invokevirtual java.text.DecimalFormat.getMinimumIntegerDigits:()I
iadd
goto 211
210: StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int int int int int java.lang.StringBuffer java.lang.StringBuffer int int int int int int int java.lang.StringBuffer int int
StackMap stack: java.text.DecimalFormat
ldc 2147483647
211: StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int int int int int java.lang.StringBuffer java.lang.StringBuffer int int int int int int int java.lang.StringBuffer int int
StackMap stack: java.text.DecimalFormat int
invokevirtual java.text.DecimalFormat.setMaximumIntegerDigits:(I)V
212: aload 0
iload 18
iflt 214
213: iload 26
iload 18
isub
goto 215
StackMap locals:
StackMap stack: java.text.DecimalFormat
214: iconst_0
215: StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int int int int int java.lang.StringBuffer java.lang.StringBuffer int int int int int int int java.lang.StringBuffer int int
StackMap stack: java.text.DecimalFormat int
invokevirtual java.text.DecimalFormat.setMaximumFractionDigits:(I)V
216: aload 0
iload 18
iflt 218
217: iload 20
iload 21
iadd
iload 18
isub
goto 219
StackMap locals:
StackMap stack: java.text.DecimalFormat
218: iconst_0
219: StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int int int int int java.lang.StringBuffer java.lang.StringBuffer int int int int int int int java.lang.StringBuffer int int
StackMap stack: java.text.DecimalFormat int
invokevirtual java.text.DecimalFormat.setMinimumFractionDigits:(I)V
220: aload 0
iload 23
ifle 221
iconst_1
goto 222
StackMap locals:
StackMap stack: java.text.DecimalFormat
221: iconst_0
StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int int int int int java.lang.StringBuffer java.lang.StringBuffer int int int int int int int java.lang.StringBuffer int int
StackMap stack: java.text.DecimalFormat int
222: invokevirtual java.text.DecimalFormat.setGroupingUsed:(Z)V
223: aload 0
iload 23
ifle 224
iload 23
goto 225
StackMap locals:
StackMap stack: java.text.DecimalFormat
224: iconst_0
StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int int int int int java.lang.StringBuffer java.lang.StringBuffer int int int int int int int java.lang.StringBuffer int int
StackMap stack: java.text.DecimalFormat int
225: putfield java.text.DecimalFormat.groupingSize:B
226: aload 0
iload 19
putfield java.text.DecimalFormat.multiplier:I
227: aload 0
iload 18
ifeq 229
228: iload 18
iload 26
if_icmpeq 229
iconst_0
goto 230
StackMap locals:
StackMap stack: java.text.DecimalFormat
229: iconst_1
230: StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int int int int int java.lang.StringBuffer java.lang.StringBuffer int int int int int int int java.lang.StringBuffer int int
StackMap stack: java.text.DecimalFormat int
invokevirtual java.text.DecimalFormat.setDecimalSeparatorAlwaysShown:(Z)V
end local 27 end local 26 231: goto 235
232: StackMap locals:
StackMap stack:
aload 0
aload 16
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
putfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
233: aload 0
aload 17
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
putfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
234: iconst_1
istore 12
end local 25 end local 24 end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 235: StackMap locals: java.text.DecimalFormat java.lang.String int int int int int int int int java.lang.String int int int int
StackMap stack:
iinc 14 -1
StackMap locals:
StackMap stack:
236: iload 14
iflt 237
iload 13
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 26
end local 14 237: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.String.isEmpty:()Z
ifeq 243
238: aload 0
aload 0
ldc ""
dup_x1
putfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
putfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
239: aload 0
iconst_0
invokevirtual java.text.DecimalFormat.setMinimumIntegerDigits:(I)V
240: aload 0
ldc 2147483647
invokevirtual java.text.DecimalFormat.setMaximumIntegerDigits:(I)V
241: aload 0
iconst_0
invokevirtual java.text.DecimalFormat.setMinimumFractionDigits:(I)V
242: aload 0
ldc 2147483647
invokevirtual java.text.DecimalFormat.setMaximumFractionDigits:(I)V
243: StackMap locals:
StackMap stack:
iload 12
ifeq 246
244: aload 0
getfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 248
245: aload 0
getfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 248
246: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield java.text.DecimalFormat.posSuffixPattern:Ljava/lang/String;
putfield java.text.DecimalFormat.negSuffixPattern:Ljava/lang/String;
247: aload 0
new java.lang.StringBuilder
dup
ldc "'-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield java.text.DecimalFormat.posPrefixPattern:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield java.text.DecimalFormat.negPrefixPattern:Ljava/lang/String;
248: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.text.DecimalFormat.expandAffixes:()V
249: return
end local 13 end local 12 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 250 0 this Ljava/text/DecimalFormat;
0 250 1 pattern Ljava/lang/String;
0 250 2 localized Z
1 250 3 zeroDigit C
2 250 4 groupingSeparator C
3 250 5 decimalSeparator C
4 250 6 percent C
5 250 7 perMill C
6 250 8 digit C
7 250 9 separator C
8 250 10 exponent Ljava/lang/String;
9 250 11 minus C
20 250 12 gotNegative Z
24 250 13 start I
25 237 14 j I
27 235 15 inQuote Z
28 235 16 prefix Ljava/lang/StringBuffer;
29 235 17 suffix Ljava/lang/StringBuffer;
30 235 18 decimalPos I
31 235 19 multiplier I
32 235 20 digitLeftCount I
33 235 21 zeroDigitCount I
34 235 22 digitRightCount I
35 235 23 groupingCount B
36 235 24 phase I
37 235 25 affix Ljava/lang/StringBuffer;
38 183 26 pos I
40 181 27 ch C
63 70 28 doubled Z
111 127 28 negPatternChar C
185 190 26 n I
203 231 26 digitTotalCount I
207 231 27 effectiveDecimalPos I
MethodParameters:
Name Flags
pattern
localized
public void setMaximumIntegerDigits(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
iload 1
invokestatic java.lang.Math.max:(II)I
ldc 2147483647
invokestatic java.lang.Math.min:(II)I
putfield java.text.DecimalFormat.maximumIntegerDigits:I
1: aload 0
aload 0
getfield java.text.DecimalFormat.maximumIntegerDigits:I
sipush 309
if_icmple 3
2: sipush 309
goto 4
StackMap locals:
StackMap stack: java.text.DecimalFormat
3: aload 0
getfield java.text.DecimalFormat.maximumIntegerDigits:I
4: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat int
invokespecial java.text.NumberFormat.setMaximumIntegerDigits:(I)V
5: aload 0
getfield java.text.DecimalFormat.minimumIntegerDigits:I
aload 0
getfield java.text.DecimalFormat.maximumIntegerDigits:I
if_icmple 11
6: aload 0
aload 0
getfield java.text.DecimalFormat.maximumIntegerDigits:I
putfield java.text.DecimalFormat.minimumIntegerDigits:I
7: aload 0
aload 0
getfield java.text.DecimalFormat.minimumIntegerDigits:I
sipush 309
if_icmple 9
8: sipush 309
goto 10
StackMap locals:
StackMap stack: java.text.DecimalFormat
9: aload 0
getfield java.text.DecimalFormat.minimumIntegerDigits:I
10: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat int
invokespecial java.text.NumberFormat.setMinimumIntegerDigits:(I)V
11: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
12: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljava/text/DecimalFormat;
0 13 1 newValue I
MethodParameters:
Name Flags
newValue
public void setMinimumIntegerDigits(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
iload 1
invokestatic java.lang.Math.max:(II)I
ldc 2147483647
invokestatic java.lang.Math.min:(II)I
putfield java.text.DecimalFormat.minimumIntegerDigits:I
1: aload 0
aload 0
getfield java.text.DecimalFormat.minimumIntegerDigits:I
sipush 309
if_icmple 3
2: sipush 309
goto 4
StackMap locals:
StackMap stack: java.text.DecimalFormat
3: aload 0
getfield java.text.DecimalFormat.minimumIntegerDigits:I
4: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat int
invokespecial java.text.NumberFormat.setMinimumIntegerDigits:(I)V
5: aload 0
getfield java.text.DecimalFormat.minimumIntegerDigits:I
aload 0
getfield java.text.DecimalFormat.maximumIntegerDigits:I
if_icmple 11
6: aload 0
aload 0
getfield java.text.DecimalFormat.minimumIntegerDigits:I
putfield java.text.DecimalFormat.maximumIntegerDigits:I
7: aload 0
aload 0
getfield java.text.DecimalFormat.maximumIntegerDigits:I
sipush 309
if_icmple 9
8: sipush 309
goto 10
StackMap locals:
StackMap stack: java.text.DecimalFormat
9: aload 0
getfield java.text.DecimalFormat.maximumIntegerDigits:I
10: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat int
invokespecial java.text.NumberFormat.setMaximumIntegerDigits:(I)V
11: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
12: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljava/text/DecimalFormat;
0 13 1 newValue I
MethodParameters:
Name Flags
newValue
public void setMaximumFractionDigits(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
iload 1
invokestatic java.lang.Math.max:(II)I
ldc 2147483647
invokestatic java.lang.Math.min:(II)I
putfield java.text.DecimalFormat.maximumFractionDigits:I
1: aload 0
aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
sipush 340
if_icmple 3
2: sipush 340
goto 4
StackMap locals:
StackMap stack: java.text.DecimalFormat
3: aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
4: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat int
invokespecial java.text.NumberFormat.setMaximumFractionDigits:(I)V
5: aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
if_icmple 11
6: aload 0
aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
putfield java.text.DecimalFormat.minimumFractionDigits:I
7: aload 0
aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
sipush 340
if_icmple 9
8: sipush 340
goto 10
StackMap locals:
StackMap stack: java.text.DecimalFormat
9: aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
10: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat int
invokespecial java.text.NumberFormat.setMinimumFractionDigits:(I)V
11: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
12: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljava/text/DecimalFormat;
0 13 1 newValue I
MethodParameters:
Name Flags
newValue
public void setMinimumFractionDigits(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
iload 1
invokestatic java.lang.Math.max:(II)I
ldc 2147483647
invokestatic java.lang.Math.min:(II)I
putfield java.text.DecimalFormat.minimumFractionDigits:I
1: aload 0
aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
sipush 340
if_icmple 3
2: sipush 340
goto 4
StackMap locals:
StackMap stack: java.text.DecimalFormat
3: aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
4: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat int
invokespecial java.text.NumberFormat.setMinimumFractionDigits:(I)V
5: aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
if_icmple 11
6: aload 0
aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
putfield java.text.DecimalFormat.maximumFractionDigits:I
7: aload 0
aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
sipush 340
if_icmple 9
8: sipush 340
goto 10
StackMap locals:
StackMap stack: java.text.DecimalFormat
9: aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
10: StackMap locals: java.text.DecimalFormat int
StackMap stack: java.text.DecimalFormat int
invokespecial java.text.NumberFormat.setMaximumFractionDigits:(I)V
11: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
12: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljava/text/DecimalFormat;
0 13 1 newValue I
MethodParameters:
Name Flags
newValue
public int getMaximumIntegerDigits();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.maximumIntegerDigits:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public int getMinimumIntegerDigits();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.minimumIntegerDigits:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public int getMaximumFractionDigits();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.maximumFractionDigits:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public int getMinimumFractionDigits();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.minimumFractionDigits:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public java.util.Currency getCurrency();
descriptor: ()Ljava/util/Currency;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getCurrency:()Ljava/util/Currency;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public void setCurrency(java.util.Currency);
descriptor: (Ljava/util/Currency;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getCurrency:()Ljava/util/Currency;
if_acmpeq 4
1: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
aload 1
invokevirtual java.text.DecimalFormatSymbols.setCurrency:(Ljava/util/Currency;)V
2: aload 0
getfield java.text.DecimalFormat.isCurrencyFormat:Z
ifeq 4
3: aload 0
invokevirtual java.text.DecimalFormat.expandAffixes:()V
4: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/text/DecimalFormat;
0 6 1 currency Ljava/util/Currency;
MethodParameters:
Name Flags
currency
public java.math.RoundingMode getRoundingMode();
descriptor: ()Ljava/math/RoundingMode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.DecimalFormat.roundingMode:Ljava/math/RoundingMode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/DecimalFormat;
public void setRoundingMode(java.math.RoundingMode);
descriptor: (Ljava/math/RoundingMode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield java.text.DecimalFormat.roundingMode:Ljava/math/RoundingMode;
3: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
aload 1
invokevirtual java.text.DigitList.setRoundingMode:(Ljava/math/RoundingMode;)V
4: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/text/DecimalFormat;
0 6 1 roundingMode Ljava/math/RoundingMode;
MethodParameters:
Name Flags
roundingMode
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
1: aload 0
new java.text.DigitList
dup
invokespecial java.text.DigitList.<init>:()V
putfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
2: aload 0
iconst_1
putfield java.text.DecimalFormat.fastPathCheckNeeded:Z
3: aload 0
iconst_0
putfield java.text.DecimalFormat.isFastPath:Z
4: aload 0
aconst_null
putfield java.text.DecimalFormat.fastPathData:Ljava/text/DecimalFormat$FastPathData;
5: aload 0
getfield java.text.DecimalFormat.serialVersionOnStream:I
iconst_4
if_icmpge 8
6: aload 0
getstatic java.math.RoundingMode.HALF_EVEN:Ljava/math/RoundingMode;
invokevirtual java.text.DecimalFormat.setRoundingMode:(Ljava/math/RoundingMode;)V
7: goto 9
8: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual java.text.DecimalFormat.getRoundingMode:()Ljava/math/RoundingMode;
invokevirtual java.text.DecimalFormat.setRoundingMode:(Ljava/math/RoundingMode;)V
9: StackMap locals:
StackMap stack:
aload 0
invokespecial java.text.NumberFormat.getMaximumIntegerDigits:()I
sipush 309
if_icmpgt 11
10: aload 0
invokespecial java.text.NumberFormat.getMaximumFractionDigits:()I
sipush 340
if_icmple 12
11: StackMap locals:
StackMap stack:
new java.io.InvalidObjectException
dup
ldc "Digit count out of range"
invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.serialVersionOnStream:I
iconst_3
if_icmpge 17
13: aload 0
aload 0
invokespecial java.text.NumberFormat.getMaximumIntegerDigits:()I
invokevirtual java.text.DecimalFormat.setMaximumIntegerDigits:(I)V
14: aload 0
aload 0
invokespecial java.text.NumberFormat.getMinimumIntegerDigits:()I
invokevirtual java.text.DecimalFormat.setMinimumIntegerDigits:(I)V
15: aload 0
aload 0
invokespecial java.text.NumberFormat.getMaximumFractionDigits:()I
invokevirtual java.text.DecimalFormat.setMaximumFractionDigits:(I)V
16: aload 0
aload 0
invokespecial java.text.NumberFormat.getMinimumFractionDigits:()I
invokevirtual java.text.DecimalFormat.setMinimumFractionDigits:(I)V
17: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.serialVersionOnStream:I
iconst_1
if_icmpge 19
18: aload 0
iconst_0
putfield java.text.DecimalFormat.useExponentialNotation:Z
19: StackMap locals:
StackMap stack:
aload 0
iconst_4
putfield java.text.DecimalFormat.serialVersionOnStream:I
20: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Ljava/text/DecimalFormat;
0 21 1 stream Ljava/io/ObjectInputStream;
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
stream
}
SourceFile: "DecimalFormat.java"
NestMembers:
java.text.DecimalFormat$DigitArrays java.text.DecimalFormat$FastPathData
InnerClasses:
private DigitArrays = java.text.DecimalFormat$DigitArrays of java.text.DecimalFormat
private FastPathData = java.text.DecimalFormat$FastPathData of java.text.DecimalFormat
public Field = java.text.Format$Field of java.text.Format
abstract FieldDelegate = java.text.Format$FieldDelegate of java.text.Format
public Field = java.text.NumberFormat$Field of java.text.NumberFormat
public final Category = java.util.Locale$Category of java.util.Locale