public class sun.util.locale.UnicodeLocaleExtension extends sun.util.locale.Extension
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.util.locale.UnicodeLocaleExtension
super_class: sun.util.locale.Extension
{
public static final char SINGLETON;
descriptor: C
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 117
private final java.util.Set<java.lang.String> attributes;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/String;>;
private final java.util.Map<java.lang.String, java.lang.String> keywords;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
public static final sun.util.locale.UnicodeLocaleExtension CA_JAPANESE;
descriptor: Lsun/util/locale/UnicodeLocaleExtension;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final sun.util.locale.UnicodeLocaleExtension NU_THAI;
descriptor: Lsun/util/locale/UnicodeLocaleExtension;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new sun.util.locale.UnicodeLocaleExtension
dup
ldc "ca"
ldc "japanese"
invokespecial sun.util.locale.UnicodeLocaleExtension.<init>:(Ljava/lang/String;Ljava/lang/String;)V
1: putstatic sun.util.locale.UnicodeLocaleExtension.CA_JAPANESE:Lsun/util/locale/UnicodeLocaleExtension;
2: new sun.util.locale.UnicodeLocaleExtension
dup
ldc "nu"
ldc "thai"
invokespecial sun.util.locale.UnicodeLocaleExtension.<init>:(Ljava/lang/String;Ljava/lang/String;)V
3: putstatic sun.util.locale.UnicodeLocaleExtension.NU_THAI:Lsun/util/locale/UnicodeLocaleExtension;
4: return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
bipush 117
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial sun.util.locale.Extension.<init>:(CLjava/lang/String;)V
1: aload 0
invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
putfield sun.util.locale.UnicodeLocaleExtension.attributes:Ljava/util/Set;
2: aload 0
aload 1
aload 2
invokestatic java.util.Collections.singletonMap:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
putfield sun.util.locale.UnicodeLocaleExtension.keywords:Ljava/util/Map;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/util/locale/UnicodeLocaleExtension;
0 4 1 key Ljava/lang/String;
0 4 2 value Ljava/lang/String;
MethodParameters:
Name Flags
key
value
void <init>(java.util.SortedSet<java.lang.String>, java.util.SortedMap<java.lang.String, java.lang.String>);
descriptor: (Ljava/util/SortedSet;Ljava/util/SortedMap;)V
flags: (0x0000)
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
bipush 117
invokespecial sun.util.locale.Extension.<init>:(C)V
1: aload 1
ifnull 4
2: aload 0
aload 1
putfield sun.util.locale.UnicodeLocaleExtension.attributes:Ljava/util/Set;
3: goto 5
4: StackMap locals: sun.util.locale.UnicodeLocaleExtension java.util.SortedSet java.util.SortedMap
StackMap stack:
aload 0
invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
putfield sun.util.locale.UnicodeLocaleExtension.attributes:Ljava/util/Set;
5: StackMap locals:
StackMap stack:
aload 2
ifnull 8
6: aload 0
aload 2
putfield sun.util.locale.UnicodeLocaleExtension.keywords:Ljava/util/Map;
7: goto 9
8: StackMap locals:
StackMap stack:
aload 0
invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
putfield sun.util.locale.UnicodeLocaleExtension.keywords:Ljava/util/Map;
9: StackMap locals:
StackMap stack:
aload 0
getfield sun.util.locale.UnicodeLocaleExtension.attributes:Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifeq 10
aload 0
getfield sun.util.locale.UnicodeLocaleExtension.keywords:Ljava/util/Map;
invokeinterface java.util.Map.isEmpty:()Z
ifne 24
10: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 11: aload 0
getfield sun.util.locale.UnicodeLocaleExtension.attributes:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 14
StackMap locals: sun.util.locale.UnicodeLocaleExtension java.util.SortedSet java.util.SortedMap java.lang.StringBuilder top java.util.Iterator
StackMap stack:
12: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 13: aload 3
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 4 14: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 12
15: aload 0
getfield sun.util.locale.UnicodeLocaleExtension.keywords:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 22
StackMap locals:
StackMap stack:
16: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 4
start local 4 17: aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 18: aload 4
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.String
astore 7
start local 7 19: aload 3
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
20: aload 7
invokevirtual java.lang.String.length:()I
ifle 22
21: aload 3
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 7 end local 6 end local 4 22: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
23: aload 0
aload 3
iconst_1
invokevirtual java.lang.StringBuilder.substring:(I)Ljava/lang/String;
invokevirtual sun.util.locale.UnicodeLocaleExtension.setValue:(Ljava/lang/String;)V
end local 3 24: StackMap locals: sun.util.locale.UnicodeLocaleExtension java.util.SortedSet java.util.SortedMap
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lsun/util/locale/UnicodeLocaleExtension;
0 25 1 attributes Ljava/util/SortedSet<Ljava/lang/String;>;
0 25 2 keywords Ljava/util/SortedMap<Ljava/lang/String;Ljava/lang/String;>;
11 24 3 sb Ljava/lang/StringBuilder;
13 14 4 attribute Ljava/lang/String;
17 22 4 keyword Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
18 22 6 key Ljava/lang/String;
19 22 7 value Ljava/lang/String;
Signature: (Ljava/util/SortedSet<Ljava/lang/String;>;Ljava/util/SortedMap<Ljava/lang/String;Ljava/lang/String;>;)V
MethodParameters:
Name Flags
attributes
keywords
public java.util.Set<java.lang.String> getUnicodeLocaleAttributes();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.util.locale.UnicodeLocaleExtension.attributes:Ljava/util/Set;
getstatic java.util.Collections.EMPTY_SET:Ljava/util/Set;
if_acmpne 2
1: aload 0
getfield sun.util.locale.UnicodeLocaleExtension.attributes:Ljava/util/Set;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.util.locale.UnicodeLocaleExtension.attributes:Ljava/util/Set;
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/util/locale/UnicodeLocaleExtension;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public java.util.Set<java.lang.String> getUnicodeLocaleKeys();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.util.locale.UnicodeLocaleExtension.keywords:Ljava/util/Map;
getstatic java.util.Collections.EMPTY_MAP:Ljava/util/Map;
if_acmpne 2
1: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.util.locale.UnicodeLocaleExtension.keywords:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/util/locale/UnicodeLocaleExtension;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public java.lang.String getUnicodeLocaleType(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.util.locale.UnicodeLocaleExtension.keywords:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/util/locale/UnicodeLocaleExtension;
0 1 1 unicodeLocaleKey Ljava/lang/String;
MethodParameters:
Name Flags
unicodeLocaleKey
public static boolean isSingletonChar(char);
descriptor: (C)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: bipush 117
iload 0
invokestatic sun.util.locale.LocaleUtils.toLower:(C)C
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 c C
MethodParameters:
Name Flags
c
public static boolean isAttribute(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
istore 1
start local 1 1: iload 1
iconst_3
if_icmplt 2
iload 1
bipush 8
if_icmpgt 2
aload 0
invokestatic sun.util.locale.LocaleUtils.isAlphaNumericString:(Ljava/lang/String;)Z
ifeq 2
iconst_1
ireturn
StackMap locals: int
StackMap stack:
2: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 s Ljava/lang/String;
1 3 1 len I
MethodParameters:
Name Flags
s
public static boolean isKey(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
iconst_2
if_icmpne 1
aload 0
invokestatic sun.util.locale.LocaleUtils.isAlphaNumericString:(Ljava/lang/String;)Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 s Ljava/lang/String;
MethodParameters:
Name Flags
s
public static boolean isTypeSubtag(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
istore 1
start local 1 1: iload 1
iconst_3
if_icmplt 2
iload 1
bipush 8
if_icmpgt 2
aload 0
invokestatic sun.util.locale.LocaleUtils.isAlphaNumericString:(Ljava/lang/String;)Z
ifeq 2
iconst_1
ireturn
StackMap locals: int
StackMap stack:
2: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 s Ljava/lang/String;
1 3 1 len I
MethodParameters:
Name Flags
s
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial sun.util.locale.Extension.toString:()Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
public char getKey();
descriptor: ()C
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial sun.util.locale.Extension.getKey:()C
ireturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.String getID();
descriptor: ()Ljava/lang/String;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial sun.util.locale.Extension.getID:()Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.String getValue();
descriptor: ()Ljava/lang/String;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial sun.util.locale.Extension.getValue:()Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "UnicodeLocaleExtension.java"
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map