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 java.lang.String[] typeList;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String[] modifierList;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String[] dateModifierList;
descriptor: [Ljava/lang/String;
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: bipush 9
anewarray java.lang.String
dup
iconst_0
ldc ""
aastore
dup
iconst_1
ldc ""
aastore
dup
iconst_2
ldc "number"
aastore
dup
iconst_3
ldc ""
aastore
dup
iconst_4
ldc "date"
aastore
dup
iconst_5
ldc ""
aastore
dup
bipush 6
ldc "time"
aastore
dup
bipush 7
ldc ""
aastore
dup
bipush 8
ldc "choice"
aastore
1: putstatic java.text.MessageFormat.typeList:[Ljava/lang/String;
2: bipush 7
anewarray java.lang.String
dup
iconst_0
ldc ""
aastore
dup
iconst_1
ldc ""
aastore
dup
iconst_2
ldc "currency"
aastore
dup
iconst_3
ldc ""
aastore
dup
iconst_4
ldc "percent"
aastore
dup
iconst_5
ldc ""
aastore
dup
bipush 6
ldc "integer"
aastore
3: putstatic java.text.MessageFormat.modifierList:[Ljava/lang/String;
4: bipush 9
anewarray java.lang.String
dup
iconst_0
ldc ""
aastore
dup
iconst_1
ldc ""
aastore
dup
iconst_2
ldc "short"
aastore
dup
iconst_3
ldc ""
aastore
dup
iconst_4
ldc "medium"
aastore
dup
iconst_5
ldc ""
aastore
dup
bipush 6
ldc "long"
aastore
dup
bipush 7
ldc ""
aastore
dup
bipush 8
ldc "full"
aastore
5: putstatic java.text.MessageFormat.dateModifierList:[Ljava/lang/String;
6: 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
invokestatic java.util.Locale.getDefault:()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.StringBuffer
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 5
3: StackMap locals: java.lang.StringBuffer[] int
StackMap stack:
aload 2
iload 3
new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
aastore
4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
aload 2
arraylength
if_icmplt 3
end local 3 6: iconst_0
istore 3
start local 3 7: iconst_0
istore 4
start local 4 8: iconst_0
istore 5
start local 5 9: iconst_0
istore 6
start local 6 10: aload 0
iconst_m1
putfield java.text.MessageFormat.maxOffset:I
11: iconst_0
istore 7
start local 7 12: goto 54
13: StackMap locals: java.text.MessageFormat java.lang.String java.lang.StringBuffer[] int int int int int
StackMap stack:
aload 1
iload 7
invokevirtual java.lang.String.charAt:(I)C
istore 8
start local 8 14: iload 3
ifne 30
15: iload 8
bipush 39
if_icmpne 25
16: iload 7
iconst_1
iadd
aload 1
invokevirtual java.lang.String.length:()I
if_icmpge 21
17: aload 1
iload 7
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
bipush 39
if_icmpne 21
18: aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
19: iinc 7 1
20: goto 53
21: StackMap locals: int
StackMap stack:
iload 5
ifeq 22
iconst_0
goto 23
StackMap locals:
StackMap stack:
22: iconst_1
StackMap locals:
StackMap stack: int
23: istore 5
24: goto 53
StackMap locals:
StackMap stack:
25: iload 8
bipush 123
if_icmpne 28
iload 5
ifne 28
26: iconst_1
istore 3
27: goto 53
28: StackMap locals:
StackMap stack:
aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
29: goto 53
StackMap locals:
StackMap stack:
30: iload 5
ifeq 35
31: aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
32: iload 8
bipush 39
if_icmpne 53
33: iconst_0
istore 5
34: goto 53
35: StackMap locals:
StackMap stack:
iload 8
lookupswitch { // 4
39: 51
44: 36
123: 40
125: 43
default: 52
}
36: StackMap locals:
StackMap stack:
iload 3
iconst_3
if_icmpge 38
37: iinc 3 1
goto 53
38: StackMap locals:
StackMap stack:
aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
39: goto 53
40: StackMap locals:
StackMap stack:
iinc 6 1
41: aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
42: goto 53
43: StackMap locals:
StackMap stack:
iload 6
ifne 48
44: iconst_0
istore 3
45: aload 0
iload 7
iload 4
aload 2
invokevirtual java.text.MessageFormat.makeFormat:(II[Ljava/lang/StringBuffer;)V
46: iinc 4 1
47: goto 53
48: StackMap locals:
StackMap stack:
iinc 6 -1
49: aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
50: goto 53
51: StackMap locals:
StackMap stack:
iconst_1
istore 5
52: StackMap locals:
StackMap stack:
aload 2
iload 3
aaload
iload 8
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
end local 8 53: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
54: iload 7
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 13
end local 7 55: iload 6
ifne 58
iload 3
ifeq 58
56: aload 0
iconst_m1
putfield java.text.MessageFormat.maxOffset:I
57: new java.lang.IllegalArgumentException
dup
ldc "Unmatched braces in the pattern."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
58: StackMap locals:
StackMap stack:
aload 0
aload 2
iconst_0
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
putfield java.text.MessageFormat.pattern:Ljava/lang/String;
59: 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 60 0 this Ljava/text/MessageFormat;
0 60 1 pattern Ljava/lang/String;
1 60 2 segments [Ljava/lang/StringBuffer;
2 6 3 i I
7 60 3 part I
8 60 4 formatNumber I
9 60 5 inQuote Z
10 60 6 braceStack I
12 55 7 i I
14 53 8 ch C
MethodParameters:
Name Flags
pattern
public java.lang.String toPattern();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: goto 97
4: StackMap locals: int java.lang.StringBuffer 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/StringBuffer;)V
5: aload 0
getfield java.text.MessageFormat.offsets:[I
iload 3
iaload
istore 1
6: aload 2
bipush 123
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
7: aload 2
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 3
iaload
invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
pop
8: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
ifnull 95
9: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
instanceof java.text.DecimalFormat
ifeq 26
10: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
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.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
12: goto 95
StackMap locals:
StackMap stack:
13: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
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.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
15: goto 95
StackMap locals:
StackMap stack:
16: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
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.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
18: goto 95
StackMap locals:
StackMap stack:
19: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
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.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
21: goto 95
22: StackMap locals:
StackMap stack:
aload 2
new java.lang.StringBuilder
dup
ldc ",number,"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
23: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
checkcast java.text.DecimalFormat
invokevirtual java.text.DecimalFormat.toPattern:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
24: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
25: goto 95
StackMap locals:
StackMap stack:
26: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
instanceof java.text.SimpleDateFormat
ifeq 91
27: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
28: iconst_2
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
29: invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
30: ifeq 33
31: aload 2
ldc ",date"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
32: goto 95
StackMap locals:
StackMap stack:
33: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
34: iconst_3
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
35: invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
36: ifeq 39
37: aload 2
ldc ",date,short"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
38: goto 95
StackMap locals:
StackMap stack:
39: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
40: iconst_2
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
41: invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
42: ifeq 45
43: aload 2
ldc ",date,medium"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
44: goto 95
StackMap locals:
StackMap stack:
45: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
46: iconst_1
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
47: invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
48: ifeq 51
49: aload 2
ldc ",date,long"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
50: goto 95
StackMap locals:
StackMap stack:
51: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
52: iconst_0
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
53: invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
54: ifeq 57
55: aload 2
ldc ",date,full"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
56: goto 95
StackMap locals:
StackMap stack:
57: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
58: iconst_2
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
59: invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
60: ifeq 63
61: aload 2
ldc ",time"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
62: goto 95
StackMap locals:
StackMap stack:
63: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
64: iconst_3
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
65: invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
66: ifeq 69
67: aload 2
ldc ",time,short"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
68: goto 95
StackMap locals:
StackMap stack:
69: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
70: iconst_2
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
71: invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
72: ifeq 75
73: aload 2
ldc ",time,medium"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
74: goto 95
StackMap locals:
StackMap stack:
75: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
76: iconst_1
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
77: invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
78: ifeq 81
79: aload 2
ldc ",time,long"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
80: goto 95
StackMap locals:
StackMap stack:
81: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
82: iconst_0
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
83: invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
84: ifeq 87
85: aload 2
ldc ",time,full"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
86: goto 95
87: StackMap locals:
StackMap stack:
aload 2
new java.lang.StringBuilder
dup
ldc ",date,"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
88: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
checkcast java.text.SimpleDateFormat
invokevirtual java.text.SimpleDateFormat.toPattern:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
89: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
90: goto 95
StackMap locals:
StackMap stack:
91: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
instanceof java.text.ChoiceFormat
ifeq 95
92: aload 2
new java.lang.StringBuilder
dup
ldc ",choice,"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
93: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 3
aaload
checkcast java.text.ChoiceFormat
invokevirtual java.text.ChoiceFormat.toPattern:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
94: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
95: StackMap locals:
StackMap stack:
aload 2
bipush 125
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
96: iinc 3 1
StackMap locals:
StackMap stack:
97: iload 3
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 4
end local 3 98: 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/StringBuffer;)V
99: 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 100 0 this Ljava/text/MessageFormat;
1 100 1 lastOffset I
2 100 2 result Ljava/lang/StringBuffer;
3 98 3 i I
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: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 1
aload 2
aastore
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/text/MessageFormat;
0 2 1 formatElementIndex I
0 2 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;
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 53
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 44
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 34
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;
iload 6
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
istore 11
start local 11 34: StackMap locals: int
StackMap stack:
iload 11
ifge 37
35: aload 2
iload 6
putfield java.text.ParsePosition.errorIndex:I
36: aconst_null
areturn
37: StackMap locals:
StackMap stack:
aload 1
iload 6
iload 11
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 12
start local 12 38: 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 42
39: aload 4
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 8
iaload
40: aload 1
iload 6
iload 11
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
41: aastore
42: StackMap locals: java.lang.String
StackMap stack:
iload 11
istore 6
end local 12 end local 11 end local 10 43: goto 52
44: StackMap locals:
StackMap stack:
aload 7
iload 6
putfield java.text.ParsePosition.index:I
45: aload 4
aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 8
iaload
46: 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;
47: aastore
48: aload 7
getfield java.text.ParsePosition.index:I
iload 6
if_icmpne 51
49: aload 2
iload 6
putfield java.text.ParsePosition.errorIndex:I
50: aconst_null
areturn
51: StackMap locals:
StackMap stack:
aload 7
getfield java.text.ParsePosition.index:I
istore 6
end local 9 52: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
53: iload 8
aload 0
getfield java.text.MessageFormat.maxOffset:I
if_icmple 16
end local 8 54: aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iload 5
isub
istore 8
start local 8 55: iload 8
ifeq 59
aload 0
getfield java.text.MessageFormat.pattern:Ljava/lang/String;
iload 5
56: aload 1
iload 6
iload 8
57: invokevirtual java.lang.String.regionMatches:(ILjava/lang/String;II)Z
58: ifeq 61
59: StackMap locals:
StackMap stack:
aload 2
iload 6
iload 8
iadd
putfield java.text.ParsePosition.index:I
60: goto 63
61: StackMap locals:
StackMap stack:
aload 2
iload 6
putfield java.text.ParsePosition.errorIndex:I
62: aconst_null
areturn
63: 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 64 0 this Ljava/text/MessageFormat;
0 64 1 source Ljava/lang/String;
0 64 2 pos Ljava/text/ParsePosition;
2 3 3 empty [Ljava/lang/Object;
4 64 3 maximumArgumentNumber I
5 10 4 i I
11 64 4 resultArray [Ljava/lang/Object;
12 64 5 patternOffset I
13 64 6 sourceOffset I
14 64 7 tempStatus Ljava/text/ParsePosition;
15 54 8 i I
17 52 9 len I
30 43 10 tempLength I
32 33 11 next I
34 43 11 next I
38 43 12 strValue Ljava/lang/String;
55 64 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.Object[], java.lang.StringBuffer, java.text.FieldPosition, java.util.List);
descriptor: ([Ljava/lang/Object;Ljava/lang/StringBuffer;Ljava/text/FieldPosition;Ljava/util/List;)Ljava/lang/StringBuffer;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, 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.String.substring:(II)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)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
new java.lang.StringBuilder
dup
ldc "{"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 8
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.StringBuffer.append:(Ljava/lang/String;)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: new java.lang.Integer
dup
iload 8
invokespecial java.lang.Integer.<init>:(I)V
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.length:()I
ifle 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: new java.lang.Integer
dup
iload 8
invokespecial java.lang.Integer.<init>:(I)V
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.String.substring:(II)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)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;
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;
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.StringBuffer[]);
descriptor: (II[Ljava/lang/StringBuffer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
iconst_1
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 4
start local 4 1: goto 4
end local 4 StackMap locals:
StackMap stack: java.lang.NumberFormatException
2: pop
3: 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
aload 3
iconst_1
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
start local 4 4: StackMap locals: int
StackMap stack:
iload 4
ifge 6
5: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "negative argument number: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
iload 2
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
arraylength
if_icmplt 17
7: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
arraylength
iconst_2
imul
istore 5
start local 5 8: iload 5
anewarray java.text.Format
astore 6
start local 6 9: iload 5
newarray 10
astore 7
start local 7 10: iload 5
newarray 10
astore 8
start local 8 11: aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iconst_0
aload 6
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
12: aload 0
getfield java.text.MessageFormat.offsets:[I
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
13: aload 0
getfield java.text.MessageFormat.argumentNumbers:[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
14: aload 0
aload 6
putfield java.text.MessageFormat.formats:[Ljava/text/Format;
15: aload 0
aload 7
putfield java.text.MessageFormat.offsets:[I
16: aload 0
aload 8
putfield java.text.MessageFormat.argumentNumbers:[I
end local 8 end local 7 end local 6 end local 5 17: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.maxOffset:I
istore 5
start local 5 18: aload 0
iload 2
putfield java.text.MessageFormat.maxOffset:I
19: aload 0
getfield java.text.MessageFormat.offsets:[I
iload 2
aload 3
iconst_0
aaload
invokevirtual java.lang.StringBuffer.length:()I
iastore
20: aload 0
getfield java.text.MessageFormat.argumentNumbers:[I
iload 2
iload 4
iastore
21: aconst_null
astore 6
start local 6 22: aload 3
iconst_2
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
getstatic java.text.MessageFormat.typeList:[Ljava/lang/String;
invokestatic java.text.MessageFormat.findKeyword:(Ljava/lang/String;[Ljava/lang/String;)I
tableswitch { // 0 - 8
0: 23
1: 24
2: 24
3: 35
4: 35
5: 48
6: 48
7: 61
8: 61
default: 68
}
23: StackMap locals: int java.text.Format
StackMap stack:
goto 72
24: StackMap locals:
StackMap stack:
aload 3
iconst_3
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
getstatic java.text.MessageFormat.modifierList:[Ljava/lang/String;
invokestatic java.text.MessageFormat.findKeyword:(Ljava/lang/String;[Ljava/lang/String;)I
tableswitch { // 0 - 6
0: 25
1: 27
2: 27
3: 29
4: 29
5: 31
6: 31
default: 33
}
25: 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 6
26: goto 72
27: 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 6
28: goto 72
29: 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 6
30: goto 72
31: 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 6
32: goto 72
33: StackMap locals:
StackMap stack:
new java.text.DecimalFormat
dup
aload 3
iconst_3
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DecimalFormatSymbols.getInstance:(Ljava/util/Locale;)Ljava/text/DecimalFormatSymbols;
invokespecial java.text.DecimalFormat.<init>:(Ljava/lang/String;Ljava/text/DecimalFormatSymbols;)V
astore 6
34: goto 72
35: StackMap locals:
StackMap stack:
aload 3
iconst_3
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
getstatic java.text.MessageFormat.dateModifierList:[Ljava/lang/String;
invokestatic java.text.MessageFormat.findKeyword:(Ljava/lang/String;[Ljava/lang/String;)I
tableswitch { // 0 - 8
0: 36
1: 38
2: 38
3: 40
4: 40
5: 42
6: 42
7: 44
8: 44
default: 46
}
36: StackMap locals:
StackMap stack:
iconst_2
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
37: goto 72
38: StackMap locals:
StackMap stack:
iconst_3
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
39: goto 72
40: StackMap locals:
StackMap stack:
iconst_2
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
41: goto 72
42: StackMap locals:
StackMap stack:
iconst_1
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
43: goto 72
44: StackMap locals:
StackMap stack:
iconst_0
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DateFormat.getDateInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
45: goto 72
46: StackMap locals:
StackMap stack:
new java.text.SimpleDateFormat
dup
aload 3
iconst_3
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
astore 6
47: goto 72
48: StackMap locals:
StackMap stack:
aload 3
iconst_3
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
getstatic java.text.MessageFormat.dateModifierList:[Ljava/lang/String;
invokestatic java.text.MessageFormat.findKeyword:(Ljava/lang/String;[Ljava/lang/String;)I
tableswitch { // 0 - 8
0: 49
1: 51
2: 51
3: 53
4: 53
5: 55
6: 55
7: 57
8: 57
default: 59
}
49: StackMap locals:
StackMap stack:
iconst_2
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
50: goto 72
51: StackMap locals:
StackMap stack:
iconst_3
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
52: goto 72
53: StackMap locals:
StackMap stack:
iconst_2
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
54: goto 72
55: StackMap locals:
StackMap stack:
iconst_1
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
56: goto 72
57: StackMap locals:
StackMap stack:
iconst_0
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokestatic java.text.DateFormat.getTimeInstance:(ILjava/util/Locale;)Ljava/text/DateFormat;
astore 6
58: goto 72
59: StackMap locals:
StackMap stack:
new java.text.SimpleDateFormat
dup
aload 3
iconst_3
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
aload 0
getfield java.text.MessageFormat.locale:Ljava/util/Locale;
invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
astore 6
60: goto 72
61: StackMap locals:
StackMap stack:
new java.text.ChoiceFormat
dup
aload 3
iconst_3
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
invokespecial java.text.ChoiceFormat.<init>:(Ljava/lang/String;)V
astore 6
62: goto 72
StackMap locals:
StackMap stack: java.lang.Exception
63: pop
64: aload 0
iload 5
putfield java.text.MessageFormat.maxOffset:I
65: new java.lang.IllegalArgumentException
dup
66: ldc "Choice Pattern incorrect"
67: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
68: StackMap locals:
StackMap stack:
aload 0
iload 5
putfield java.text.MessageFormat.maxOffset:I
69: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "unknown format type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
70: aload 3
iconst_2
aaload
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
71: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
72: StackMap locals:
StackMap stack:
aload 0
getfield java.text.MessageFormat.formats:[Ljava/text/Format;
iload 2
aload 6
aastore
73: aload 3
iconst_1
aaload
iconst_0
invokevirtual java.lang.StringBuffer.setLength:(I)V
74: aload 3
iconst_2
aaload
iconst_0
invokevirtual java.lang.StringBuffer.setLength:(I)V
75: aload 3
iconst_3
aaload
iconst_0
invokevirtual java.lang.StringBuffer.setLength:(I)V
76: 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 77 0 this Ljava/text/MessageFormat;
0 77 1 position I
0 77 2 offsetNumber I
0 77 3 segments [Ljava/lang/StringBuffer;
1 2 4 argumentNumber I
4 77 4 argumentNumber I
8 17 5 newLength I
9 17 6 newFormats [Ljava/text/Format;
10 17 7 newOffsets [I
11 17 8 newArgumentNumbers [I
18 77 5 oldMaxOffset I
22 77 6 newFormat Ljava/text/Format;
Exception table:
from to target type
0 1 2 Class java.lang.NumberFormatException
61 62 63 Class java.lang.Exception
MethodParameters:
Name Flags
position
offsetNumber
segments
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=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
astore 0
1: iconst_0
istore 2
start local 2 2: goto 6
3: StackMap locals: int
StackMap stack:
aload 0
aload 1
iload 2
aaload
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
4: iload 2
ireturn
5: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 1
arraylength
if_icmplt 3
end local 2 7: iconst_m1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 s Ljava/lang/String;
0 8 1 list [Ljava/lang/String;
2 7 2 i I
MethodParameters:
Name Flags
s
list
private static final void copyAndFixQuotes(java.lang.String, int, int, java.lang.StringBuffer);
descriptor: (Ljava/lang/String;IILjava/lang/StringBuffer;)V
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Code:
stack=2, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 1
istore 4
start local 4 1: goto 14
2: StackMap locals: int
StackMap stack:
aload 0
iload 4
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 3: iload 5
bipush 123
if_icmpne 6
4: aload 3
ldc "'{'"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
5: goto 13
StackMap locals: int
StackMap stack:
6: iload 5
bipush 125
if_icmpne 9
7: aload 3
ldc "'}'"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
8: goto 13
StackMap locals:
StackMap stack:
9: iload 5
bipush 39
if_icmpne 12
10: aload 3
ldc "''"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
11: goto 13
12: StackMap locals:
StackMap stack:
aload 3
iload 5
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
end local 5 13: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
14: iload 4
iload 2
if_icmplt 2
end local 4 15: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 source Ljava/lang/String;
0 16 1 start I
0 16 2 end I
0 16 3 target Ljava/lang/StringBuffer;
1 15 4 i I
3 13 5 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