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
private java.lang.StringBuffer format(double, java.lang.StringBuffer, java.text.Format$FieldDelegate);
descriptor: (DLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=11, 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: aload 3
areturn
end local 5 8: StackMap locals:
StackMap stack:
dload 1
dconst_0
dcmpg
iflt 10
dload 1
dconst_0
dcmpl
ifne 9
dconst_1
dload 1
ddiv
dconst_0
dcmpg
iflt 10
StackMap locals:
StackMap stack:
9: iconst_0
goto 11
StackMap locals:
StackMap stack:
10: iconst_1
StackMap locals:
StackMap stack: int
11: aload 0
getfield java.text.DecimalFormat.multiplier:I
ifge 12
iconst_1
goto 13
StackMap locals:
StackMap stack: int
12: iconst_0
StackMap locals: java.text.DecimalFormat double java.lang.StringBuffer java.text.Format$FieldDelegate
StackMap stack: int int
13: ixor
istore 5
start local 5 14: aload 0
getfield java.text.DecimalFormat.multiplier:I
iconst_1
if_icmpeq 16
15: dload 1
aload 0
getfield java.text.DecimalFormat.multiplier:I
i2d
dmul
dstore 1
16: StackMap locals: int
StackMap stack:
dload 1
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 39
17: iload 5
ifeq 22
18: aload 0
aload 3
aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
aload 4
19: aload 0
invokevirtual java.text.DecimalFormat.getNegativePrefixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
20: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
21: goto 25
22: StackMap locals:
StackMap stack:
aload 0
aload 3
aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
aload 4
23: aload 0
invokevirtual java.text.DecimalFormat.getPositivePrefixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
24: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
25: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.StringBuffer.length:()I
istore 6
start local 6 26: 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
27: aload 4
iconst_0
getstatic java.text.NumberFormat$Field.INTEGER:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.INTEGER:Ljava/text/NumberFormat$Field;
28: iload 6
aload 3
invokevirtual java.lang.StringBuffer.length:()I
aload 3
29: invokeinterface java.text.Format$FieldDelegate.formatted:(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
30: iload 5
ifeq 35
31: aload 0
aload 3
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
aload 4
32: aload 0
invokevirtual java.text.DecimalFormat.getNegativeSuffixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
33: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
34: goto 38
35: StackMap locals: int
StackMap stack:
aload 0
aload 3
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
aload 4
36: aload 0
invokevirtual java.text.DecimalFormat.getPositiveSuffixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
37: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
38: StackMap locals:
StackMap stack:
aload 3
areturn
end local 6 39: StackMap locals:
StackMap stack:
iload 5
ifeq 41
40: dload 1
dneg
dstore 1
41: StackMap locals:
StackMap stack:
getstatic java.text.DecimalFormat.$assertionsDisabled:Z
ifne 43
dload 1
dconst_0
dcmpl
iflt 42
dload 1
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 43
StackMap locals:
StackMap stack:
42: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
43: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
dup
astore 6
monitorenter
44: aload 0
invokespecial java.text.NumberFormat.getMaximumIntegerDigits:()I
istore 7
start local 7 45: aload 0
invokespecial java.text.NumberFormat.getMinimumIntegerDigits:()I
istore 8
start local 8 46: aload 0
invokespecial java.text.NumberFormat.getMaximumFractionDigits:()I
istore 9
start local 9 47: aload 0
invokespecial java.text.NumberFormat.getMinimumFractionDigits:()I
istore 10
start local 10 48: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
iload 5
dload 1
aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 50
49: iload 7
iload 9
iadd
goto 51
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
50: iload 9
51: 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 52
iconst_0
goto 53
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
52: iconst_1
53: 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
54: aload 0
aload 3
aload 4
iload 5
iconst_0
55: iload 7
iload 8
iload 9
iload 10
56: invokevirtual java.text.DecimalFormat.subformat:(Ljava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;ZZIIII)Ljava/lang/StringBuffer;
aload 6
monitorexit
57: areturn
end local 10 end local 9 end local 8 end local 7 58: 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
59: athrow
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 60 0 this Ljava/text/DecimalFormat;
0 60 1 number D
0 60 3 result Ljava/lang/StringBuffer;
0 60 4 delegate Ljava/text/Format$FieldDelegate;
3 8 5 iFieldStart I
14 60 5 isNegative Z
26 39 6 iFieldStart I
45 58 7 maxIntDigits I
46 58 8 minIntDigits I
47 58 9 maxFraDigits I
48 58 10 minFraDigits I
Exception table:
from to target type
44 57 58 any
58 59 58 any
MethodParameters:
Name Flags
number
result
delegate
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
private java.lang.StringBuffer format(long, java.lang.StringBuffer, java.text.Format$FieldDelegate);
descriptor: (JLjava/lang/StringBuffer;Ljava/text/Format$FieldDelegate;)Ljava/lang/StringBuffer;
flags: (0x0002) ACC_PRIVATE
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
private 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: (0x0002) ACC_PRIVATE
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
private 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: (0x0002) ACC_PRIVATE
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
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=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.getZeroDigit:()C
istore 9
start local 9 1: iload 9
bipush 48
isub
istore 10
start local 10 2: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getGroupingSeparator:()C
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:
iload 3
ifeq 14
10: aload 0
aload 1
aload 0
getfield java.text.DecimalFormat.negativePrefix:Ljava/lang/String;
aload 2
11: aload 0
invokevirtual java.text.DecimalFormat.getNegativePrefixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
12: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
13: goto 17
14: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield java.text.DecimalFormat.positivePrefix:Ljava/lang/String;
aload 2
15: aload 0
invokevirtual java.text.DecimalFormat.getPositivePrefixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
16: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
17: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.useExponentialNotation:Z
ifeq 113
18: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 13
start local 13 19: iconst_m1
istore 14
start local 14 20: iconst_m1
istore 15
start local 15 21: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
istore 16
start local 16 22: iload 5
istore 17
start local 17 23: iload 6
istore 18
start local 18 24: iload 17
iconst_1
if_icmple 31
iload 17
iload 6
if_icmple 31
25: iload 16
iconst_1
if_icmplt 28
26: iload 16
iconst_1
isub
iload 17
idiv
iload 17
imul
istore 16
27: goto 29
28: 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
29: StackMap locals:
StackMap stack:
iconst_1
istore 18
30: goto 32
31: StackMap locals:
StackMap stack:
iload 16
iload 18
isub
istore 16
32: StackMap locals:
StackMap stack:
iload 6
iload 8
iadd
istore 19
start local 19 33: iload 19
ifge 35
34: ldc 2147483647
istore 19
35: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
invokevirtual java.text.DigitList.isZero:()Z
ifeq 36
iload 18
goto 37
36: StackMap locals:
StackMap stack:
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
iload 16
isub
37: StackMap locals:
StackMap stack: int
istore 20
start local 20 38: iload 19
iload 20
if_icmpge 40
39: iload 20
istore 19
40: 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 41: iload 19
iload 21
if_icmple 43
42: iload 19
istore 21
43: StackMap locals: int
StackMap stack:
iconst_0
istore 22
start local 22 44: iconst_0
istore 23
start local 23 45: goto 56
46: StackMap locals: int int
StackMap stack:
iload 23
iload 20
if_icmpne 51
47: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 14
48: aload 1
iload 12
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
49: iconst_1
istore 22
50: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 15
51: 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 53
52: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.digits:[C
iload 23
caload
iload 10
iadd
i2c
goto 54
53: StackMap locals:
StackMap stack: java.lang.StringBuffer
iload 9
54: 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
55: iinc 23 1
StackMap locals:
StackMap stack:
56: iload 23
iload 21
if_icmplt 46
end local 23 57: aload 0
getfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
ifeq 62
iload 21
iload 20
if_icmpne 62
58: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 14
59: aload 1
iload 12
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
60: iconst_1
istore 22
61: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 15
62: StackMap locals:
StackMap stack:
iload 14
iconst_m1
if_icmpne 64
63: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 14
64: 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;
65: iload 13
iload 14
aload 1
66: invokeinterface java.text.Format$FieldDelegate.formatted:(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
67: iload 22
ifeq 72
68: aload 2
getstatic java.text.NumberFormat$Field.DECIMAL_SEPARATOR:Ljava/text/NumberFormat$Field;
69: getstatic java.text.NumberFormat$Field.DECIMAL_SEPARATOR:Ljava/text/NumberFormat$Field;
70: iload 14
iload 15
aload 1
71: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
72: StackMap locals:
StackMap stack:
iload 15
iconst_m1
if_icmpne 74
73: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 15
74: 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;
75: iload 15
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
76: invokeinterface java.text.Format$FieldDelegate.formatted:(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
77: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 23
start local 23 78: 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
79: aload 2
getstatic java.text.NumberFormat$Field.EXPONENT_SYMBOL:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.EXPONENT_SYMBOL:Ljava/text/NumberFormat$Field;
80: iload 23
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
81: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
82: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
invokevirtual java.text.DigitList.isZero:()Z
ifeq 84
83: iconst_0
istore 16
84: StackMap locals: int
StackMap stack:
iload 16
ifge 85
iconst_1
goto 86
StackMap locals:
StackMap stack:
85: iconst_0
StackMap locals:
StackMap stack: int
86: istore 24
start local 24 87: iload 24
ifeq 94
88: iload 16
ineg
istore 16
89: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 23
90: 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
91: aload 2
getstatic java.text.NumberFormat$Field.EXPONENT_SIGN:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.EXPONENT_SIGN:Ljava/text/NumberFormat$Field;
92: iload 23
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
93: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
94: 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
95: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 25
start local 25 96: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
istore 26
start local 26 97: goto 100
98: StackMap locals: int int
StackMap stack:
aload 1
iload 9
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.minExponentDigits:B
if_icmplt 98
end local 26 101: iconst_0
istore 26
start local 26 102: goto 108
103: 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 105
104: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.digits:[C
iload 26
caload
iload 10
iadd
i2c
goto 106
StackMap locals:
StackMap stack: java.lang.StringBuffer
105: iload 9
106: 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
107: iinc 26 1
StackMap locals:
StackMap stack:
108: iload 26
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
if_icmplt 103
end local 26 109: aload 2
getstatic java.text.NumberFormat$Field.EXPONENT:Ljava/text/NumberFormat$Field;
getstatic java.text.NumberFormat$Field.EXPONENT:Ljava/text/NumberFormat$Field;
iload 25
110: aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
111: 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 112: goto 175
113: 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 114: iload 6
istore 14
start local 14 115: iconst_0
istore 15
start local 15 116: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
ifle 118
iload 14
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
if_icmpge 118
117: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
istore 14
118: StackMap locals: int int int
StackMap stack:
iload 14
iload 5
if_icmple 121
119: iload 5
istore 14
120: aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.decimalAt:I
iload 14
isub
istore 15
121: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 16
start local 16 122: iload 14
iconst_1
isub
istore 17
start local 17 123: goto 137
124: 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 127
iload 15
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
if_icmpge 127
125: 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 10
iadd
i2c
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
126: goto 128
127: StackMap locals:
StackMap stack:
aload 1
iload 9
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
128: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.text.DecimalFormat.isGroupingUsed:()Z
ifeq 136
iload 17
ifle 136
aload 0
getfield java.text.DecimalFormat.groupingSize:B
ifeq 136
129: iload 17
aload 0
getfield java.text.DecimalFormat.groupingSize:B
irem
ifne 136
130: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 18
start local 18 131: aload 1
iload 11
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
132: aload 2
getstatic java.text.NumberFormat$Field.GROUPING_SEPARATOR:Ljava/text/NumberFormat$Field;
133: getstatic java.text.NumberFormat$Field.GROUPING_SEPARATOR:Ljava/text/NumberFormat$Field;
iload 18
134: aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
135: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
end local 18 136: StackMap locals:
StackMap stack:
iinc 17 -1
StackMap locals:
StackMap stack:
137: iload 17
ifge 124
end local 17 138: iload 8
ifgt 142
139: iload 4
ifne 141
iload 15
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
140: if_icmplt 142
StackMap locals:
StackMap stack:
141: iconst_0
goto 143
StackMap locals:
StackMap stack:
142: iconst_1
StackMap locals:
StackMap stack: int
143: istore 17
start local 17 144: iload 17
ifne 146
aload 1
invokevirtual java.lang.StringBuffer.length:()I
iload 16
if_icmpne 146
145: aload 1
iload 9
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
146: 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;
147: iload 13
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
148: invokeinterface java.text.Format$FieldDelegate.formatted:(ILjava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
149: aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 18
start local 18 150: aload 0
getfield java.text.DecimalFormat.decimalSeparatorAlwaysShown:Z
ifne 151
iload 17
ifeq 152
151: StackMap locals: int
StackMap stack:
aload 1
iload 12
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
152: StackMap locals:
StackMap stack:
iload 18
aload 1
invokevirtual java.lang.StringBuffer.length:()I
if_icmpeq 157
153: aload 2
getstatic java.text.NumberFormat$Field.DECIMAL_SEPARATOR:Ljava/text/NumberFormat$Field;
154: getstatic java.text.NumberFormat$Field.DECIMAL_SEPARATOR:Ljava/text/NumberFormat$Field;
155: iload 18
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
156: invokeinterface java.text.Format$FieldDelegate.formatted:(Ljava/text/Format$Field;Ljava/lang/Object;IILjava/lang/StringBuffer;)V
157: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.StringBuffer.length:()I
istore 19
start local 19 158: iconst_0
istore 20
start local 20 159: goto 171
160: StackMap locals: int int
StackMap stack:
iload 20
iload 8
if_icmplt 163
161: iload 4
ifne 172
iload 15
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
if_icmplt 163
162: goto 172
163: 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 166
164: aload 1
iload 9
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
165: goto 170
166: StackMap locals:
StackMap stack:
iload 4
ifne 169
iload 15
aload 0
getfield java.text.DecimalFormat.digitList:Ljava/text/DigitList;
getfield java.text.DigitList.count:I
if_icmpge 169
167: 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 10
iadd
i2c
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
168: goto 170
169: StackMap locals:
StackMap stack:
aload 1
iload 9
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
170: StackMap locals:
StackMap stack:
iinc 20 1
StackMap locals:
StackMap stack:
171: iload 20
iload 7
if_icmplt 160
end local 20 172: 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;
173: iload 19
aload 1
invokevirtual java.lang.StringBuffer.length:()I
aload 1
174: 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 175: StackMap locals: java.text.DecimalFormat java.lang.StringBuffer java.text.Format$FieldDelegate int int int int int int int int int int
StackMap stack:
iload 3
ifeq 180
176: aload 0
aload 1
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
aload 2
177: aload 0
invokevirtual java.text.DecimalFormat.getNegativeSuffixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
178: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
179: goto 183
180: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
aload 2
181: aload 0
invokevirtual java.text.DecimalFormat.getPositiveSuffixFieldPositions:()[Ljava/text/FieldPosition;
getstatic java.text.NumberFormat$Field.SIGN:Ljava/text/NumberFormat$Field;
182: invokevirtual java.text.DecimalFormat.append:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljava/text/Format$FieldDelegate;[Ljava/text/FieldPosition;Ljava/text/Format$Field;)V
183: StackMap locals:
StackMap stack:
aload 1
areturn
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 184 0 this Ljava/text/DecimalFormat;
0 184 1 result Ljava/lang/StringBuffer;
0 184 2 delegate Ljava/text/Format$FieldDelegate;
0 184 3 isNegative Z
0 184 4 isInteger Z
0 184 5 maxIntDigits I
0 184 6 minIntDigits I
0 184 7 maxFraDigits I
0 184 8 minFraDigits I
1 184 9 zero C
2 184 10 zeroDelta I
3 184 11 grouping C
7 184 12 decimal C
19 112 13 iFieldStart I
20 112 14 iFieldEnd I
21 112 15 fFieldStart I
22 112 16 exponent I
23 112 17 repeat I
24 112 18 minimumIntegerDigits I
33 112 19 minimumDigits I
38 112 20 integerDigits I
41 112 21 totalDigits I
44 112 22 addedDecimalSeparator Z
45 57 23 i I
78 112 23 fieldStart I
87 112 24 negativeExponent Z
96 112 25 eFieldStart I
97 101 26 i I
102 109 26 i I
114 175 13 iFieldStart I
115 175 14 count I
116 175 15 digitIndex I
122 175 16 sizeBeforeIntegerPart I
123 138 17 i I
131 136 18 gStart I
144 175 17 fractionPresent Z
150 175 18 sStart I
158 175 19 fFieldStart I
159 172 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=8, locals=27, 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 11
start local 11 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 12
start local 12 8: iload 11
ifeq 14
iload 12
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 12
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 top 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 11
14: StackMap locals:
StackMap stack:
iload 11
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 12
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 7
iconst_0
iconst_0
bastore
23: iload 6
ifne 30
aload 1
iload 8
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getInfinity:()Ljava/lang/String;
iconst_0
24: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getInfinity:()Ljava/lang/String;
invokevirtual java.lang.String.length:()I
25: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
26: ifeq 30
27: iload 8
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 8
28: aload 7
iconst_0
iconst_1
bastore
29: goto 101
30: StackMap locals:
StackMap stack:
aload 5
aload 5
iconst_0
dup_x1
putfield java.text.DigitList.count:I
putfield java.text.DigitList.decimalAt:I
31: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getZeroDigit:()C
istore 13
start local 13 32: aload 0
getfield java.text.DecimalFormat.isCurrencyFormat:Z
ifeq 34
33: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getMonetaryDecimalSeparator:()C
goto 35
34: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getDecimalSeparator:()C
35: StackMap locals:
StackMap stack: int
istore 14
start local 14 36: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getGroupingSeparator:()C
istore 15
start local 15 37: aload 0
getfield java.text.DecimalFormat.symbols:Ljava/text/DecimalFormatSymbols;
invokevirtual java.text.DecimalFormatSymbols.getExponentSeparator:()Ljava/lang/String;
astore 16
start local 16 38: iconst_0
istore 17
start local 17 39: iconst_0
istore 18
start local 18 40: iconst_0
istore 19
start local 19 41: iconst_0
istore 20
start local 20 42: iconst_0
istore 21
start local 21 43: iconst_m1
istore 10
start local 10 44: goto 91
45: 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 int int int int java.lang.String int int int int int
StackMap stack:
aload 1
iload 8
invokevirtual java.lang.String.charAt:(I)C
istore 22
start local 22 46: iload 22
iload 13
isub
istore 23
start local 23 47: iload 23
iflt 48
iload 23
bipush 9
if_icmple 49
48: StackMap locals: int int
StackMap stack:
iload 22
bipush 10
invokestatic java.lang.Character.digit:(CI)I
istore 23
49: StackMap locals:
StackMap stack:
iload 23
ifne 60
50: iconst_m1
istore 10
51: iconst_1
istore 19
52: aload 5
getfield java.text.DigitList.count:I
ifne 57
53: iload 17
ifne 55
54: goto 90
55: StackMap locals:
StackMap stack:
aload 5
dup
getfield java.text.DigitList.decimalAt:I
iconst_1
isub
putfield java.text.DigitList.decimalAt:I
56: goto 90
57: StackMap locals:
StackMap stack:
iinc 21 1
58: aload 5
iload 23
bipush 48
iadd
i2c
invokevirtual java.text.DigitList.append:(C)V
59: goto 90
StackMap locals:
StackMap stack:
60: iload 23
ifle 66
iload 23
bipush 9
if_icmpgt 66
61: iconst_1
istore 19
62: iinc 21 1
63: aload 5
iload 23
bipush 48
iadd
i2c
invokevirtual java.text.DigitList.append:(C)V
64: iconst_m1
istore 10
65: goto 90
StackMap locals:
StackMap stack:
66: iload 6
ifne 72
iload 22
iload 14
if_icmpne 72
67: aload 0
invokevirtual java.text.DecimalFormat.isParseIntegerOnly:()Z
ifne 92
iload 17
ifeq 69
68: goto 92
69: StackMap locals:
StackMap stack:
aload 5
iload 21
putfield java.text.DigitList.decimalAt:I
70: iconst_1
istore 17
71: goto 90
StackMap locals:
StackMap stack:
72: iload 6
ifne 77
iload 22
iload 15
if_icmpne 77
aload 0
invokevirtual java.text.DecimalFormat.isGroupingUsed:()Z
ifeq 77
73: iload 17
ifeq 75
74: goto 92
75: StackMap locals:
StackMap stack:
iload 8
istore 10
76: goto 90
StackMap locals:
StackMap stack:
77: iload 6
ifne 92
aload 1
iload 8
aload 16
iconst_0
aload 16
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
ifeq 92
78: iload 18
ifne 92
79: new java.text.ParsePosition
dup
iload 8
aload 16
invokevirtual java.lang.String.length:()I
iadd
invokespecial java.text.ParsePosition.<init>:(I)V
astore 24
start local 24 80: iconst_2
newarray 4
astore 25
start local 25 81: new java.text.DigitList
dup
invokespecial java.text.DigitList.<init>:()V
astore 26
start local 26 82: aload 0
aload 1
aload 24
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 26
iconst_1
aload 25
invokevirtual java.text.DecimalFormat.subparse:(Ljava/lang/String;Ljava/text/ParsePosition;Ljava/lang/String;Ljava/lang/String;Ljava/text/DigitList;Z[Z)Z
ifeq 92
83: aload 26
aload 25
iconst_1
baload
iconst_1
invokevirtual java.text.DigitList.fitsIntoLong:(ZZ)Z
ifeq 92
84: aload 24
getfield java.text.ParsePosition.index:I
istore 8
85: aload 26
invokevirtual java.text.DigitList.getLong:()J
l2i
istore 20
86: aload 25
iconst_1
baload
ifne 88
87: iload 20
ineg
istore 20
88: StackMap locals: java.text.ParsePosition boolean[] java.text.DigitList
StackMap stack:
iconst_1
istore 18
89: goto 92
end local 26 end local 25 end local 24 end local 23 end local 22 90: 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 int int int int java.lang.String int int int int int
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
91: iload 8
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 45
92: StackMap locals:
StackMap stack:
iload 10
iconst_m1
if_icmpeq 94
93: iload 10
istore 8
94: StackMap locals:
StackMap stack:
iload 17
ifne 96
95: aload 5
iload 21
putfield java.text.DigitList.decimalAt:I
96: StackMap locals:
StackMap stack:
aload 5
dup
getfield java.text.DigitList.decimalAt:I
iload 20
iadd
putfield java.text.DigitList.decimalAt:I
97: iload 19
ifne 101
iload 21
ifne 101
98: aload 2
iload 9
putfield java.text.ParsePosition.index:I
99: aload 2
iload 9
putfield java.text.ParsePosition.errorIndex:I
100: iconst_0
ireturn
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 end local 10 101: StackMap locals: java.text.DecimalFormat java.lang.String java.text.ParsePosition java.lang.String java.lang.String java.text.DigitList int boolean[] int int top int int
StackMap stack:
iload 6
ifne 125
102: iload 11
ifeq 106
103: aload 1
iload 8
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
iconst_0
104: aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
105: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
istore 11
106: StackMap locals:
StackMap stack:
iload 12
ifeq 110
107: aload 1
iload 8
aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
iconst_0
108: aload 0
getfield java.text.DecimalFormat.negativeSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
109: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
istore 12
110: StackMap locals:
StackMap stack:
iload 11
ifeq 116
iload 12
ifeq 116
111: 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 114
112: iconst_0
istore 12
113: goto 116
StackMap locals:
StackMap stack:
114: 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 116
115: iconst_0
istore 11
116: StackMap locals:
StackMap stack:
iload 11
iload 12
if_icmpne 119
117: aload 2
iload 8
putfield java.text.ParsePosition.errorIndex:I
118: iconst_0
ireturn
119: StackMap locals:
StackMap stack:
aload 2
iload 8
120: iload 11
ifeq 121
aload 0
getfield java.text.DecimalFormat.positiveSuffix:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
goto 122
StackMap locals: java.text.DecimalFormat java.lang.String java.text.ParsePosition java.lang.String java.lang.String java.text.DigitList int boolean[] int int top int int
StackMap stack: java.text.ParsePosition int
121: 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 top int int
StackMap stack: java.text.ParsePosition int int
122: iadd
123: putfield java.text.ParsePosition.index:I
124: goto 126
125: StackMap locals:
StackMap stack:
aload 2
iload 8
putfield java.text.ParsePosition.index:I
126: StackMap locals:
StackMap stack:
aload 7
iconst_1
iload 11
bastore
127: aload 2
getfield java.text.ParsePosition.index:I
iload 9
if_icmpne 130
128: aload 2
iload 8
putfield java.text.ParsePosition.errorIndex:I
129: iconst_0
ireturn
130: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 12 end local 11 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 131 0 this Ljava/text/DecimalFormat;
0 131 1 text Ljava/lang/String;
0 131 2 parsePosition Ljava/text/ParsePosition;
0 131 3 positivePrefix Ljava/lang/String;
0 131 4 negativePrefix Ljava/lang/String;
0 131 5 digits Ljava/text/DigitList;
0 131 6 isExponent Z
0 131 7 status [Z
1 131 8 position I
2 131 9 oldStart I
44 101 10 backup I
5 131 11 gotPositive Z
8 131 12 gotNegative Z
32 101 13 zero C
36 101 14 decimal C
37 101 15 grouping C
38 101 16 exponentString Ljava/lang/String;
39 101 17 sawDecimal Z
40 101 18 sawExponent Z
41 101 19 sawDigit Z
42 101 20 exponent I
43 101 21 digitCount I
46 90 22 ch C
47 90 23 digit I
80 90 24 pos Ljava/text/ParsePosition;
81 90 25 stat [Z
82 90 26 exponentDigits Ljava/text/DigitList;
MethodParameters:
Name Flags
text
parsePosition
positivePrefix
negativePrefix
digits
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