public class java.text.MessageFormat extends java.text.Format
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: java.text.MessageFormat
super_class: java.text.Format
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6479157306784022952
private java.util.Locale locale;
descriptor: Ljava/util/Locale;
flags: (0x0002) ACC_PRIVATE
private java.lang.String pattern;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private static final int INITIAL_FORMATS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private java.text.Format[] formats;
descriptor: [Ljava/text/Format;
flags: (0x0002) ACC_PRIVATE
private int[] offsets;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private int[] argumentNumbers;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private int maxOffset;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private static final int SEG_RAW;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int SEG_INDEX;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int SEG_TYPE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int SEG_MODIFIER;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int TYPE_NULL;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int TYPE_NUMBER;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int TYPE_DATE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int TYPE_TIME;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int TYPE_CHOICE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final java.lang.String[] TYPE_KEYWORDS;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int MODIFIER_DEFAULT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int MODIFIER_CURRENCY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int MODIFIER_PERCENT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int MODIFIER_INTEGER;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final java.lang.String[] NUMBER_MODIFIER_KEYWORDS;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int MODIFIER_SHORT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int MODIFIER_MEDIUM;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int MODIFIER_LONG;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int MODIFIER_FULL;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final java.lang.String[] DATE_TIME_MODIFIER_KEYWORDS;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] DATE_TIME_MODIFIERS;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: iconst_5
anewarray java.lang.String
dup
iconst_0
1: ldc ""
aastore
dup
iconst_1
2: ldc "number"
aastore
dup
iconst_2
3: ldc "date"
aastore
dup
iconst_3
4: ldc "time"
aastore
dup
iconst_4
5: ldc "choice"
aastore
6: putstatic java.text.MessageFormat.TYPE_KEYWORDS:[Ljava/lang/String;
7: iconst_4
anewarray java.lang.String
dup
iconst_0
8: ldc ""
aastore
dup
iconst_1
9: ldc "currency"
aastore
dup
iconst_2
10: ldc "percent"
aastore
dup
iconst_3
11: ldc "integer"
aastore
12: putstatic java.text.MessageFormat.NUMBER_MODIFIER_KEYWORDS:[Ljava/lang/String;
13: iconst_5
anewarray java.lang.String
dup
iconst_0
14: ldc ""
aastore
dup
iconst_1
15: ldc "short"
aastore
dup
iconst_2
16: ldc "medium"
aastore
dup
iconst_3
17: ldc "long"
aastore
dup
iconst_4
18: ldc "full"
aastore
19: putstatic java.text.MessageFormat.DATE_TIME_MODIFIER_KEYWORDS:[Ljava/lang/String;
20: iconst_5
newarray 10
dup
iconst_0
21: iconst_2
iastore
dup
iconst_1
22: iconst_3
iastore
dup
iconst_2
23: iconst_2
iastore
dup
iconst_3
24: iconst_1
iastore
25: putstatic java.text.MessageFormat.DATE_TIME_MODIFIERS:[I
26: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(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
invokespecial java.text.Format.<init>:()V
1: aload 0
ldc ""
putfield java.text.MessageFormat.pattern:Ljava/lang/String;
2: aload 0
bipush 10
anewarray java.text.Format
putfield java.text.MessageFormat.formats:[Ljava/text/Format;
3: aload 0
bipush 10
newarray 10
putfield java.text.MessageFormat.offsets:[I
4: aload 0
bipush 10
newarray 10
putfield java.text.MessageFormat.argumentNumbers:[I
5: aload 0
iconst_m1
putfield java.text.MessageFormat.maxOffset:I
6: aload 0
getstatic java.util.Locale$Category.FORMAT:Ljava/util/Locale$Category;
invokestatic java.util.Locale.getDefault:(Ljava/util/Locale$Category;)Ljava/util/Locale;
putfield java.text.MessageFormat.locale:Ljava/util/Locale;
7: aload 0
aload 1
invokevirtual java.text.MessageFormat.applyPattern:(Ljava/lang/String;)V
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/text/MessageFormat;
0 9 1 pattern Ljava/lang/String;
MethodParameters:
Name Flags
pattern
public void <init>(java.lang.String, java.util.Locale);
descriptor: (Ljava/lang/String;Ljava/util/Locale;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.text.Format.<init>:()V
1: aload 0
ldc ""
putfield java.text.MessageFormat.pattern:Ljava/lang/String;
2: aload 0
bipush 10
anewarray java.text.Format
putfield java.text.MessageFormat.formats:[Ljava/text/Format;
3: aload 0
bipush 10
newarray 10
putfield java.text.MessageFormat.offsets:[I
4: aload 0
bipush 10
newarray 10
putfield java.text.MessageFormat.argumentNumbers:[I
5: aload 0
iconst_m1
putfield java.text.MessageFormat.maxOffset:I
6: aload 0
aload 2
putfield java.text.MessageFormat.locale:Ljava/util/Locale;
7: aload 0
aload 1
invokevirtual java.text.MessageFormat.applyPattern:(Ljava/lang/String;)V
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/text/MessageFormat;
0 9 1 pattern Ljava/lang/String;
0 9 2 locale Ljava/util/Locale;
MethodParameters:
Name Flags
pattern
locale
public void setLocale(java.util.Locale);
descriptor: (Ljava/util/Locale;)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.MessageFormat.locale:Ljava/util/Locale;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/text/MessageFormat;
0 2 1 locale Ljava/util/Locale;
MethodParameters:
Name Flags
locale
public java.util.Locale getLocale();
descriptor: ()Ljava/util/Locale;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/MessageFormat;
public void applyPattern(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: iconst_4
anewarray java.lang.StringBuilder
astore 2
start local 2 1: aload 2
iconst_0
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aastore
2: iconst_0
istore 3
start local 3 3: iconst_0
istore 4
start local 4 4: iconst_0
istore 5
start local 5 5: iconst_0
istore 6
start local 6 6: aload 0
iconst_m1
putfield java.text.MessageFormat.maxOffset:I
7: iconst_0
istore 7
start local 7 8: goto 60
9: StackMap locals: java.text.MessageFormat java.lang.String java.lang.StringBuilder[] int int int int int
StackMap stack:
aload 1
iload 7
invokevirtual java.lang.String.charAt:(I)C
istore 8
start local 8 10: iload 3
ifne 28
11: iload 8
bipush 39
if_icmpne 21
12: iload 7
iconst_1
iadd
aload 1
invokevirtual java.lang.String.length:()I
if_icmpge 17
13: aload 1
iload 7
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
bipush 39
if_icmpne 17
14: aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
15: iinc 7 1
16: goto 59
17: StackMap locals: int
StackMap stack:
iload 5
ifeq 18
iconst_0
goto 19
StackMap locals:
StackMap stack:
18: iconst_1
StackMap locals:
StackMap stack: int
19: istore 5
20: goto 59
StackMap locals:
StackMap stack:
21: iload 8
bipush 123
if_icmpne 26
iload 5
ifne 26
22: iconst_1
istore 3
23: aload 2
iconst_1
aaload
ifnonnull 59
24: aload 2
iconst_1
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aastore
25: goto 59
26: StackMap locals:
StackMap stack:
aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
27: goto 59
28: StackMap locals:
StackMap stack:
iload 5
ifeq 33
29: aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
30: iload 8
bipush 39
if_icmpne 59
31: iconst_0
istore 5
32: goto 59
33: StackMap locals:
StackMap stack:
iload 8
lookupswitch { // 5
32: 54
39: 57
44: 34
123: 40
125: 43
default: 58
}
34: StackMap locals:
StackMap stack:
iload 3
iconst_3
if_icmpge 38
35: aload 2
iinc 3 1
iload 3
aaload
ifnonnull 59
36: aload 2
iload 3
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aastore
37: goto 59
38: StackMap locals:
StackMap stack:
aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
39: goto 59
40: StackMap locals:
StackMap stack:
iinc 6 1
41: aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
42: goto 59
43: StackMap locals:
StackMap stack:
iload 6
ifne 51
44: iconst_0
istore 3
45: aload 0
iload 7
iload 4
aload 2
invokevirtual java.text.MessageFormat.makeFormat:(II[Ljava/lang/StringBuilder;)V
46: iinc 4 1
47: aload 2
iconst_1
aconst_null
aastore
48: aload 2
iconst_2
aconst_null
aastore
49: aload 2
iconst_3
aconst_null
aastore
50: goto 59
51: StackMap locals:
StackMap stack:
iinc 6 -1
52: aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
53: goto 59
54: StackMap locals:
StackMap stack:
iload 3
iconst_2
if_icmpne 55
aload 2
iconst_2
aaload
invokevirtual java.lang.StringBuilder.length:()I
ifle 59
55: StackMap locals:
StackMap stack:
aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
56: goto 59
57: StackMap locals:
StackMap stack:
iconst_1
istore 5
58: StackMap locals:
StackMap stack:
aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 8 59: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
60: iload 7
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 9
end local 7 61: iload 6
ifne 64
iload 3
ifeq 64
62: aload 0
iconst_m1
putfield java.text.MessageFormat.maxOffset:I
63: new java.lang.IllegalArgumentException
dup
ldc "Unmatched braces in the pattern."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
64: StackMap locals:
StackMap stack:
aload 0
aload 2
iconst_0
aaload
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield java.text.MessageFormat.pattern:Ljava/lang/String;
65: 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 66 0 this Ljava/text/MessageFormat;
0 66 1 pattern Ljava/lang/String;
1 66 2 segments [Ljava/lang/StringBuilder;
3 66 3 part I
4 66 4 formatNumber I
5 66 5 inQuote Z
6 66 6 braceStack I
8 61 7 i I
10 59 8 ch C
MethodParameters:
Name Flags
pattern
public java.lang.String toPattern();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: goto 53
4: StackMap locals: int java.lang.StringBuilder int
StackMap stack:
aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
iload 1
aload 0
getfield java.text.MessageFormat.offsets:[I
iload 3
iaload
aload 2
invokestatic java.text.MessageFormat.copyAndFixQuotes:(Ljava/lang/String;IILjava/lang/StringBuilder;)V
5: aload 0
getfield java.text.MessageFormat.offsets:[I
iload 3
iaload
istore 1
6: aload 2
bipush 123
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 3
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
7: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
astore 4
start local 4 8: aload 4
ifnull 51
9: aload 4
instanceof java.text.NumberFormat
ifeq 28
10: aload 4
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.NumberFormat.getInstance:(Ljava/util/Locale;)Ljava/text/NumberFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 13
11: aload 2
ldc ",number"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: goto 51
StackMap locals: java.text.Format
StackMap stack:
13: aload 4
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.NumberFormat.getCurrencyInstance:(Ljava/util/Locale;)Ljava/text/NumberFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 16
14: aload 2
ldc ",number,currency"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
15: goto 51
StackMap locals:
StackMap stack:
16: aload 4
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.NumberFormat.getPercentInstance:(Ljava/util/Locale;)Ljava/text/NumberFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 19
17: aload 2
ldc ",number,percent"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
18: goto 51
StackMap locals:
StackMap stack:
19: aload 4
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.NumberFormat.getIntegerInstance:(Ljava/util/Locale;)Ljava/text/NumberFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 22
20: aload 2
ldc ",number,integer"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
21: goto 51
22: StackMap locals:
StackMap stack:
aload 4
instanceof java.text.DecimalFormat
ifeq 25
23: aload 2
ldc ",number,"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
checkcast java.text.DecimalFormat
invokevirtual java.text.DecimalFormat.toPattern:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
24: goto 51
StackMap locals:
StackMap stack:
25: aload 4
instanceof java.text.ChoiceFormat
ifeq 51
26: aload 2
ldc ",choice,"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
checkcast java.text.ChoiceFormat
invokevirtual java.text.ChoiceFormat.toPattern:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
27: goto 51
StackMap locals:
StackMap stack:
28: aload 4
instanceof java.text.DateFormat
ifeq 51
29: iconst_0
istore 5
start local 5 30: goto 44
31: StackMap locals: int
StackMap stack:
getstatic java.text.MessageFormat.DATE_TIME_MODIFIERS:[I
iload 5
iaload
32: aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
33: invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
start local 6 34: aload 4
aload 6
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 37
35: aload 2
ldc ",date"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
36: goto 45
37: StackMap locals: java.text.DateFormat
StackMap stack:
getstatic java.text.MessageFormat.DATE_TIME_MODIFIERS:[I
iload 5
iaload
38: aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
39: invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
40: aload 4
aload 6
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 43
41: aload 2
ldc ",time"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
42: goto 45
end local 6 43: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
44: iload 5
getstatic java.text.MessageFormat.DATE_TIME_MODIFIERS:[I
arraylength
if_icmplt 31
45: StackMap locals:
StackMap stack:
iload 5
getstatic java.text.MessageFormat.DATE_TIME_MODIFIERS:[I
arraylength
if_icmplt 49
46: aload 4
instanceof java.text.SimpleDateFormat
ifeq 51
47: aload 2
ldc ",date,"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
checkcast java.text.SimpleDateFormat
invokevirtual java.text.SimpleDateFormat.toPattern:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
48: goto 51
StackMap locals:
StackMap stack:
49: iload 5
ifeq 51
50: aload 2
bipush 44
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
getstatic java.text.MessageFormat.DATE_TIME_MODIFIER_KEYWORDS:[Ljava/lang/String;
iload 5
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 5 51: StackMap locals:
StackMap stack:
aload 2
bipush 125
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 4 52: iinc 3 1
StackMap locals:
StackMap stack:
53: iload 3
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 4
end local 3 54: aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
iload 1
aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
aload 2
invokestatic java.text.MessageFormat.copyAndFixQuotes:(Ljava/lang/String;IILjava/lang/StringBuilder;)V
55: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 56 0 this Ljava/text/MessageFormat;
1 56 1 lastOffset I
2 56 2 result Ljava/lang/StringBuilder;
3 54 3 i I
8 52 4 fmt Ljava/text/Format;
30 51 5 index I
34 43 6 df Ljava/text/DateFormat;
public void setFormatsByArgumentIndex(java.text.Format[]);
descriptor: ([Ljava/text/Format;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 6
2: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 2
iaload
istore 3
start local 3 3: iload 3
aload 1
arraylength
if_icmpge 5
4: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 2
aload 1
iload 3
aaload
aastore
end local 3 5: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 2
end local 2 7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/text/MessageFormat;
0 8 1 newFormats [Ljava/text/Format;
1 7 2 i I
3 5 3 j I
MethodParameters:
Name Flags
newFormats
public void setFormats(java.text.Format[]);
descriptor: ([Ljava/text/Format;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
arraylength
istore 2
start local 2 1: iload 2
aload 0
getfield java.text.MessageFormat.maxOffset:I
iconst_1
iadd
if_icmple 3
2: aload 0
getfield java.text.MessageFormat.maxOffset:I
iconst_1
iadd
istore 2
3: StackMap locals: int
StackMap stack:
iconst_0
istore 3
start local 3 4: goto 7
5: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aload 1
iload 3
aaload
aastore
6: iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
iload 2
if_icmplt 5
end local 3 8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/text/MessageFormat;
0 9 1 newFormats [Ljava/text/Format;
1 9 2 runsToCopy I
4 8 3 i I
MethodParameters:
Name Flags
newFormats
public void setFormatByArgumentIndex(int, java.text.Format);
descriptor: (ILjava/text/Format;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 3
iaload
iload 1
if_icmpne 4
3: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aload 2
aastore
4: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 2
end local 3 6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/text/MessageFormat;
0 7 1 argumentIndex I
0 7 2 newFormat Ljava/text/Format;
1 6 3 j I
MethodParameters:
Name Flags
argumentIndex
newFormat
public void setFormat(int, java.text.Format);
descriptor: (ILjava/text/Format;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 1
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 2
1: new java.lang.ArrayIndexOutOfBoundsException
dup
iload 1
invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(I)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 1
aload 2
aastore
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/text/MessageFormat;
0 4 1 formatElementIndex I
0 4 2 newFormat Ljava/text/Format;
MethodParameters:
Name Flags
formatElementIndex
newFormat
public java.text.Format[] getFormatsByArgumentIndex();
descriptor: ()[Ljava/text/Format;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: iconst_m1
istore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 6
3: StackMap locals: int int
StackMap stack:
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 2
iaload
iload 1
if_icmple 5
4: aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 2
iaload
istore 1
5: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 3
end local 2 7: iload 1
iconst_1
iadd
anewarray java.text.Format
astore 2
start local 2 8: iconst_0
istore 3
start local 3 9: goto 12
10: StackMap locals: java.text.MessageFormat int java.text.Format[] int
StackMap stack:
aload 2
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 3
iaload
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
aastore
11: iinc 3 1
StackMap locals:
StackMap stack:
12: iload 3
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 10
end local 3 13: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljava/text/MessageFormat;
1 14 1 maximumArgumentNumber I
2 7 2 i I
8 14 2 resultArray [Ljava/text/Format;
9 13 3 i I
public java.text.Format[] getFormats();
descriptor: ()[Ljava/text/Format;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
getfield java.text.MessageFormat.maxOffset:I
iconst_1
iadd
anewarray java.text.Format
astore 1
start local 1 1: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iconst_0
aload 1
iconst_0
aload 0
getfield java.text.MessageFormat.maxOffset:I
iconst_1
iadd
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/text/MessageFormat;
1 3 1 resultArray [Ljava/text/Format;
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 0
aload 1
aload 2
aload 3
aconst_null
invokevirtual java.text.MessageFormat.subformat:([Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;Ljava/util/List;)Ljava/lang/StringBuffer;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/MessageFormat;
0 1 1 arguments [Ljava/lang/Object;
0 1 2 result Ljava/lang/StringBuffer;
0 1 3 pos Ljava/text/FieldPosition;
MethodParameters:
Name Flags
arguments
result
pos
public static java.lang.String format(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new java.text.MessageFormat
dup
aload 0
invokespecial java.text.MessageFormat.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: aload 2
aload 1
invokevirtual java.text.MessageFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 pattern Ljava/lang/String;
0 2 1 arguments [Ljava/lang/Object;
1 2 2 temp Ljava/text/MessageFormat;
MethodParameters:
Name Flags
pattern
arguments
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 0
aload 1
checkcast java.lang.Object[]
aload 2
aload 3
aconst_null
invokevirtual java.text.MessageFormat.subformat:([Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;Ljava/util/List;)Ljava/lang/StringBuffer;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/MessageFormat;
0 1 1 arguments Ljava/lang/Object;
0 1 2 result Ljava/lang/StringBuffer;
0 1 3 pos Ljava/text/FieldPosition;
MethodParameters:
Name Flags
arguments
result
pos
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.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 2
start local 2 1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 2: aload 1
ifnonnull 6
3: new java.lang.NullPointerException
dup
4: ldc "formatToCharacterIterator must be passed non-null object"
5: invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: java.lang.StringBuffer java.util.ArrayList
StackMap stack:
aload 0
aload 1
checkcast java.lang.Object[]
aload 2
aconst_null
aload 3
invokevirtual java.text.MessageFormat.subformat:([Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;Ljava/util/List;)Ljava/lang/StringBuffer;
pop
7: aload 3
invokevirtual java.util.ArrayList.size:()I
ifne 9
8: aload 0
ldc ""
invokevirtual java.text.MessageFormat.createAttributedCharacterIterator:(Ljava/lang/String;)Ljava/text/AttributedCharacterIterator;
areturn
9: StackMap locals:
StackMap stack:
aload 0
10: aload 3
11: aload 3
invokevirtual java.util.ArrayList.size:()I
anewarray java.text.AttributedCharacterIterator
12: invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.text.AttributedCharacterIterator[]
13: invokevirtual java.text.MessageFormat.createAttributedCharacterIterator:([Ljava/text/AttributedCharacterIterator;)Ljava/text/AttributedCharacterIterator;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljava/text/MessageFormat;
0 14 1 arguments Ljava/lang/Object;
1 14 2 result Ljava/lang/StringBuffer;
2 14 3 iterators Ljava/util/ArrayList<Ljava/text/AttributedCharacterIterator;>;
MethodParameters:
Name Flags
arguments
public java.lang.Object[] parse(java.lang.String, java.text.ParsePosition);
descriptor: (Ljava/lang/String;Ljava/text/ParsePosition;)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=13, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 3
1: iconst_0
anewarray java.lang.Object
astore 3
start local 3 2: aload 3
areturn
end local 3 3: StackMap locals:
StackMap stack:
iconst_m1
istore 3
start local 3 4: iconst_0
istore 4
start local 4 5: goto 9
6: StackMap locals: int int
StackMap stack:
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 4
iaload
iload 3
if_icmple 8
7: aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 4
iaload
istore 3
8: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
9: iload 4
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 6
end local 4 10: iload 3
iconst_1
iadd
anewarray java.lang.Object
astore 4
start local 4 11: iconst_0
istore 5
start local 5 12: aload 2
getfield java.text.ParsePosition.index:I
istore 6
start local 6 13: new java.text.ParsePosition
dup
iconst_0
invokespecial java.text.ParsePosition.<init>:(I)V
astore 7
start local 7 14: iconst_0
istore 8
start local 8 15: goto 55
16: StackMap locals: java.text.MessageFormat java.lang.String java.text.ParsePosition int java.lang.Object[] int int java.text.ParsePosition int
StackMap stack:
aload 0
getfield java.text.MessageFormat.offsets:[I
iload 8
iaload
iload 5
isub
istore 9
start local 9 17: iload 9
ifeq 21
aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
iload 5
18: aload 1
iload 6
iload 9
19: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
20: ifeq 24
21: StackMap locals: int
StackMap stack:
iload 6
iload 9
iadd
istore 6
22: iload 5
iload 9
iadd
istore 5
23: goto 26
24: StackMap locals:
StackMap stack:
aload 2
iload 6
putfield java.text.ParsePosition.errorIndex:I
25: aconst_null
areturn
26: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 8
aaload
ifnonnull 46
27: iload 8
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmpeq 28
aload 0
getfield java.text.MessageFormat.offsets:[I
iload 8
iconst_1
iadd
iaload
goto 29
StackMap locals:
StackMap stack:
28: aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
StackMap locals:
StackMap stack: int
29: istore 10
start local 10 30: iload 5
iload 10
if_icmplt 33
31: aload 1
invokevirtual java.lang.String.length:()I
istore 11
start local 11 32: goto 36
end local 11 33: StackMap locals: int
StackMap stack:
aload 1
aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
iload 5
iload 10
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
34: iload 6
35: invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
istore 11
start local 11 36: StackMap locals: int
StackMap stack:
iload 11
ifge 39
37: aload 2
iload 6
putfield java.text.ParsePosition.errorIndex:I
38: aconst_null
areturn
39: StackMap locals:
StackMap stack:
aload 1
iload 6
iload 11
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 12
start local 12 40: aload 12
new java.lang.StringBuilder
dup
ldc "{"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 8
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "}"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 44
41: aload 4
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 8
iaload
42: aload 1
iload 6
iload 11
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
43: aastore
44: StackMap locals: java.lang.String
StackMap stack:
iload 11
istore 6
end local 12 end local 11 end local 10 45: goto 54
46: StackMap locals:
StackMap stack:
aload 7
iload 6
putfield java.text.ParsePosition.index:I
47: aload 4
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 8
iaload
48: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 8
aaload
aload 1
aload 7
invokevirtual java.text.Format.parseObject:(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/lang/Object;
49: aastore
50: aload 7
getfield java.text.ParsePosition.index:I
iload 6
if_icmpne 53
51: aload 2
iload 6
putfield java.text.ParsePosition.errorIndex:I
52: aconst_null
areturn
53: StackMap locals:
StackMap stack:
aload 7
getfield java.text.ParsePosition.index:I
istore 6
end local 9 54: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
55: iload 8
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 16
end local 8 56: aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iload 5
isub
istore 8
start local 8 57: iload 8
ifeq 61
aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
iload 5
58: aload 1
iload 6
iload 8
59: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
60: ifeq 63
61: StackMap locals:
StackMap stack:
aload 2
iload 6
iload 8
iadd
putfield java.text.ParsePosition.index:I
62: goto 65
63: StackMap locals:
StackMap stack:
aload 2
iload 6
putfield java.text.ParsePosition.errorIndex:I
64: aconst_null
areturn
65: StackMap locals:
StackMap stack:
aload 4
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 66 0 this Ljava/text/MessageFormat;
0 66 1 source Ljava/lang/String;
0 66 2 pos Ljava/text/ParsePosition;
2 3 3 empty [Ljava/lang/Object;
4 66 3 maximumArgumentNumber I
5 10 4 i I
11 66 4 resultArray [Ljava/lang/Object;
12 66 5 patternOffset I
13 66 6 sourceOffset I
14 66 7 tempStatus Ljava/text/ParsePosition;
15 56 8 i I
17 54 9 len I
30 45 10 tempLength I
32 33 11 next I
36 45 11 next I
40 45 12 strValue Ljava/lang/String;
57 66 8 len I
MethodParameters:
Name Flags
source
pos
public java.lang.Object[] parse(java.lang.String);
descriptor: (Ljava/lang/String;)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: new java.text.ParsePosition
dup
iconst_0
invokespecial java.text.ParsePosition.<init>:(I)V
astore 2
start local 2 1: aload 0
aload 1
aload 2
invokevirtual java.text.MessageFormat.parse:(Ljava/lang/String;Ljava/text/ParsePosition;)[Ljava/lang/Object;
astore 3
start local 3 2: aload 2
getfield java.text.ParsePosition.index:I
ifne 4
3: new java.text.ParseException
dup
ldc "MessageFormat parse error!"
aload 2
getfield java.text.ParsePosition.errorIndex:I
invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
athrow
4: StackMap locals: java.text.ParsePosition java.lang.Object[]
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/text/MessageFormat;
0 5 1 source Ljava/lang/String;
1 5 2 pos Ljava/text/ParsePosition;
2 5 3 result [Ljava/lang/Object;
Exceptions:
throws java.text.ParseException
MethodParameters:
Name Flags
source
public java.lang.Object parseObject(java.lang.String, java.text.ParsePosition);
descriptor: (Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual java.text.MessageFormat.parse:(Ljava/lang/String;Ljava/text/ParsePosition;)[Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/MessageFormat;
0 1 1 source Ljava/lang/String;
0 1 2 pos Ljava/text/ParsePosition;
MethodParameters:
Name Flags
source
pos
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
invokespecial java.text.Format.clone:()Ljava/lang/Object;
checkcast java.text.MessageFormat
astore 1
start local 1 1: aload 1
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
invokevirtual java.text.Format[].clone:()Ljava/lang/Object;
checkcast java.text.Format[]
putfield java.text.MessageFormat.formats:[Ljava/text/Format;
2: iconst_0
istore 2
start local 2 3: goto 7
4: StackMap locals: java.text.MessageFormat int
StackMap stack:
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 2
aaload
ifnull 6
5: aload 1
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 2
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 2
aaload
invokevirtual java.text.Format.clone:()Ljava/lang/Object;
checkcast java.text.Format
aastore
6: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
7: iload 2
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
arraylength
if_icmplt 4
end local 2 8: aload 1
aload 0
getfield java.text.MessageFormat.offsets:[I
invokevirtual int[].clone:()Ljava/lang/Object;
checkcast int[]
putfield java.text.MessageFormat.offsets:[I
9: aload 1
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
invokevirtual int[].clone:()Ljava/lang/Object;
checkcast int[]
putfield java.text.MessageFormat.argumentNumbers:[I
10: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljava/text/MessageFormat;
1 11 1 other Ljava/text/MessageFormat;
3 8 2 i I
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 0
aload 1
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
ifnull 3
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
if_acmpeq 4
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 1
checkcast java.text.MessageFormat
astore 2
start local 2 5: aload 0
getfield java.text.MessageFormat.maxOffset:I
aload 2
getfield java.text.MessageFormat.maxOffset:I
if_icmpne 13
6: aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
aload 2
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 13
7: aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
ifnull 8
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
aload 2
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
ifne 9
8: StackMap locals: java.text.MessageFormat
StackMap stack:
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
ifnonnull 13
aload 2
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
ifnonnull 13
9: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.offsets:[I
aload 2
getfield java.text.MessageFormat.offsets:[I
invokestatic java.util.Arrays.equals:([I[I)Z
ifeq 13
10: aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
aload 2
getfield java.text.MessageFormat.argumentNumbers:[I
invokestatic java.util.Arrays.equals:([I[I)Z
ifeq 13
11: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
aload 2
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
invokestatic java.util.Arrays.equals:([Ljava/lang/Object;[Ljava/lang/Object;)Z
ifeq 13
12: iconst_1
ireturn
StackMap locals:
StackMap stack:
13: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljava/text/MessageFormat;
0 14 1 obj Ljava/lang/Object;
5 14 2 other Ljava/text/MessageFormat;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
invokevirtual java.lang.String.hashCode:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/text/MessageFormat;
private java.lang.StringBuffer subformat([], java.lang.StringBuffer, java.text.FieldPosition, java.util.List<java.text.AttributedCharacterIterator>);
descriptor: ([Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;Ljava/util/List;)Ljava/lang/StringBuffer;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=13, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_0
istore 5
start local 5 1: aload 2
invokevirtual java.lang.StringBuffer.length:()I
istore 6
start local 6 2: iconst_0
istore 7
start local 7 3: goto 80
4: StackMap locals: int int int
StackMap stack:
aload 2
aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
iload 5
aload 0
getfield java.text.MessageFormat.offsets:[I
iload 7
iaload
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuffer;
pop
5: aload 0
getfield java.text.MessageFormat.offsets:[I
iload 7
iaload
istore 5
6: aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 7
iaload
istore 8
start local 8 7: aload 1
ifnull 8
iload 8
aload 1
arraylength
if_icmplt 10
8: StackMap locals: int
StackMap stack:
aload 2
bipush 123
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
iload 8
invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
bipush 125
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
9: goto 79
10: StackMap locals:
StackMap stack:
aload 1
iload 8
aaload
astore 9
start local 9 11: aconst_null
astore 10
start local 10 12: aconst_null
astore 11
start local 11 13: aload 9
ifnonnull 16
14: ldc "null"
astore 10
15: goto 37
StackMap locals: java.lang.Object java.lang.String java.text.Format
StackMap stack:
16: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 7
aaload
ifnull 25
17: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 7
aaload
astore 11
18: aload 11
instanceof java.text.ChoiceFormat
ifeq 37
19: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 7
aaload
aload 9
invokevirtual java.text.Format.format:(Ljava/lang/Object;)Ljava/lang/String;
astore 10
20: aload 10
bipush 123
invokevirtual java.lang.String.indexOf:(I)I
iflt 37
21: new java.text.MessageFormat
dup
aload 10
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokespecial java.text.MessageFormat.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
astore 11
22: aload 1
astore 9
23: aconst_null
astore 10
24: goto 37
StackMap locals:
StackMap stack:
25: aload 9
instanceof java.lang.Number
ifeq 28
26: aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.NumberFormat.getInstance:(Ljava/util/Locale;)Ljava/text/NumberFormat;
astore 11
27: goto 37
StackMap locals:
StackMap stack:
28: aload 9
instanceof java.util.Date
ifeq 32
29: iconst_3
iconst_3
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
30: invokestatic java.text.DateFormat.getDateTimeInstance:(IILjava/util/Locale;)Ljava/text/DateFormat;
astore 11
31: goto 37
StackMap locals:
StackMap stack:
32: aload 9
instanceof java.lang.String
ifeq 35
33: aload 9
checkcast java.lang.String
astore 10
34: goto 37
35: StackMap locals:
StackMap stack:
aload 9
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
astore 10
36: aload 10
ifnonnull 37
ldc "null"
astore 10
37: StackMap locals:
StackMap stack:
aload 4
ifnull 68
38: iload 6
aload 2
invokevirtual java.lang.StringBuffer.length:()I
if_icmpeq 45
39: aload 4
40: aload 0
aload 2
41: iload 6
42: invokevirtual java.lang.StringBuffer.substring:(I)Ljava/lang/String;
invokevirtual java.text.MessageFormat.createAttributedCharacterIterator:(Ljava/lang/String;)Ljava/text/AttributedCharacterIterator;
43: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
44: aload 2
invokevirtual java.lang.StringBuffer.length:()I
istore 6
45: StackMap locals:
StackMap stack:
aload 11
ifnull 58
46: aload 11
aload 9
invokevirtual java.text.Format.formatToCharacterIterator:(Ljava/lang/Object;)Ljava/text/AttributedCharacterIterator;
47: astore 12
start local 12 48: aload 0
aload 2
aload 12
invokevirtual java.text.MessageFormat.append:(Ljava/lang/StringBuffer;Ljava/text/CharacterIterator;)V
49: iload 6
aload 2
invokevirtual java.lang.StringBuffer.length:()I
if_icmpeq 57
50: aload 4
51: aload 0
52: aload 12
getstatic java.text.MessageFormat$Field.ARGUMENT:Ljava/text/MessageFormat$Field;
53: iload 8
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
54: invokevirtual java.text.MessageFormat.createAttributedCharacterIterator:(Ljava/text/AttributedCharacterIterator;Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)Ljava/text/AttributedCharacterIterator;
55: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
56: aload 2
invokevirtual java.lang.StringBuffer.length:()I
istore 6
57: StackMap locals: java.text.AttributedCharacterIterator
StackMap stack:
aconst_null
astore 10
end local 12 58: StackMap locals:
StackMap stack:
aload 10
ifnull 79
aload 10
invokevirtual java.lang.String.isEmpty:()Z
ifne 79
59: aload 2
aload 10
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
60: aload 4
61: aload 0
62: aload 10
getstatic java.text.MessageFormat$Field.ARGUMENT:Ljava/text/MessageFormat$Field;
63: iload 8
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
64: invokevirtual java.text.MessageFormat.createAttributedCharacterIterator:(Ljava/lang/String;Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)Ljava/text/AttributedCharacterIterator;
65: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
66: aload 2
invokevirtual java.lang.StringBuffer.length:()I
istore 6
67: goto 79
68: StackMap locals:
StackMap stack:
aload 11
ifnull 70
69: aload 11
aload 9
invokevirtual java.text.Format.format:(Ljava/lang/Object;)Ljava/lang/String;
astore 10
70: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.StringBuffer.length:()I
istore 6
71: aload 2
aload 10
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
72: iload 7
ifne 78
aload 3
ifnull 78
getstatic java.text.MessageFormat$Field.ARGUMENT:Ljava/text/MessageFormat$Field;
73: aload 3
invokevirtual java.text.FieldPosition.getFieldAttribute:()Ljava/text/Format$Field;
74: invokevirtual java.text.MessageFormat$Field.equals:(Ljava/lang/Object;)Z
75: ifeq 78
76: aload 3
iload 6
invokevirtual java.text.FieldPosition.setBeginIndex:(I)V
77: aload 3
aload 2
invokevirtual java.lang.StringBuffer.length:()I
invokevirtual java.text.FieldPosition.setEndIndex:(I)V
78: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.StringBuffer.length:()I
istore 6
end local 11 end local 10 end local 9 end local 8 79: StackMap locals: java.text.MessageFormat java.lang.Object[] java.lang.StringBuffer java.text.FieldPosition java.util.List int int int
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
80: iload 7
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 4
end local 7 81: aload 2
aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
iload 5
aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuffer;
pop
82: aload 4
ifnull 86
iload 6
aload 2
invokevirtual java.lang.StringBuffer.length:()I
if_icmpeq 86
83: aload 4
aload 0
84: aload 2
iload 6
invokevirtual java.lang.StringBuffer.substring:(I)Ljava/lang/String;
85: invokevirtual java.text.MessageFormat.createAttributedCharacterIterator:(Ljava/lang/String;)Ljava/text/AttributedCharacterIterator;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
86: StackMap locals:
StackMap stack:
aload 2
areturn
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 87 0 this Ljava/text/MessageFormat;
0 87 1 arguments [Ljava/lang/Object;
0 87 2 result Ljava/lang/StringBuffer;
0 87 3 fp Ljava/text/FieldPosition;
0 87 4 characterIterators Ljava/util/List<Ljava/text/AttributedCharacterIterator;>;
1 87 5 lastOffset I
2 87 6 last I
3 81 7 i I
7 79 8 argumentNumber I
11 79 9 obj Ljava/lang/Object;
12 79 10 arg Ljava/lang/String;
13 79 11 subFormatter Ljava/text/Format;
48 58 12 subIterator Ljava/text/AttributedCharacterIterator;
Signature: ([Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;Ljava/util/List<Ljava/text/AttributedCharacterIterator;>;)Ljava/lang/StringBuffer;
MethodParameters:
Name Flags
arguments
result
fp
characterIterators
private void append(java.lang.StringBuffer, java.text.CharacterIterator);
descriptor: (Ljava/lang/StringBuffer;Ljava/text/CharacterIterator;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface java.text.CharacterIterator.first:()C
ldc 65535
if_icmpeq 6
1: aload 1
aload 2
invokeinterface java.text.CharacterIterator.first:()C
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
2: goto 4
start local 3 3: StackMap locals: int
StackMap stack:
aload 1
iload 3
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
end local 3 4: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.text.CharacterIterator.next:()C
dup
istore 3
start local 3 5: ldc 65535
if_icmpne 3
end local 3 6: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/text/MessageFormat;
0 7 1 result Ljava/lang/StringBuffer;
0 7 2 iterator Ljava/text/CharacterIterator;
3 4 3 aChar C
5 6 3 aChar C
MethodParameters:
Name Flags
result
iterator
private void makeFormat(int, int, java.lang.StringBuilder[]);
descriptor: (II[Ljava/lang/StringBuilder;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
arraylength
anewarray java.lang.String
astore 4
start local 4 1: iconst_0
istore 5
start local 5 2: goto 8
3: StackMap locals: java.lang.String[] int
StackMap stack:
aload 3
iload 5
aaload
astore 6
start local 6 4: aload 4
iload 5
aload 6
ifnull 5
aload 6
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 6
StackMap locals: java.text.MessageFormat int int java.lang.StringBuilder[] java.lang.String[] int java.lang.StringBuilder
StackMap stack: java.lang.String[] int
5: ldc ""
StackMap locals: java.text.MessageFormat int int java.lang.StringBuilder[] java.lang.String[] int java.lang.StringBuilder
StackMap stack: java.lang.String[] int java.lang.String
6: aastore
end local 6 7: iinc 5 1
StackMap locals:
StackMap stack:
8: iload 5
aload 3
arraylength
if_icmplt 3
end local 5 9: aload 4
iconst_1
aaload
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 5
start local 5 10: goto 15
end local 5 StackMap locals: java.text.MessageFormat int int java.lang.StringBuilder[] java.lang.String[]
StackMap stack: java.lang.NumberFormatException
11: astore 6
start local 6 12: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "can't parse argument number: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
13: aload 4
iconst_1
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 6
14: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 6 start local 5 15: StackMap locals: int
StackMap stack:
iload 5
ifge 19
16: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "negative argument number: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
17: iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
18: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
19: StackMap locals:
StackMap stack:
iload 2
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
arraylength
if_icmplt 30
20: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
arraylength
iconst_2
imul
istore 6
start local 6 21: iload 6
anewarray java.text.Format
astore 7
start local 7 22: iload 6
newarray 10
astore 8
start local 8 23: iload 6
newarray 10
astore 9
start local 9 24: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iconst_0
aload 7
iconst_0
aload 0
getfield java.text.MessageFormat.maxOffset:I
iconst_1
iadd
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
25: aload 0
getfield java.text.MessageFormat.offsets:[I
iconst_0
aload 8
iconst_0
aload 0
getfield java.text.MessageFormat.maxOffset:I
iconst_1
iadd
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
26: aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iconst_0
aload 9
iconst_0
aload 0
getfield java.text.MessageFormat.maxOffset:I
iconst_1
iadd
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
27: aload 0
aload 7
putfield java.text.MessageFormat.formats:[Ljava/text/Format;
28: aload 0
aload 8
putfield java.text.MessageFormat.offsets:[I
29: aload 0
aload 9
putfield java.text.MessageFormat.argumentNumbers:[I
end local 9 end local 8 end local 7 end local 6 30: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.maxOffset:I
istore 6
start local 6 31: aload 0
iload 2
putfield java.text.MessageFormat.maxOffset:I
32: aload 0
getfield java.text.MessageFormat.offsets:[I
iload 2
aload 4
iconst_0
aaload
invokevirtual java.lang.String.length:()I
iastore
33: aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 2
iload 5
iastore
34: aconst_null
astore 7
start local 7 35: aload 4
iconst_2
aaload
invokevirtual java.lang.String.isEmpty:()Z
ifne 82
36: aload 4
iconst_2
aaload
getstatic java.text.MessageFormat.TYPE_KEYWORDS:[Ljava/lang/String;
invokestatic java.text.MessageFormat.findKeyword:(Ljava/lang/String;[Ljava/lang/String;)I
istore 8
start local 8 37: iload 8
tableswitch { // 0 - 4
0: 38
1: 39
2: 55
3: 55
4: 71
default: 78
}
38: StackMap locals: int java.text.Format int
StackMap stack:
goto 82
39: StackMap locals:
StackMap stack:
aload 4
iconst_3
aaload
getstatic java.text.MessageFormat.NUMBER_MODIFIER_KEYWORDS:[Ljava/lang/String;
invokestatic java.text.MessageFormat.findKeyword:(Ljava/lang/String;[Ljava/lang/String;)I
tableswitch { // 0 - 3
0: 40
1: 42
2: 44
3: 46
default: 48
}
40: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.NumberFormat.getInstance:(Ljava/util/Locale;)Ljava/text/NumberFormat;
astore 7
41: goto 82
42: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.NumberFormat.getCurrencyInstance:(Ljava/util/Locale;)Ljava/text/NumberFormat;
astore 7
43: goto 82
44: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.NumberFormat.getPercentInstance:(Ljava/util/Locale;)Ljava/text/NumberFormat;
astore 7
45: goto 82
46: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.NumberFormat.getIntegerInstance:(Ljava/util/Locale;)Ljava/text/NumberFormat;
astore 7
47: goto 82
48: StackMap locals:
StackMap stack:
new java.text.DecimalFormat
dup
aload 4
iconst_3
aaload
49: aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DecimalFormatSymbols.getInstance:(Ljava/util/Locale;)Ljava/text/DecimalFormatSymbols;
50: invokespecial java.text.DecimalFormat.<init>:(Ljava/lang/String;Ljava/text/DecimalFormatSymbols;)V
astore 7
51: goto 82
StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
52: astore 9
start local 9 53: aload 0
iload 6
putfield java.text.MessageFormat.maxOffset:I
54: aload 9
athrow
end local 9 55: StackMap locals:
StackMap stack:
aload 4
iconst_3
aaload
getstatic java.text.MessageFormat.DATE_TIME_MODIFIER_KEYWORDS:[Ljava/lang/String;
invokestatic java.text.MessageFormat.findKeyword:(Ljava/lang/String;[Ljava/lang/String;)I
istore 9
start local 9 56: iload 9
iflt 66
iload 9
getstatic java.text.MessageFormat.DATE_TIME_MODIFIER_KEYWORDS:[Ljava/lang/String;
arraylength
if_icmpge 66
57: iload 8
iconst_2
if_icmpne 62
58: getstatic java.text.MessageFormat.DATE_TIME_MODIFIERS:[I
iload 9
iaload
59: aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
60: invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 7
61: goto 82
62: StackMap locals: int
StackMap stack:
getstatic java.text.MessageFormat.DATE_TIME_MODIFIERS:[I
iload 9
iaload
63: aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
64: invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 7
65: goto 82
66: StackMap locals:
StackMap stack:
new java.text.SimpleDateFormat
dup
aload 4
iconst_3
aaload
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
astore 7
67: goto 82
StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
68: astore 10
start local 10 69: aload 0
iload 6
putfield java.text.MessageFormat.maxOffset:I
70: aload 10
athrow
end local 10 end local 9 71: StackMap locals:
StackMap stack:
new java.text.ChoiceFormat
dup
aload 4
iconst_3
aaload
invokespecial java.text.ChoiceFormat.<init>:(Ljava/lang/String;)V
astore 7
72: goto 82
StackMap locals:
StackMap stack: java.lang.Exception
73: astore 10
start local 10 74: aload 0
iload 6
putfield java.text.MessageFormat.maxOffset:I
75: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Choice Pattern incorrect: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
76: aload 4
iconst_3
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 10
77: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 10 78: StackMap locals:
StackMap stack:
aload 0
iload 6
putfield java.text.MessageFormat.maxOffset:I
79: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "unknown format type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
80: aload 4
iconst_2
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
81: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 8 82: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 2
aload 7
aastore
83: return
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 84 0 this Ljava/text/MessageFormat;
0 84 1 position I
0 84 2 offsetNumber I
0 84 3 textSegments [Ljava/lang/StringBuilder;
1 84 4 segments [Ljava/lang/String;
2 9 5 i I
4 7 6 oneseg Ljava/lang/StringBuilder;
10 11 5 argumentNumber I
15 84 5 argumentNumber I
12 15 6 e Ljava/lang/NumberFormatException;
21 30 6 newLength I
22 30 7 newFormats [Ljava/text/Format;
23 30 8 newOffsets [I
24 30 9 newArgumentNumbers [I
31 84 6 oldMaxOffset I
35 84 7 newFormat Ljava/text/Format;
37 82 8 type I
53 55 9 e Ljava/lang/IllegalArgumentException;
56 71 9 mod I
69 71 10 e Ljava/lang/IllegalArgumentException;
74 78 10 e Ljava/lang/Exception;
Exception table:
from to target type
9 10 11 Class java.lang.NumberFormatException
48 51 52 Class java.lang.IllegalArgumentException
66 67 68 Class java.lang.IllegalArgumentException
71 72 73 Class java.lang.Exception
MethodParameters:
Name Flags
position
offsetNumber
textSegments
private static final int findKeyword(java.lang.String, java.lang.String[]);
descriptor: (Ljava/lang/String;[Ljava/lang/String;)I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
aload 1
iload 2
aaload
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: iload 2
ireturn
4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 1
arraylength
if_icmplt 2
end local 2 6: aload 0
invokevirtual java.lang.String.trim:()Ljava/lang/String;
getstatic java.util.Locale.ROOT:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
astore 2
start local 2 7: aload 2
aload 0
if_acmpeq 14
8: iconst_0
istore 3
start local 3 9: goto 13
10: StackMap locals: java.lang.String java.lang.String[] java.lang.String int
StackMap stack:
aload 2
aload 1
iload 3
aaload
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
11: iload 3
ireturn
12: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
13: iload 3
aload 1
arraylength
if_icmplt 10
end local 3 14: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 s Ljava/lang/String;
0 15 1 list [Ljava/lang/String;
1 6 2 i I
7 15 2 ls Ljava/lang/String;
9 14 3 i I
MethodParameters:
Name Flags
s
list
private static final void copyAndFixQuotes(java.lang.String, int, int, java.lang.StringBuilder);
descriptor: (Ljava/lang/String;IILjava/lang/StringBuilder;)V
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Code:
stack=2, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: iload 1
istore 5
start local 5 2: goto 18
3: StackMap locals: int int
StackMap stack:
aload 0
iload 5
invokevirtual java.lang.String.charAt:(I)C
istore 6
start local 6 4: iload 6
bipush 123
if_icmpne 10
5: iload 4
ifne 8
6: aload 3
bipush 39
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
7: iconst_1
istore 4
8: StackMap locals: int
StackMap stack:
aload 3
iload 6
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
9: goto 17
StackMap locals:
StackMap stack:
10: iload 6
bipush 39
if_icmpne 13
11: aload 3
ldc "''"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: goto 17
13: StackMap locals:
StackMap stack:
iload 4
ifeq 16
14: aload 3
bipush 39
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
15: iconst_0
istore 4
16: StackMap locals:
StackMap stack:
aload 3
iload 6
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 6 17: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
18: iload 5
iload 2
if_icmplt 3
end local 5 19: iload 4
ifeq 21
20: aload 3
bipush 39
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
21: 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 22 0 source Ljava/lang/String;
0 22 1 start I
0 22 2 end I
0 22 3 target Ljava/lang/StringBuilder;
1 22 4 quoted Z
2 19 5 i I
4 17 6 ch C
MethodParameters:
Name Flags
source
start
end
target
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
1: aload 0
getfield java.text.MessageFormat.maxOffset:I
iconst_m1
if_icmplt 6
2: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
arraylength
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 6
3: aload 0
getfield java.text.MessageFormat.offsets:[I
arraylength
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 6
4: aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
arraylength
aload 0
getfield java.text.MessageFormat.maxOffset:I
5: if_icmple 6
iconst_1
goto 7
StackMap locals:
StackMap stack:
6: iconst_0
StackMap locals:
StackMap stack: int
7: istore 2
start local 2 8: iload 2
ifeq 18
9: aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iconst_1
iadd
istore 3
start local 3 10: aload 0
getfield java.text.MessageFormat.maxOffset:I
istore 4
start local 4 11: goto 17
12: StackMap locals: int int int
StackMap stack:
aload 0
getfield java.text.MessageFormat.offsets:[I
iload 4
iaload
iflt 13
aload 0
getfield java.text.MessageFormat.offsets:[I
iload 4
iaload
iload 3
if_icmple 15
13: StackMap locals:
StackMap stack:
iconst_0
istore 2
14: goto 18
15: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.offsets:[I
iload 4
iaload
istore 3
16: iinc 4 -1
StackMap locals:
StackMap stack:
17: iload 4
ifge 12
end local 4 end local 3 18: StackMap locals:
StackMap stack:
iload 2
ifne 20
19: new java.io.InvalidObjectException
dup
ldc "Could not reconstruct MessageFormat from corrupt stream."
invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
athrow
20: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Ljava/text/MessageFormat;
0 21 1 in Ljava/io/ObjectInputStream;
8 21 2 isValid Z
10 18 3 lastOffset I
11 18 4 i I
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
in
}
SourceFile: "MessageFormat.java"
NestMembers:
java.text.MessageFormat$Field
InnerClasses:
public Attribute = java.text.AttributedCharacterIterator$Attribute of java.text.AttributedCharacterIterator
public Field = java.text.Format$Field of java.text.Format
public Field = java.text.MessageFormat$Field of java.text.MessageFormat
public final Category = java.util.Locale$Category of java.util.Locale