public class sun.util.locale.provider.BreakIteratorProviderImpl extends java.text.spi.BreakIteratorProvider implements sun.util.locale.provider.AvailableLanguageTags
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.util.locale.provider.BreakIteratorProviderImpl
super_class: java.text.spi.BreakIteratorProvider
{
private static final int CHARACTER_INDEX;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int WORD_INDEX;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int LINE_INDEX;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int SENTENCE_INDEX;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private final sun.util.locale.provider.LocaleProviderAdapter$Type type;
descriptor: Lsun/util/locale/provider/LocaleProviderAdapter$Type;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Set<java.lang.String> langtags;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/String;>;
public void <init>(sun.util.locale.provider.LocaleProviderAdapter$Type, java.util.Set<java.lang.String>);
descriptor: (Lsun/util/locale/provider/LocaleProviderAdapter$Type;Ljava/util/Set;)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.spi.BreakIteratorProvider.<init>:()V
1: aload 0
aload 1
putfield sun.util.locale.provider.BreakIteratorProviderImpl.type:Lsun/util/locale/provider/LocaleProviderAdapter$Type;
2: aload 0
aload 2
putfield sun.util.locale.provider.BreakIteratorProviderImpl.langtags:Ljava/util/Set;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/util/locale/provider/BreakIteratorProviderImpl;
0 4 1 type Lsun/util/locale/provider/LocaleProviderAdapter$Type;
0 4 2 langtags Ljava/util/Set<Ljava/lang/String;>;
Signature: (Lsun/util/locale/provider/LocaleProviderAdapter$Type;Ljava/util/Set<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
type
langtags
public java.util.Locale[] getAvailableLocales();
descriptor: ()[Ljava/util/Locale;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.util.locale.provider.BreakIteratorProviderImpl.langtags:Ljava/util/Set;
invokestatic sun.util.locale.provider.LocaleProviderAdapter.toLocaleArray:(Ljava/util/Set;)[Ljava/util/Locale;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/util/locale/provider/BreakIteratorProviderImpl;
public java.text.BreakIterator getWordInstance(java.util.Locale);
descriptor: (Ljava/util/Locale;)Ljava/text/BreakIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
1: iconst_1
2: ldc "WordData"
3: ldc "WordDictionary"
4: invokevirtual sun.util.locale.provider.BreakIteratorProviderImpl.getBreakInstance:(Ljava/util/Locale;ILjava/lang/String;Ljava/lang/String;)Ljava/text/BreakIterator;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/util/locale/provider/BreakIteratorProviderImpl;
0 5 1 locale Ljava/util/Locale;
MethodParameters:
Name Flags
locale
public java.text.BreakIterator getLineInstance(java.util.Locale);
descriptor: (Ljava/util/Locale;)Ljava/text/BreakIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
1: iconst_2
2: ldc "LineData"
3: ldc "LineDictionary"
4: invokevirtual sun.util.locale.provider.BreakIteratorProviderImpl.getBreakInstance:(Ljava/util/Locale;ILjava/lang/String;Ljava/lang/String;)Ljava/text/BreakIterator;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/util/locale/provider/BreakIteratorProviderImpl;
0 5 1 locale Ljava/util/Locale;
MethodParameters:
Name Flags
locale
public java.text.BreakIterator getCharacterInstance(java.util.Locale);
descriptor: (Ljava/util/Locale;)Ljava/text/BreakIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
1: iconst_0
2: ldc "CharacterData"
3: ldc "CharacterDictionary"
4: invokevirtual sun.util.locale.provider.BreakIteratorProviderImpl.getBreakInstance:(Ljava/util/Locale;ILjava/lang/String;Ljava/lang/String;)Ljava/text/BreakIterator;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/util/locale/provider/BreakIteratorProviderImpl;
0 5 1 locale Ljava/util/Locale;
MethodParameters:
Name Flags
locale
public java.text.BreakIterator getSentenceInstance(java.util.Locale);
descriptor: (Ljava/util/Locale;)Ljava/text/BreakIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
1: iconst_3
2: ldc "SentenceData"
3: ldc "SentenceDictionary"
4: invokevirtual sun.util.locale.provider.BreakIteratorProviderImpl.getBreakInstance:(Ljava/util/Locale;ILjava/lang/String;Ljava/lang/String;)Ljava/text/BreakIterator;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/util/locale/provider/BreakIteratorProviderImpl;
0 5 1 locale Ljava/util/Locale;
MethodParameters:
Name Flags
locale
private java.text.BreakIterator getBreakInstance(java.util.Locale, int, java.lang.String, java.lang.String);
descriptor: (Ljava/util/Locale;ILjava/lang/String;Ljava/lang/String;)Ljava/text/BreakIterator;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: invokestatic sun.util.locale.provider.LocaleProviderAdapter.forJRE:()Lsun/util/locale/provider/LocaleProviderAdapter;
aload 1
invokevirtual sun.util.locale.provider.LocaleProviderAdapter.getLocaleResources:(Ljava/util/Locale;)Lsun/util/locale/provider/LocaleResources;
astore 5
start local 5 2: aload 5
ldc "BreakIteratorClasses"
invokevirtual sun.util.locale.provider.LocaleResources.getBreakIteratorInfo:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String[]
astore 6
start local 6 3: aload 5
aload 3
invokevirtual sun.util.locale.provider.LocaleResources.getBreakIteratorInfo:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String
astore 7
start local 7 4: aload 5
aload 3
invokevirtual sun.util.locale.provider.LocaleResources.getBreakIteratorResources:(Ljava/lang/String;)[B
astore 8
start local 8 5: aload 6
iload 2
aaload
dup
astore 9
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 2
1249121520: 6
1909671382: 7
default: 16
}
StackMap locals: sun.util.locale.provider.BreakIteratorProviderImpl java.util.Locale int java.lang.String java.lang.String sun.util.locale.provider.LocaleResources java.lang.String[] java.lang.String byte[] java.lang.String
StackMap stack:
6: aload 9
ldc "DictionaryBasedBreakIterator"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 10
goto 16
StackMap locals:
StackMap stack:
7: aload 9
ldc "RuleBasedBreakIterator"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 8
goto 16
8: StackMap locals:
StackMap stack:
new sun.text.RuleBasedBreakIterator
dup
aload 7
aload 8
invokespecial sun.text.RuleBasedBreakIterator.<init>:(Ljava/lang/String;[B)V
9: areturn
10: StackMap locals:
StackMap stack:
aload 5
aload 4
invokevirtual sun.util.locale.provider.LocaleResources.getBreakIteratorInfo:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String
astore 10
start local 10 11: aload 5
aload 4
invokevirtual sun.util.locale.provider.LocaleResources.getBreakIteratorResources:(Ljava/lang/String;)[B
astore 11
start local 11 12: new sun.text.DictionaryBasedBreakIterator
dup
aload 7
aload 8
13: aload 10
aload 11
14: invokespecial sun.text.DictionaryBasedBreakIterator.<init>:(Ljava/lang/String;[BLjava/lang/String;[B)V
15: areturn
end local 11 end local 10 16: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid break iterator class \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
17: aload 6
iload 2
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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: sun.util.locale.provider.BreakIteratorProviderImpl java.util.Locale int java.lang.String java.lang.String sun.util.locale.provider.LocaleResources java.lang.String[] java.lang.String byte[]
StackMap stack: java.lang.RuntimeException
astore 9
start local 9 20: new java.lang.InternalError
dup
aload 9
invokevirtual java.lang.RuntimeException.toString:()Ljava/lang/String;
aload 9
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lsun/util/locale/provider/BreakIteratorProviderImpl;
0 21 1 locale Ljava/util/Locale;
0 21 2 type I
0 21 3 ruleName Ljava/lang/String;
0 21 4 dictionaryName Ljava/lang/String;
2 21 5 lr Lsun/util/locale/provider/LocaleResources;
3 21 6 classNames [Ljava/lang/String;
4 21 7 ruleFile Ljava/lang/String;
5 21 8 ruleData [B
11 16 10 dictionaryFile Ljava/lang/String;
12 16 11 dictionaryData [B
20 21 9 e Ljava/lang/RuntimeException;
Exception table:
from to target type
5 9 19 Class java.util.MissingResourceException
10 15 19 Class java.util.MissingResourceException
16 19 19 Class java.util.MissingResourceException
5 9 19 Class java.lang.IllegalArgumentException
10 15 19 Class java.lang.IllegalArgumentException
16 19 19 Class java.lang.IllegalArgumentException
MethodParameters:
Name Flags
locale
type
ruleName
dictionaryName
public java.util.Set<java.lang.String> getAvailableLanguageTags();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.util.locale.provider.BreakIteratorProviderImpl.langtags:Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/util/locale/provider/BreakIteratorProviderImpl;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public boolean isSupportedLocale(java.util.Locale);
descriptor: (Ljava/util/Locale;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.util.locale.provider.BreakIteratorProviderImpl.type:Lsun/util/locale/provider/LocaleProviderAdapter$Type;
invokestatic sun.util.locale.provider.LocaleProviderAdapter.forType:(Lsun/util/locale/provider/LocaleProviderAdapter$Type;)Lsun/util/locale/provider/LocaleProviderAdapter;
aload 1
aload 0
getfield sun.util.locale.provider.BreakIteratorProviderImpl.langtags:Ljava/util/Set;
invokevirtual sun.util.locale.provider.LocaleProviderAdapter.isSupportedProviderLocale:(Ljava/util/Locale;Ljava/util/Set;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/util/locale/provider/BreakIteratorProviderImpl;
0 1 1 locale Ljava/util/Locale;
MethodParameters:
Name Flags
locale
}
SourceFile: "BreakIteratorProviderImpl.java"
InnerClasses:
public final Type = sun.util.locale.provider.LocaleProviderAdapter$Type of sun.util.locale.provider.LocaleProviderAdapter