public final class jdk.internal.icu.text.UTF16
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.internal.icu.text.UTF16
super_class: java.lang.Object
{
public static final int CODEPOINT_MIN_VALUE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int CODEPOINT_MAX_VALUE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1114111
public static final int SUPPLEMENTARY_MIN_VALUE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 65536
public static final int LEAD_SURROGATE_MIN_VALUE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 55296
public static final int TRAIL_SURROGATE_MIN_VALUE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 56320
public static final int LEAD_SURROGATE_MAX_VALUE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 56319
public static final int TRAIL_SURROGATE_MAX_VALUE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 57343
public static final int SURROGATE_MIN_VALUE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 55296
private static final int LEAD_SURROGATE_BITMASK;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -1024
private static final int TRAIL_SURROGATE_BITMASK;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -1024
private static final int SURROGATE_BITMASK;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -2048
private static final int LEAD_SURROGATE_BITS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 55296
private static final int TRAIL_SURROGATE_BITS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 56320
private static final int SURROGATE_BITS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 55296
private static final int LEAD_SURROGATE_SHIFT_;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private static final int TRAIL_SURROGATE_MASK_;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1023
private static final int LEAD_SURROGATE_OFFSET_;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 55232
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/icu/text/UTF16;
public static int charAt(java.lang.String, int);
descriptor: (Ljava/lang/String;I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual java.lang.String.charAt:(I)C
istore 2
start local 2 1: iload 2
ldc 55296
if_icmpge 3
2: iload 2
ireturn
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
iload 2
invokestatic jdk.internal.icu.text.UTF16._charAt:(Ljava/lang/String;IC)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 source Ljava/lang/String;
0 4 1 offset16 I
1 4 2 single C
MethodParameters:
Name Flags
source
offset16
private static int _charAt(java.lang.String, int, char);
descriptor: (Ljava/lang/String;IC)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ldc 57343
if_icmple 2
1: iload 2
ireturn
2: StackMap locals:
StackMap stack:
iload 2
ldc 56319
if_icmpgt 8
3: iinc 1 1
4: aload 0
invokevirtual java.lang.String.length:()I
iload 1
if_icmpeq 13
5: aload 0
iload 1
invokevirtual java.lang.String.charAt:(I)C
istore 3
start local 3 6: iload 3
ldc 56320
if_icmplt 13
iload 3
ldc 57343
if_icmpgt 13
7: iload 2
iload 3
invokestatic jdk.internal.icu.impl.UCharacterProperty.getRawSupplementary:(CC)I
ireturn
end local 3 8: StackMap locals:
StackMap stack:
iinc 1 -1
9: iload 1
iflt 13
10: aload 0
iload 1
invokevirtual java.lang.String.charAt:(I)C
istore 3
start local 3 11: iload 3
ldc 55296
if_icmplt 13
iload 3
ldc 56319
if_icmpgt 13
12: iload 3
iload 2
invokestatic jdk.internal.icu.impl.UCharacterProperty.getRawSupplementary:(CC)I
ireturn
end local 3 13: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 source Ljava/lang/String;
0 14 1 offset16 I
0 14 2 single C
6 8 3 trail C
11 13 3 lead C
MethodParameters:
Name Flags
source
offset16
single
public static int charAt(java.lang.CharSequence, int);
descriptor: (Ljava/lang/CharSequence;I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 2
start local 2 1: iload 2
ldc 55296
if_icmpge 3
2: iload 2
ireturn
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
iload 2
invokestatic jdk.internal.icu.text.UTF16._charAt:(Ljava/lang/CharSequence;IC)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 source Ljava/lang/CharSequence;
0 4 1 offset16 I
1 4 2 single C
MethodParameters:
Name Flags
source
offset16
private static int _charAt(java.lang.CharSequence, int, char);
descriptor: (Ljava/lang/CharSequence;IC)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ldc 57343
if_icmple 2
1: iload 2
ireturn
2: StackMap locals:
StackMap stack:
iload 2
ldc 56319
if_icmpgt 9
3: iinc 1 1
4: aload 0
invokeinterface java.lang.CharSequence.length:()I
iload 1
if_icmpeq 15
5: aload 0
iload 1
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 3
start local 3 6: iload 3
ldc 56320
if_icmplt 15
7: iload 3
ldc 57343
if_icmpgt 15
8: iload 2
iload 3
invokestatic jdk.internal.icu.impl.UCharacterProperty.getRawSupplementary:(CC)I
ireturn
end local 3 9: StackMap locals:
StackMap stack:
iinc 1 -1
10: iload 1
iflt 15
11: aload 0
iload 1
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 3
start local 3 12: iload 3
ldc 55296
if_icmplt 15
13: iload 3
ldc 56319
if_icmpgt 15
14: iload 3
iload 2
invokestatic jdk.internal.icu.impl.UCharacterProperty.getRawSupplementary:(CC)I
ireturn
end local 3 15: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 source Ljava/lang/CharSequence;
0 16 1 offset16 I
0 16 2 single C
6 9 3 trail C
12 15 3 lead C
MethodParameters:
Name Flags
source
offset16
single
public static int charAt(char[], int, int, int);
descriptor: ([CIII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
iload 1
iadd
istore 3
1: iload 3
iload 1
if_icmplt 2
iload 3
iload 2
if_icmplt 3
2: StackMap locals:
StackMap stack:
new java.lang.ArrayIndexOutOfBoundsException
dup
iload 3
invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(I)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
iload 3
caload
istore 4
start local 4 4: iload 4
invokestatic jdk.internal.icu.text.UTF16.isSurrogate:(C)Z
ifne 6
5: iload 4
ireturn
6: StackMap locals: int
StackMap stack:
iload 4
ldc 56319
if_icmpgt 13
7: iinc 3 1
8: iload 3
iload 2
if_icmplt 10
9: iload 4
ireturn
10: StackMap locals:
StackMap stack:
aload 0
iload 3
caload
istore 5
start local 5 11: iload 5
invokestatic jdk.internal.icu.text.UTF16.isTrailSurrogate:(C)Z
ifeq 19
12: iload 4
iload 5
invokestatic jdk.internal.icu.impl.UCharacterProperty.getRawSupplementary:(CC)I
ireturn
end local 5 13: StackMap locals:
StackMap stack:
iload 3
iload 1
if_icmpne 15
14: iload 4
ireturn
15: StackMap locals:
StackMap stack:
iinc 3 -1
16: aload 0
iload 3
caload
istore 5
start local 5 17: iload 5
invokestatic jdk.internal.icu.text.UTF16.isLeadSurrogate:(C)Z
ifeq 19
18: iload 5
iload 4
invokestatic jdk.internal.icu.impl.UCharacterProperty.getRawSupplementary:(CC)I
ireturn
end local 5 19: StackMap locals:
StackMap stack:
iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 source [C
0 20 1 start I
0 20 2 limit I
0 20 3 offset16 I
4 20 4 single C
11 13 5 trail C
17 19 5 lead C
MethodParameters:
Name Flags
source
start
limit
offset16
public static int getCharCount(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
ldc 65536
if_icmpge 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_2
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 char32 I
MethodParameters:
Name Flags
char32
public static boolean isSurrogate(char);
descriptor: (C)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
sipush -2048
iand
ldc 55296
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 char16 C
MethodParameters:
Name Flags
char16
public static boolean isTrailSurrogate(char);
descriptor: (C)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
sipush -1024
iand
ldc 56320
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 char16 C
MethodParameters:
Name Flags
char16
public static boolean isLeadSurrogate(char);
descriptor: (C)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
sipush -1024
iand
ldc 55296
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 char16 C
MethodParameters:
Name Flags
char16
public static char getLeadSurrogate(int);
descriptor: (I)C
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
ldc 65536
if_icmplt 4
1: ldc 55232
2: iload 0
bipush 10
ishr
3: iadd
i2c
ireturn
4: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 char32 I
MethodParameters:
Name Flags
char32
public static char getTrailSurrogate(int);
descriptor: (I)C
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
ldc 65536
if_icmplt 4
1: ldc 56320
2: iload 0
sipush 1023
iand
3: iadd
i2c
ireturn
4: StackMap locals:
StackMap stack:
iload 0
i2c
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 char32 I
MethodParameters:
Name Flags
char32
public static java.lang.String valueOf(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
iflt 1
iload 0
ldc 1114111
if_icmple 2
1: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "Illegal codepoint"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 0
invokestatic jdk.internal.icu.text.UTF16.toString:(I)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 char32 I
MethodParameters:
Name Flags
char32
public static java.lang.StringBuffer append(java.lang.StringBuffer, int);
descriptor: (Ljava/lang/StringBuffer;I)Ljava/lang/StringBuffer;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iflt 1
iload 1
ldc 1114111
if_icmple 2
1: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Illegal codepoint: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 1
ldc 65536
if_icmplt 6
3: aload 0
iload 1
invokestatic jdk.internal.icu.text.UTF16.getLeadSurrogate:(I)C
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
4: aload 0
iload 1
invokestatic jdk.internal.icu.text.UTF16.getTrailSurrogate:(I)C
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
5: goto 7
6: StackMap locals:
StackMap stack:
aload 0
iload 1
i2c
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
7: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 target Ljava/lang/StringBuffer;
0 8 1 char32 I
MethodParameters:
Name Flags
target
char32
public static int moveCodePointOffset(char[], int, int, int, int);
descriptor: ([CIIII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
arraylength
istore 5
start local 5 1: iload 3
iload 1
iadd
istore 8
start local 8 2: iload 1
iflt 3
iload 2
iload 1
if_icmpge 4
3: StackMap locals: char[] int int int int int top top int
StackMap stack:
new java.lang.StringIndexOutOfBoundsException
dup
iload 1
invokespecial java.lang.StringIndexOutOfBoundsException.<init>:(I)V
athrow
4: StackMap locals:
StackMap stack:
iload 2
iload 5
if_icmple 6
5: new java.lang.StringIndexOutOfBoundsException
dup
iload 2
invokespecial java.lang.StringIndexOutOfBoundsException.<init>:(I)V
athrow
6: StackMap locals:
StackMap stack:
iload 3
iflt 7
iload 8
iload 2
if_icmple 8
7: StackMap locals:
StackMap stack:
new java.lang.StringIndexOutOfBoundsException
dup
iload 3
invokespecial java.lang.StringIndexOutOfBoundsException.<init>:(I)V
athrow
8: StackMap locals:
StackMap stack:
iload 4
ifle 21
9: iload 4
iload 8
iadd
iload 5
if_icmple 11
10: new java.lang.StringIndexOutOfBoundsException
dup
iload 8
invokespecial java.lang.StringIndexOutOfBoundsException.<init>:(I)V
athrow
11: StackMap locals:
StackMap stack:
iload 4
istore 6
start local 6 12: goto 19
13: StackMap locals: char[] int int int int int int top int
StackMap stack:
aload 0
iload 8
caload
istore 7
start local 7 14: iload 7
invokestatic jdk.internal.icu.text.UTF16.isLeadSurrogate:(C)Z
ifeq 17
iload 8
iconst_1
iadd
iload 2
if_icmpge 17
15: aload 0
iload 8
iconst_1
iadd
caload
invokestatic jdk.internal.icu.text.UTF16.isTrailSurrogate:(C)Z
ifeq 17
16: iinc 8 1
17: StackMap locals: char[] int int int int int int int int
StackMap stack:
iinc 6 -1
18: iinc 8 1
end local 7 19: StackMap locals: char[] int int int int int int top int
StackMap stack:
iload 8
iload 2
if_icmpge 33
iload 6
ifgt 13
20: goto 33
end local 6 21: StackMap locals: char[] int int int int int top top int
StackMap stack:
iload 8
iload 4
iadd
iload 1
if_icmpge 23
22: new java.lang.StringIndexOutOfBoundsException
dup
iload 8
invokespecial java.lang.StringIndexOutOfBoundsException.<init>:(I)V
athrow
23: StackMap locals:
StackMap stack:
iload 4
ineg
istore 6
start local 6 24: goto 32
25: StackMap locals: char[] int int int int int int top int
StackMap stack:
iinc 8 -1
26: iload 8
iload 1
if_icmpge 28
27: goto 33
28: StackMap locals:
StackMap stack:
aload 0
iload 8
caload
istore 7
start local 7 29: iload 7
invokestatic jdk.internal.icu.text.UTF16.isTrailSurrogate:(C)Z
ifeq 31
iload 8
iload 1
if_icmple 31
aload 0
iload 8
iconst_1
isub
caload
invokestatic jdk.internal.icu.text.UTF16.isLeadSurrogate:(C)Z
ifeq 31
30: iinc 8 -1
31: StackMap locals: char[] int int int int int int int int
StackMap stack:
iinc 6 -1
end local 7 StackMap locals: char[] int int int int int int top int
StackMap stack:
32: iload 6
ifgt 25
33: StackMap locals:
StackMap stack:
iload 6
ifeq 35
34: new java.lang.StringIndexOutOfBoundsException
dup
iload 4
invokespecial java.lang.StringIndexOutOfBoundsException.<init>:(I)V
athrow
35: StackMap locals:
StackMap stack:
iload 8
iload 1
isub
istore 8
36: iload 8
ireturn
end local 8 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 source [C
0 37 1 start I
0 37 2 limit I
0 37 3 offset16 I
0 37 4 shift32 I
1 37 5 size I
12 21 6 count I
24 37 6 count I
14 19 7 ch C
29 32 7 ch C
2 37 8 result I
MethodParameters:
Name Flags
source
start
limit
offset16
shift32
private static java.lang.String toString(int);
descriptor: (I)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iload 0
ldc 65536
if_icmpge 2
1: iload 0
i2c
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 3: aload 1
iload 0
invokestatic jdk.internal.icu.text.UTF16.getLeadSurrogate:(I)C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
4: aload 1
iload 0
invokestatic jdk.internal.icu.text.UTF16.getTrailSurrogate:(I)C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
5: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 ch I
3 6 1 result Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
ch
}
SourceFile: "UTF16.java"