public final class org.apache.lucene.util.UnicodeUtil
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.lucene.util.UnicodeUtil
super_class: java.lang.Object
{
public static final org.apache.lucene.util.BytesRef BIG_TERM;
descriptor: Lorg/apache/lucene/util/BytesRef;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final int UNI_SUR_HIGH_START;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 55296
public static final int UNI_SUR_HIGH_END;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 56319
public static final int UNI_SUR_LOW_START;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 56320
public static final int UNI_SUR_LOW_END;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 57343
public static final int UNI_REPLACEMENT_CHAR;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 65533
private static final long UNI_MAX_BMP;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 65535
private static final long HALF_SHIFT;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private static final long HALF_MASK;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1023
private static final int SURROGATE_OFFSET;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -56613888
public static final int MAX_UTF8_BYTES_PER_CHAR;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
static final int[] utf8CodeLength;
descriptor: [I
flags: (0x0018) ACC_STATIC, ACC_FINAL
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 TRAIL_SURROGATE_MIN_VALUE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 56320
private static final int LEAD_SURROGATE_MIN_VALUE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 55296
private static final int SUPPLEMENTARY_MIN_VALUE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 65536
private static final int LEAD_SURROGATE_OFFSET_;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 55232
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=0, args_size=0
0: .line 97
ldc Lorg/apache/lucene/util/UnicodeUtil;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.apache.lucene.util.UnicodeUtil.$assertionsDisabled:Z
3: .line 104
new org.apache.lucene.util.BytesRef
dup
4: .line 105
bipush 10
newarray 8
dup
iconst_0
iconst_m1
bastore
dup
iconst_1
iconst_m1
bastore
dup
iconst_2
iconst_m1
bastore
dup
iconst_3
iconst_m1
bastore
dup
iconst_4
iconst_m1
bastore
dup
iconst_5
iconst_m1
bastore
dup
bipush 6
iconst_m1
bastore
dup
bipush 7
iconst_m1
bastore
dup
bipush 8
iconst_m1
bastore
dup
bipush 9
iconst_m1
bastore
5: .line 104
invokespecial org.apache.lucene.util.BytesRef.<init>:([B)V
putstatic org.apache.lucene.util.UnicodeUtil.BIG_TERM:Lorg/apache/lucene/util/BytesRef;
6: .line 384
sipush 248
newarray 10
dup
iconst_0
7: .line 385
iconst_1
iastore
dup
iconst_1
iconst_1
iastore
dup
iconst_2
iconst_1
iastore
dup
iconst_3
iconst_1
iastore
dup
iconst_4
iconst_1
iastore
dup
iconst_5
iconst_1
iastore
dup
bipush 6
iconst_1
iastore
dup
bipush 7
iconst_1
iastore
dup
bipush 8
iconst_1
iastore
dup
bipush 9
iconst_1
iastore
dup
bipush 10
iconst_1
iastore
dup
bipush 11
iconst_1
iastore
dup
bipush 12
iconst_1
iastore
dup
bipush 13
iconst_1
iastore
dup
bipush 14
iconst_1
iastore
dup
bipush 15
iconst_1
iastore
dup
bipush 16
8: .line 386
iconst_1
iastore
dup
bipush 17
iconst_1
iastore
dup
bipush 18
iconst_1
iastore
dup
bipush 19
iconst_1
iastore
dup
bipush 20
iconst_1
iastore
dup
bipush 21
iconst_1
iastore
dup
bipush 22
iconst_1
iastore
dup
bipush 23
iconst_1
iastore
dup
bipush 24
iconst_1
iastore
dup
bipush 25
iconst_1
iastore
dup
bipush 26
iconst_1
iastore
dup
bipush 27
iconst_1
iastore
dup
bipush 28
iconst_1
iastore
dup
bipush 29
iconst_1
iastore
dup
bipush 30
iconst_1
iastore
dup
bipush 31
iconst_1
iastore
dup
bipush 32
9: .line 387
iconst_1
iastore
dup
bipush 33
iconst_1
iastore
dup
bipush 34
iconst_1
iastore
dup
bipush 35
iconst_1
iastore
dup
bipush 36
iconst_1
iastore
dup
bipush 37
iconst_1
iastore
dup
bipush 38
iconst_1
iastore
dup
bipush 39
iconst_1
iastore
dup
bipush 40
iconst_1
iastore
dup
bipush 41
iconst_1
iastore
dup
bipush 42
iconst_1
iastore
dup
bipush 43
iconst_1
iastore
dup
bipush 44
iconst_1
iastore
dup
bipush 45
iconst_1
iastore
dup
bipush 46
iconst_1
iastore
dup
bipush 47
iconst_1
iastore
dup
bipush 48
10: .line 388
iconst_1
iastore
dup
bipush 49
iconst_1
iastore
dup
bipush 50
iconst_1
iastore
dup
bipush 51
iconst_1
iastore
dup
bipush 52
iconst_1
iastore
dup
bipush 53
iconst_1
iastore
dup
bipush 54
iconst_1
iastore
dup
bipush 55
iconst_1
iastore
dup
bipush 56
iconst_1
iastore
dup
bipush 57
iconst_1
iastore
dup
bipush 58
iconst_1
iastore
dup
bipush 59
iconst_1
iastore
dup
bipush 60
iconst_1
iastore
dup
bipush 61
iconst_1
iastore
dup
bipush 62
iconst_1
iastore
dup
bipush 63
iconst_1
iastore
dup
bipush 64
11: .line 389
iconst_1
iastore
dup
bipush 65
iconst_1
iastore
dup
bipush 66
iconst_1
iastore
dup
bipush 67
iconst_1
iastore
dup
bipush 68
iconst_1
iastore
dup
bipush 69
iconst_1
iastore
dup
bipush 70
iconst_1
iastore
dup
bipush 71
iconst_1
iastore
dup
bipush 72
iconst_1
iastore
dup
bipush 73
iconst_1
iastore
dup
bipush 74
iconst_1
iastore
dup
bipush 75
iconst_1
iastore
dup
bipush 76
iconst_1
iastore
dup
bipush 77
iconst_1
iastore
dup
bipush 78
iconst_1
iastore
dup
bipush 79
iconst_1
iastore
dup
bipush 80
12: .line 390
iconst_1
iastore
dup
bipush 81
iconst_1
iastore
dup
bipush 82
iconst_1
iastore
dup
bipush 83
iconst_1
iastore
dup
bipush 84
iconst_1
iastore
dup
bipush 85
iconst_1
iastore
dup
bipush 86
iconst_1
iastore
dup
bipush 87
iconst_1
iastore
dup
bipush 88
iconst_1
iastore
dup
bipush 89
iconst_1
iastore
dup
bipush 90
iconst_1
iastore
dup
bipush 91
iconst_1
iastore
dup
bipush 92
iconst_1
iastore
dup
bipush 93
iconst_1
iastore
dup
bipush 94
iconst_1
iastore
dup
bipush 95
iconst_1
iastore
dup
bipush 96
13: .line 391
iconst_1
iastore
dup
bipush 97
iconst_1
iastore
dup
bipush 98
iconst_1
iastore
dup
bipush 99
iconst_1
iastore
dup
bipush 100
iconst_1
iastore
dup
bipush 101
iconst_1
iastore
dup
bipush 102
iconst_1
iastore
dup
bipush 103
iconst_1
iastore
dup
bipush 104
iconst_1
iastore
dup
bipush 105
iconst_1
iastore
dup
bipush 106
iconst_1
iastore
dup
bipush 107
iconst_1
iastore
dup
bipush 108
iconst_1
iastore
dup
bipush 109
iconst_1
iastore
dup
bipush 110
iconst_1
iastore
dup
bipush 111
iconst_1
iastore
dup
bipush 112
14: .line 392
iconst_1
iastore
dup
bipush 113
iconst_1
iastore
dup
bipush 114
iconst_1
iastore
dup
bipush 115
iconst_1
iastore
dup
bipush 116
iconst_1
iastore
dup
bipush 117
iconst_1
iastore
dup
bipush 118
iconst_1
iastore
dup
bipush 119
iconst_1
iastore
dup
bipush 120
iconst_1
iastore
dup
bipush 121
iconst_1
iastore
dup
bipush 122
iconst_1
iastore
dup
bipush 123
iconst_1
iastore
dup
bipush 124
iconst_1
iastore
dup
bipush 125
iconst_1
iastore
dup
bipush 126
iconst_1
iastore
dup
bipush 127
iconst_1
iastore
dup
sipush 128
15: .line 393
ldc -2147483648
iastore
dup
sipush 129
ldc -2147483648
iastore
dup
sipush 130
ldc -2147483648
iastore
dup
sipush 131
ldc -2147483648
iastore
dup
sipush 132
ldc -2147483648
iastore
dup
sipush 133
ldc -2147483648
iastore
dup
sipush 134
ldc -2147483648
iastore
dup
sipush 135
ldc -2147483648
iastore
dup
sipush 136
ldc -2147483648
iastore
dup
sipush 137
ldc -2147483648
iastore
dup
sipush 138
ldc -2147483648
iastore
dup
sipush 139
ldc -2147483648
iastore
dup
sipush 140
ldc -2147483648
iastore
dup
sipush 141
ldc -2147483648
iastore
dup
sipush 142
ldc -2147483648
iastore
dup
sipush 143
ldc -2147483648
iastore
dup
sipush 144
16: .line 394
ldc -2147483648
iastore
dup
sipush 145
ldc -2147483648
iastore
dup
sipush 146
ldc -2147483648
iastore
dup
sipush 147
ldc -2147483648
iastore
dup
sipush 148
ldc -2147483648
iastore
dup
sipush 149
ldc -2147483648
iastore
dup
sipush 150
ldc -2147483648
iastore
dup
sipush 151
ldc -2147483648
iastore
dup
sipush 152
ldc -2147483648
iastore
dup
sipush 153
ldc -2147483648
iastore
dup
sipush 154
ldc -2147483648
iastore
dup
sipush 155
ldc -2147483648
iastore
dup
sipush 156
ldc -2147483648
iastore
dup
sipush 157
ldc -2147483648
iastore
dup
sipush 158
ldc -2147483648
iastore
dup
sipush 159
ldc -2147483648
iastore
dup
sipush 160
17: .line 395
ldc -2147483648
iastore
dup
sipush 161
ldc -2147483648
iastore
dup
sipush 162
ldc -2147483648
iastore
dup
sipush 163
ldc -2147483648
iastore
dup
sipush 164
ldc -2147483648
iastore
dup
sipush 165
ldc -2147483648
iastore
dup
sipush 166
ldc -2147483648
iastore
dup
sipush 167
ldc -2147483648
iastore
dup
sipush 168
ldc -2147483648
iastore
dup
sipush 169
ldc -2147483648
iastore
dup
sipush 170
ldc -2147483648
iastore
dup
sipush 171
ldc -2147483648
iastore
dup
sipush 172
ldc -2147483648
iastore
dup
sipush 173
ldc -2147483648
iastore
dup
sipush 174
ldc -2147483648
iastore
dup
sipush 175
ldc -2147483648
iastore
dup
sipush 176
18: .line 396
ldc -2147483648
iastore
dup
sipush 177
ldc -2147483648
iastore
dup
sipush 178
ldc -2147483648
iastore
dup
sipush 179
ldc -2147483648
iastore
dup
sipush 180
ldc -2147483648
iastore
dup
sipush 181
ldc -2147483648
iastore
dup
sipush 182
ldc -2147483648
iastore
dup
sipush 183
ldc -2147483648
iastore
dup
sipush 184
ldc -2147483648
iastore
dup
sipush 185
ldc -2147483648
iastore
dup
sipush 186
ldc -2147483648
iastore
dup
sipush 187
ldc -2147483648
iastore
dup
sipush 188
ldc -2147483648
iastore
dup
sipush 189
ldc -2147483648
iastore
dup
sipush 190
ldc -2147483648
iastore
dup
sipush 191
ldc -2147483648
iastore
dup
sipush 192
19: .line 397
iconst_2
iastore
dup
sipush 193
iconst_2
iastore
dup
sipush 194
iconst_2
iastore
dup
sipush 195
iconst_2
iastore
dup
sipush 196
iconst_2
iastore
dup
sipush 197
iconst_2
iastore
dup
sipush 198
iconst_2
iastore
dup
sipush 199
iconst_2
iastore
dup
sipush 200
iconst_2
iastore
dup
sipush 201
iconst_2
iastore
dup
sipush 202
iconst_2
iastore
dup
sipush 203
iconst_2
iastore
dup
sipush 204
iconst_2
iastore
dup
sipush 205
iconst_2
iastore
dup
sipush 206
iconst_2
iastore
dup
sipush 207
iconst_2
iastore
dup
sipush 208
20: .line 398
iconst_2
iastore
dup
sipush 209
iconst_2
iastore
dup
sipush 210
iconst_2
iastore
dup
sipush 211
iconst_2
iastore
dup
sipush 212
iconst_2
iastore
dup
sipush 213
iconst_2
iastore
dup
sipush 214
iconst_2
iastore
dup
sipush 215
iconst_2
iastore
dup
sipush 216
iconst_2
iastore
dup
sipush 217
iconst_2
iastore
dup
sipush 218
iconst_2
iastore
dup
sipush 219
iconst_2
iastore
dup
sipush 220
iconst_2
iastore
dup
sipush 221
iconst_2
iastore
dup
sipush 222
iconst_2
iastore
dup
sipush 223
iconst_2
iastore
dup
sipush 224
21: .line 399
iconst_3
iastore
dup
sipush 225
iconst_3
iastore
dup
sipush 226
iconst_3
iastore
dup
sipush 227
iconst_3
iastore
dup
sipush 228
iconst_3
iastore
dup
sipush 229
iconst_3
iastore
dup
sipush 230
iconst_3
iastore
dup
sipush 231
iconst_3
iastore
dup
sipush 232
iconst_3
iastore
dup
sipush 233
iconst_3
iastore
dup
sipush 234
iconst_3
iastore
dup
sipush 235
iconst_3
iastore
dup
sipush 236
iconst_3
iastore
dup
sipush 237
iconst_3
iastore
dup
sipush 238
iconst_3
iastore
dup
sipush 239
iconst_3
iastore
dup
sipush 240
22: .line 400
iconst_4
iastore
dup
sipush 241
iconst_4
iastore
dup
sipush 242
iconst_4
iastore
dup
sipush 243
iconst_4
iastore
dup
sipush 244
iconst_4
iastore
dup
sipush 245
iconst_4
iastore
dup
sipush 246
iconst_4
iastore
dup
sipush 247
iconst_4
iastore
23: .line 384
putstatic org.apache.lucene.util.UnicodeUtil.utf8CodeLength:[I
24: .line 503
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 // org.apache.lucene.util.UnicodeUtil this
0: .line 108
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.apache.lucene.util.UnicodeUtil this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/util/UnicodeUtil;
public static int UTF16toUTF8(char[], int, int, byte[]);
descriptor: ([CII[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=9, args_size=4
start local 0 // char[] source
start local 1 // int offset
start local 2 // int length
start local 3 // byte[] out
0: .line 134
iconst_0
istore 4 /* upto */
start local 4 // int upto
1: .line 135
iload 1 /* offset */
istore 5 /* i */
start local 5 // int i
2: .line 136
iload 1 /* offset */
iload 2 /* length */
iadd
istore 6 /* end */
start local 6 // int end
3: .line 138
goto 29
4: .line 140
StackMap locals: int int int
StackMap stack:
aload 0 /* source */
iload 5 /* i */
iinc 5 /* i */ 1
caload
istore 7 /* code */
start local 7 // int code
5: .line 142
iload 7 /* code */
sipush 128
if_icmpge 7
6: .line 143
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
iload 7 /* code */
i2b
bastore
goto 29
7: .line 144
StackMap locals: int
StackMap stack:
iload 7 /* code */
sipush 2048
if_icmpge 11
8: .line 145
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
sipush 192
iload 7 /* code */
bipush 6
ishr
ior
i2b
bastore
9: .line 146
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
sipush 128
iload 7 /* code */
bipush 63
iand
ior
i2b
bastore
10: .line 147
goto 29
StackMap locals:
StackMap stack:
11: iload 7 /* code */
ldc 55296
if_icmplt 12
iload 7 /* code */
ldc 57343
if_icmple 16
12: .line 148
StackMap locals:
StackMap stack:
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
sipush 224
iload 7 /* code */
bipush 12
ishr
ior
i2b
bastore
13: .line 149
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
sipush 128
iload 7 /* code */
bipush 6
ishr
bipush 63
iand
ior
i2b
bastore
14: .line 150
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
sipush 128
iload 7 /* code */
bipush 63
iand
ior
i2b
bastore
15: .line 151
goto 29
16: .line 154
StackMap locals:
StackMap stack:
iload 7 /* code */
ldc 56320
if_icmpge 26
iload 5 /* i */
iload 6 /* end */
if_icmpge 26
17: .line 155
aload 0 /* source */
iload 5 /* i */
caload
istore 8 /* utf32 */
start local 8 // int utf32
18: .line 157
iload 8 /* utf32 */
ldc 56320
if_icmplt 26
iload 8 /* utf32 */
ldc 57343
if_icmpgt 26
19: .line 158
iload 7 /* code */
bipush 10
ishl
iload 8 /* utf32 */
iadd
ldc -56613888
iadd
istore 8 /* utf32 */
20: .line 159
iinc 5 /* i */ 1
21: .line 160
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
sipush 240
iload 8 /* utf32 */
bipush 18
ishr
ior
i2b
bastore
22: .line 161
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
sipush 128
iload 8 /* utf32 */
bipush 12
ishr
bipush 63
iand
ior
i2b
bastore
23: .line 162
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
sipush 128
iload 8 /* utf32 */
bipush 6
ishr
bipush 63
iand
ior
i2b
bastore
24: .line 163
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
sipush 128
iload 8 /* utf32 */
bipush 63
iand
ior
i2b
bastore
25: .line 164
goto 29
end local 8 // int utf32
26: .line 169
StackMap locals:
StackMap stack:
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
bipush -17
bastore
27: .line 170
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
bipush -65
bastore
28: .line 171
aload 3 /* out */
iload 4 /* upto */
iinc 4 /* upto */ 1
bipush -67
bastore
end local 7 // int code
29: .line 138
StackMap locals:
StackMap stack:
iload 5 /* i */
iload 6 /* end */
if_icmplt 4
30: .line 175
iload 4 /* upto */
ireturn
end local 6 // int end
end local 5 // int i
end local 4 // int upto
end local 3 // byte[] out
end local 2 // int length
end local 1 // int offset
end local 0 // char[] source
LocalVariableTable:
Start End Slot Name Signature
0 31 0 source [C
0 31 1 offset I
0 31 2 length I
0 31 3 out [B
1 31 4 upto I
2 31 5 i I
3 31 6 end I
5 29 7 code I
18 26 8 utf32 I
MethodParameters:
Name Flags
source final
offset final
length final
out
public static int UTF16toUTF8(java.lang.CharSequence, int, int, byte[]);
descriptor: (Ljava/lang/CharSequence;II[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 // java.lang.CharSequence s
start local 1 // int offset
start local 2 // int length
start local 3 // byte[] out
0: .line 183
aload 0 /* s */
iload 1 /* offset */
iload 2 /* length */
aload 3 /* out */
iconst_0
invokestatic org.apache.lucene.util.UnicodeUtil.UTF16toUTF8:(Ljava/lang/CharSequence;II[BI)I
ireturn
end local 3 // byte[] out
end local 2 // int length
end local 1 // int offset
end local 0 // java.lang.CharSequence s
LocalVariableTable:
Start End Slot Name Signature
0 1 0 s Ljava/lang/CharSequence;
0 1 1 offset I
0 1 2 length I
0 1 3 out [B
MethodParameters:
Name Flags
s final
offset final
length final
out
public static int UTF16toUTF8(java.lang.CharSequence, int, int, byte[], int);
descriptor: (Ljava/lang/CharSequence;II[BI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=10, args_size=5
start local 0 // java.lang.CharSequence s
start local 1 // int offset
start local 2 // int length
start local 3 // byte[] out
start local 4 // int outOffset
0: .line 194
iload 1 /* offset */
iload 2 /* length */
iadd
istore 5 /* end */
start local 5 // int end
1: .line 196
iload 4 /* outOffset */
istore 6 /* upto */
start local 6 // int upto
2: .line 197
iload 1 /* offset */
istore 7 /* i */
start local 7 // int i
3: goto 30
4: .line 198
StackMap locals: int int int
StackMap stack:
aload 0 /* s */
iload 7 /* i */
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 8 /* code */
start local 8 // int code
5: .line 200
iload 8 /* code */
sipush 128
if_icmpge 7
6: .line 201
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
iload 8 /* code */
i2b
bastore
goto 29
7: .line 202
StackMap locals: int
StackMap stack:
iload 8 /* code */
sipush 2048
if_icmpge 11
8: .line 203
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
sipush 192
iload 8 /* code */
bipush 6
ishr
ior
i2b
bastore
9: .line 204
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
sipush 128
iload 8 /* code */
bipush 63
iand
ior
i2b
bastore
10: .line 205
goto 29
StackMap locals:
StackMap stack:
11: iload 8 /* code */
ldc 55296
if_icmplt 12
iload 8 /* code */
ldc 57343
if_icmple 16
12: .line 206
StackMap locals:
StackMap stack:
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
sipush 224
iload 8 /* code */
bipush 12
ishr
ior
i2b
bastore
13: .line 207
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
sipush 128
iload 8 /* code */
bipush 6
ishr
bipush 63
iand
ior
i2b
bastore
14: .line 208
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
sipush 128
iload 8 /* code */
bipush 63
iand
ior
i2b
bastore
15: .line 209
goto 29
16: .line 212
StackMap locals:
StackMap stack:
iload 8 /* code */
ldc 56320
if_icmpge 26
iload 7 /* i */
iload 5 /* end */
iconst_1
isub
if_icmpge 26
17: .line 213
aload 0 /* s */
iload 7 /* i */
iconst_1
iadd
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 9 /* utf32 */
start local 9 // int utf32
18: .line 215
iload 9 /* utf32 */
ldc 56320
if_icmplt 26
iload 9 /* utf32 */
ldc 57343
if_icmpgt 26
19: .line 216
iload 8 /* code */
bipush 10
ishl
iload 9 /* utf32 */
iadd
ldc -56613888
iadd
istore 9 /* utf32 */
20: .line 217
iinc 7 /* i */ 1
21: .line 218
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
sipush 240
iload 9 /* utf32 */
bipush 18
ishr
ior
i2b
bastore
22: .line 219
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
sipush 128
iload 9 /* utf32 */
bipush 12
ishr
bipush 63
iand
ior
i2b
bastore
23: .line 220
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
sipush 128
iload 9 /* utf32 */
bipush 6
ishr
bipush 63
iand
ior
i2b
bastore
24: .line 221
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
sipush 128
iload 9 /* utf32 */
bipush 63
iand
ior
i2b
bastore
25: .line 222
goto 29
end local 9 // int utf32
26: .line 227
StackMap locals:
StackMap stack:
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
bipush -17
bastore
27: .line 228
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
bipush -65
bastore
28: .line 229
aload 3 /* out */
iload 6 /* upto */
iinc 6 /* upto */ 1
bipush -67
bastore
end local 8 // int code
29: .line 197
StackMap locals:
StackMap stack:
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
30: iload 7 /* i */
iload 5 /* end */
if_icmplt 4
end local 7 // int i
31: .line 233
iload 6 /* upto */
ireturn
end local 6 // int upto
end local 5 // int end
end local 4 // int outOffset
end local 3 // byte[] out
end local 2 // int length
end local 1 // int offset
end local 0 // java.lang.CharSequence s
LocalVariableTable:
Start End Slot Name Signature
0 32 0 s Ljava/lang/CharSequence;
0 32 1 offset I
0 32 2 length I
0 32 3 out [B
0 32 4 outOffset I
1 32 5 end I
2 32 6 upto I
3 31 7 i I
5 29 8 code I
18 26 9 utf32 I
MethodParameters:
Name Flags
s final
offset final
length final
out
outOffset
public static int calcUTF16toUTF8Length(java.lang.CharSequence, int, int);
descriptor: (Ljava/lang/CharSequence;II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=8, args_size=3
start local 0 // java.lang.CharSequence s
start local 1 // int offset
start local 2 // int len
0: .line 242
iload 1 /* offset */
iload 2 /* len */
iadd
istore 3 /* end */
start local 3 // int end
1: .line 244
iconst_0
istore 4 /* res */
start local 4 // int res
2: .line 245
iload 1 /* offset */
istore 5 /* i */
start local 5 // int i
3: goto 21
4: .line 246
StackMap locals: int int int
StackMap stack:
aload 0 /* s */
iload 5 /* i */
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 6 /* code */
start local 6 // int code
5: .line 248
iload 6 /* code */
sipush 128
if_icmpge 7
6: .line 249
iinc 4 /* res */ 1
goto 20
7: .line 250
StackMap locals: int
StackMap stack:
iload 6 /* code */
sipush 2048
if_icmpge 10
8: .line 251
iinc 4 /* res */ 2
9: .line 252
goto 20
StackMap locals:
StackMap stack:
10: iload 6 /* code */
ldc 55296
if_icmplt 11
iload 6 /* code */
ldc 57343
if_icmple 13
11: .line 253
StackMap locals:
StackMap stack:
iinc 4 /* res */ 3
12: .line 254
goto 20
13: .line 257
StackMap locals:
StackMap stack:
iload 6 /* code */
ldc 56320
if_icmpge 19
iload 5 /* i */
iload 3 /* end */
iconst_1
isub
if_icmpge 19
14: .line 258
aload 0 /* s */
iload 5 /* i */
iconst_1
iadd
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 7 /* utf32 */
start local 7 // int utf32
15: .line 260
iload 7 /* utf32 */
ldc 56320
if_icmplt 19
iload 7 /* utf32 */
ldc 57343
if_icmpgt 19
16: .line 261
iinc 5 /* i */ 1
17: .line 262
iinc 4 /* res */ 4
18: .line 263
goto 20
end local 7 // int utf32
19: .line 266
StackMap locals:
StackMap stack:
iinc 4 /* res */ 3
end local 6 // int code
20: .line 245
StackMap locals:
StackMap stack:
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
21: iload 5 /* i */
iload 3 /* end */
if_icmplt 4
end local 5 // int i
22: .line 270
iload 4 /* res */
ireturn
end local 4 // int res
end local 3 // int end
end local 2 // int len
end local 1 // int offset
end local 0 // java.lang.CharSequence s
LocalVariableTable:
Start End Slot Name Signature
0 23 0 s Ljava/lang/CharSequence;
0 23 1 offset I
0 23 2 len I
1 23 3 end I
2 23 4 res I
3 22 5 i I
5 20 6 code I
15 19 7 utf32 I
MethodParameters:
Name Flags
s final
offset final
len final
public static boolean validUTF16String(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=1
start local 0 // java.lang.CharSequence s
0: .line 329
aload 0 /* s */
invokeinterface java.lang.CharSequence.length:()I
istore 1 /* size */
start local 1 // int size
1: .line 330
iconst_0
istore 2 /* i */
start local 2 // int i
2: goto 14
3: .line 331
StackMap locals: int int
StackMap stack:
aload 0 /* s */
iload 2 /* i */
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 3 /* ch */
start local 3 // char ch
4: .line 332
iload 3 /* ch */
ldc 55296
if_icmplt 11
iload 3 /* ch */
ldc 56319
if_icmpgt 11
5: .line 333
iload 2 /* i */
iload 1 /* size */
iconst_1
isub
if_icmpge 10
6: .line 334
iinc 2 /* i */ 1
7: .line 335
aload 0 /* s */
iload 2 /* i */
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 4 /* nextCH */
start local 4 // char nextCH
8: .line 336
iload 4 /* nextCH */
ldc 56320
if_icmplt 9
iload 4 /* nextCH */
ldc 57343
if_icmple 13
9: .line 340
StackMap locals: int int
StackMap stack:
iconst_0
ireturn
end local 4 // char nextCH
10: .line 343
StackMap locals:
StackMap stack:
iconst_0
ireturn
11: .line 344
StackMap locals:
StackMap stack:
iload 3 /* ch */
ldc 56320
if_icmplt 13
iload 3 /* ch */
ldc 57343
if_icmpgt 13
12: .line 346
iconst_0
ireturn
end local 3 // char ch
13: .line 330
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
14: iload 2 /* i */
iload 1 /* size */
if_icmplt 3
end local 2 // int i
15: .line 349
iconst_1
ireturn
end local 1 // int size
end local 0 // java.lang.CharSequence s
LocalVariableTable:
Start End Slot Name Signature
0 16 0 s Ljava/lang/CharSequence;
1 16 1 size I
2 15 2 i I
4 13 3 ch C
8 10 4 nextCH C
MethodParameters:
Name Flags
s
public static boolean validUTF16String(char[], int);
descriptor: ([CI)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 // char[] s
start local 1 // int size
0: .line 353
iconst_0
istore 2 /* i */
start local 2 // int i
1: goto 13
2: .line 354
StackMap locals: int
StackMap stack:
aload 0 /* s */
iload 2 /* i */
caload
istore 3 /* ch */
start local 3 // char ch
3: .line 355
iload 3 /* ch */
ldc 55296
if_icmplt 10
iload 3 /* ch */
ldc 56319
if_icmpgt 10
4: .line 356
iload 2 /* i */
iload 1 /* size */
iconst_1
isub
if_icmpge 9
5: .line 357
iinc 2 /* i */ 1
6: .line 358
aload 0 /* s */
iload 2 /* i */
caload
istore 4 /* nextCH */
start local 4 // char nextCH
7: .line 359
iload 4 /* nextCH */
ldc 56320
if_icmplt 8
iload 4 /* nextCH */
ldc 57343
if_icmple 12
8: .line 362
StackMap locals: int int
StackMap stack:
iconst_0
ireturn
end local 4 // char nextCH
9: .line 364
StackMap locals:
StackMap stack:
iconst_0
ireturn
10: .line 365
StackMap locals:
StackMap stack:
iload 3 /* ch */
ldc 56320
if_icmplt 12
iload 3 /* ch */
ldc 57343
if_icmpgt 12
11: .line 367
iconst_0
ireturn
end local 3 // char ch
12: .line 353
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
13: iload 2 /* i */
iload 1 /* size */
if_icmplt 2
end local 2 // int i
14: .line 370
iconst_1
ireturn
end local 1 // int size
end local 0 // char[] s
LocalVariableTable:
Start End Slot Name Signature
0 15 0 s [C
0 15 1 size I
1 14 2 i I
3 12 3 ch C
7 9 4 nextCH C
MethodParameters:
Name Flags
s
size
public static int codePointCount(org.apache.lucene.util.BytesRef);
descriptor: (Lorg/apache/lucene/util/BytesRef;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=6, args_size=1
start local 0 // org.apache.lucene.util.BytesRef utf8
0: .line 416
aload 0 /* utf8 */
getfield org.apache.lucene.util.BytesRef.offset:I
istore 1 /* pos */
start local 1 // int pos
1: .line 417
iload 1 /* pos */
aload 0 /* utf8 */
getfield org.apache.lucene.util.BytesRef.length:I
iadd
istore 2 /* limit */
start local 2 // int limit
2: .line 418
aload 0 /* utf8 */
getfield org.apache.lucene.util.BytesRef.bytes:[B
astore 3 /* bytes */
start local 3 // byte[] bytes
3: .line 420
iconst_0
istore 4 /* codePointCount */
start local 4 // int codePointCount
4: .line 421
goto 13
5: .line 422
StackMap locals: org.apache.lucene.util.BytesRef int int byte[] int
StackMap stack:
aload 3 /* bytes */
iload 1 /* pos */
baload
sipush 255
iand
istore 5 /* v */
start local 5 // int v
6: .line 423
iload 5 /* v */
sipush 128
if_icmpge 7
iinc 1 /* pos */ 1
goto 12
7: .line 424
StackMap locals: int
StackMap stack:
iload 5 /* v */
sipush 192
if_icmplt 11
8: .line 425
iload 5 /* v */
sipush 224
if_icmpge 9
iinc 1 /* pos */ 2
goto 12
9: .line 426
StackMap locals:
StackMap stack:
iload 5 /* v */
sipush 240
if_icmpge 10
iinc 1 /* pos */ 3
goto 12
10: .line 427
StackMap locals:
StackMap stack:
iload 5 /* v */
sipush 248
if_icmpge 11
iinc 1 /* pos */ 4
goto 12
11: .line 432
StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
end local 5 // int v
12: .line 421
StackMap locals:
StackMap stack:
iinc 4 /* codePointCount */ 1
StackMap locals:
StackMap stack:
13: iload 1 /* pos */
iload 2 /* limit */
if_icmplt 5
14: .line 436
iload 1 /* pos */
iload 2 /* limit */
if_icmple 15
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
15: .line 438
StackMap locals:
StackMap stack:
iload 4 /* codePointCount */
ireturn
end local 4 // int codePointCount
end local 3 // byte[] bytes
end local 2 // int limit
end local 1 // int pos
end local 0 // org.apache.lucene.util.BytesRef utf8
LocalVariableTable:
Start End Slot Name Signature
0 16 0 utf8 Lorg/apache/lucene/util/BytesRef;
1 16 1 pos I
2 16 2 limit I
3 16 3 bytes [B
4 16 4 codePointCount I
6 12 5 v I
MethodParameters:
Name Flags
utf8
public static int UTF8toUTF32(org.apache.lucene.util.BytesRef, int[]);
descriptor: (Lorg/apache/lucene/util/BytesRef;[I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=9, args_size=2
start local 0 // org.apache.lucene.util.BytesRef utf8
start local 1 // int[] ints
0: .line 453
iconst_0
istore 2 /* utf32Count */
start local 2 // int utf32Count
1: .line 454
aload 0 /* utf8 */
getfield org.apache.lucene.util.BytesRef.offset:I
istore 3 /* utf8Upto */
start local 3 // int utf8Upto
2: .line 455
aload 0 /* utf8 */
getfield org.apache.lucene.util.BytesRef.bytes:[B
astore 4 /* bytes */
start local 4 // byte[] bytes
3: .line 456
aload 0 /* utf8 */
getfield org.apache.lucene.util.BytesRef.offset:I
aload 0 /* utf8 */
getfield org.apache.lucene.util.BytesRef.length:I
iadd
istore 5 /* utf8Limit */
start local 5 // int utf8Limit
4: .line 457
goto 22
5: .line 458
StackMap locals: org.apache.lucene.util.BytesRef int[] int int byte[] int
StackMap stack:
getstatic org.apache.lucene.util.UnicodeUtil.utf8CodeLength:[I
aload 4 /* bytes */
iload 3 /* utf8Upto */
baload
sipush 255
iand
iaload
istore 6 /* numBytes */
start local 6 // int numBytes
6: .line 459
iconst_0
istore 7 /* v */
start local 7 // int v
7: .line 460
iload 6 /* numBytes */
tableswitch { // 1 - 4
1: 8
2: 10
3: 12
4: 14
default: 16
}
8: .line 462
StackMap locals: int int
StackMap stack:
aload 1 /* ints */
iload 2 /* utf32Count */
iinc 2 /* utf32Count */ 1
aload 4 /* bytes */
iload 3 /* utf8Upto */
iinc 3 /* utf8Upto */ 1
baload
iastore
9: .line 463
goto 22
10: .line 466
StackMap locals:
StackMap stack:
aload 4 /* bytes */
iload 3 /* utf8Upto */
iinc 3 /* utf8Upto */ 1
baload
bipush 31
iand
istore 7 /* v */
11: .line 467
goto 17
12: .line 470
StackMap locals:
StackMap stack:
aload 4 /* bytes */
iload 3 /* utf8Upto */
iinc 3 /* utf8Upto */ 1
baload
bipush 15
iand
istore 7 /* v */
13: .line 471
goto 17
14: .line 474
StackMap locals:
StackMap stack:
aload 4 /* bytes */
iload 3 /* utf8Upto */
iinc 3 /* utf8Upto */ 1
baload
bipush 7
iand
istore 7 /* v */
15: .line 475
goto 17
16: .line 477
StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "invalid utf8"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
17: .line 481
StackMap locals:
StackMap stack:
iload 3 /* utf8Upto */
iload 6 /* numBytes */
iadd
iconst_1
isub
istore 8 /* limit */
start local 8 // int limit
18: .line 482
goto 20
19: .line 483
StackMap locals: int
StackMap stack:
iload 7 /* v */
bipush 6
ishl
aload 4 /* bytes */
iload 3 /* utf8Upto */
iinc 3 /* utf8Upto */ 1
baload
bipush 63
iand
ior
istore 7 /* v */
20: .line 482
StackMap locals:
StackMap stack:
iload 3 /* utf8Upto */
iload 8 /* limit */
if_icmplt 19
21: .line 485
aload 1 /* ints */
iload 2 /* utf32Count */
iinc 2 /* utf32Count */ 1
iload 7 /* v */
iastore
end local 8 // int limit
end local 7 // int v
end local 6 // int numBytes
22: .line 457
StackMap locals:
StackMap stack:
iload 3 /* utf8Upto */
iload 5 /* utf8Limit */
if_icmplt 5
23: .line 488
iload 2 /* utf32Count */
ireturn
end local 5 // int utf8Limit
end local 4 // byte[] bytes
end local 3 // int utf8Upto
end local 2 // int utf32Count
end local 1 // int[] ints
end local 0 // org.apache.lucene.util.BytesRef utf8
LocalVariableTable:
Start End Slot Name Signature
0 24 0 utf8 Lorg/apache/lucene/util/BytesRef;
0 24 1 ints [I
1 24 2 utf32Count I
2 24 3 utf8Upto I
3 24 4 bytes [B
4 24 5 utf8Limit I
6 22 6 numBytes I
7 22 7 v I
18 22 8 limit I
MethodParameters:
Name Flags
utf8 final
ints final
public static java.lang.String newString(int[], int, int);
descriptor: ([III)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=10, args_size=3
start local 0 // int[] codePoints
start local 1 // int offset
start local 2 // int count
0: .line 516
iload 2 /* count */
ifge 2
1: .line 517
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
2: .line 519
StackMap locals:
StackMap stack:
iload 2 /* count */
newarray 5
astore 3 /* chars */
start local 3 // char[] chars
3: .line 520
iconst_0
istore 4 /* w */
start local 4 // int w
4: .line 521
iload 1 /* offset */
istore 5 /* r */
start local 5 // int r
5: iload 1 /* offset */
iload 2 /* count */
iadd
istore 6 /* e */
start local 6 // int e
6: goto 27
7: .line 522
StackMap locals: int[] int int char[] int int int
StackMap stack:
aload 0 /* codePoints */
iload 5 /* r */
iaload
istore 7 /* cp */
start local 7 // int cp
8: .line 523
iload 7 /* cp */
iflt 9
iload 7 /* cp */
ldc 1114111
if_icmple 10
9: .line 524
StackMap locals: int
StackMap stack:
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
10: .line 528
StackMap locals:
StackMap stack:
iload 7 /* cp */
ldc 65536
if_icmpge 14
11: .line 529
aload 3 /* chars */
iload 4 /* w */
iload 7 /* cp */
i2c
castore
12: .line 530
iinc 4 /* w */ 1
13: .line 531
goto 26
14: .line 532
StackMap locals:
StackMap stack:
aload 3 /* chars */
iload 4 /* w */
ldc 55232
iload 7 /* cp */
bipush 10
ishr
iadd
i2c
castore
15: .line 533
aload 3 /* chars */
iload 4 /* w */
iconst_1
iadd
ldc 56320
iload 7 /* cp */
sipush 1023
iand
iadd
i2c
castore
16: .line 534
iinc 4 /* w */ 2
17: .line 536
goto 26
18: .line 537
StackMap locals:
StackMap stack: java.lang.IndexOutOfBoundsException
pop
19: .line 538
aload 0 /* codePoints */
arraylength
i2d
iload 4 /* w */
iconst_2
iadd
i2d
dmul
20: .line 539
iload 5 /* r */
iload 1 /* offset */
isub
iconst_1
iadd
i2d
21: .line 538
ddiv
invokestatic java.lang.Math.ceil:(D)D
d2i
istore 8 /* newlen */
start local 8 // int newlen
22: .line 540
iload 8 /* newlen */
newarray 5
astore 9 /* temp */
start local 9 // char[] temp
23: .line 541
aload 3 /* chars */
iconst_0
aload 9 /* temp */
iconst_0
iload 4 /* w */
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
24: .line 542
aload 9 /* temp */
astore 3 /* chars */
end local 9 // char[] temp
end local 8 // int newlen
25: .line 526
goto 10
end local 7 // int cp
26: .line 521
StackMap locals:
StackMap stack:
iinc 5 /* r */ 1
StackMap locals:
StackMap stack:
27: iload 5 /* r */
iload 6 /* e */
if_icmplt 7
end local 6 // int e
end local 5 // int r
28: .line 546
new java.lang.String
dup
aload 3 /* chars */
iconst_0
iload 4 /* w */
invokespecial java.lang.String.<init>:([CII)V
areturn
end local 4 // int w
end local 3 // char[] chars
end local 2 // int count
end local 1 // int offset
end local 0 // int[] codePoints
LocalVariableTable:
Start End Slot Name Signature
0 29 0 codePoints [I
0 29 1 offset I
0 29 2 count I
3 29 3 chars [C
4 29 4 w I
5 28 5 r I
6 28 6 e I
8 26 7 cp I
22 25 8 newlen I
23 25 9 temp [C
Exception table:
from to target type
10 17 18 Class java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
codePoints
offset
count
public static java.lang.String toHexString(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 // java.lang.String s
0: .line 551
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1 /* sb */
start local 1 // java.lang.StringBuilder sb
1: .line 552
iconst_0
istore 2 /* i */
start local 2 // int i
2: goto 22
3: .line 553
StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 0 /* s */
iload 2 /* i */
invokevirtual java.lang.String.charAt:(I)C
istore 3 /* ch */
start local 3 // char ch
4: .line 554
iload 2 /* i */
ifle 6
5: .line 555
aload 1 /* sb */
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
6: .line 557
StackMap locals: int
StackMap stack:
iload 3 /* ch */
sipush 128
if_icmpge 9
7: .line 558
aload 1 /* sb */
iload 3 /* ch */
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
8: .line 559
goto 21
9: .line 560
StackMap locals:
StackMap stack:
iload 3 /* ch */
ldc 55296
if_icmplt 12
iload 3 /* ch */
ldc 56319
if_icmpgt 12
10: .line 561
aload 1 /* sb */
ldc "H:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
11: .line 562
goto 20
StackMap locals:
StackMap stack:
12: iload 3 /* ch */
ldc 56320
if_icmplt 15
iload 3 /* ch */
ldc 57343
if_icmpgt 15
13: .line 563
aload 1 /* sb */
ldc "L:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
14: .line 564
goto 20
StackMap locals:
StackMap stack:
15: iload 3 /* ch */
ldc 57343
if_icmple 20
16: .line 565
iload 3 /* ch */
ldc 65535
if_icmpne 19
17: .line 566
aload 1 /* sb */
ldc "F:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
18: .line 567
goto 20
19: .line 568
StackMap locals:
StackMap stack:
aload 1 /* sb */
ldc "E:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
20: .line 572
StackMap locals:
StackMap stack:
aload 1 /* sb */
ldc "0x"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3 /* ch */
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 3 // char ch
21: .line 552
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
22: iload 2 /* i */
aload 0 /* s */
invokevirtual java.lang.String.length:()I
if_icmplt 3
end local 2 // int i
23: .line 575
aload 1 /* sb */
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 // java.lang.StringBuilder sb
end local 0 // java.lang.String s
LocalVariableTable:
Start End Slot Name Signature
0 24 0 s Ljava/lang/String;
1 24 1 sb Ljava/lang/StringBuilder;
2 23 2 i I
4 21 3 ch C
MethodParameters:
Name Flags
s
public static int UTF8toUTF16(byte[], int, int, char[]);
descriptor: ([BII[C)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=9, args_size=4
start local 0 // byte[] utf8
start local 1 // int offset
start local 2 // int length
start local 3 // char[] out
0: .line 588
iconst_0
istore 4 /* out_offset */
start local 4 // int out_offset
1: .line 589
iload 1 /* offset */
iload 2 /* length */
iadd
istore 5 /* limit */
start local 5 // int limit
2: .line 590
goto 24
3: .line 591
StackMap locals: int int
StackMap stack:
aload 0 /* utf8 */
iload 1 /* offset */
iinc 1 /* offset */ 1
baload
sipush 255
iand
istore 6 /* b */
start local 6 // int b
4: .line 592
iload 6 /* b */
sipush 192
if_icmpge 8
5: .line 593
getstatic org.apache.lucene.util.UnicodeUtil.$assertionsDisabled:Z
ifne 6
iload 6 /* b */
sipush 128
if_icmplt 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: .line 594
StackMap locals: int
StackMap stack:
aload 3 /* out */
iload 4 /* out_offset */
iinc 4 /* out_offset */ 1
iload 6 /* b */
i2c
castore
7: .line 595
goto 24
StackMap locals:
StackMap stack:
8: iload 6 /* b */
sipush 224
if_icmpge 11
9: .line 596
aload 3 /* out */
iload 4 /* out_offset */
iinc 4 /* out_offset */ 1
iload 6 /* b */
bipush 31
iand
bipush 6
ishl
aload 0 /* utf8 */
iload 1 /* offset */
iinc 1 /* offset */ 1
baload
bipush 63
iand
iadd
i2c
castore
10: .line 597
goto 24
StackMap locals:
StackMap stack:
11: iload 6 /* b */
sipush 240
if_icmpge 15
12: .line 598
aload 3 /* out */
iload 4 /* out_offset */
iinc 4 /* out_offset */ 1
iload 6 /* b */
bipush 15
iand
bipush 12
ishl
aload 0 /* utf8 */
iload 1 /* offset */
baload
bipush 63
iand
bipush 6
ishl
iadd
aload 0 /* utf8 */
iload 1 /* offset */
iconst_1
iadd
baload
bipush 63
iand
iadd
i2c
castore
13: .line 599
iinc 1 /* offset */ 2
14: .line 600
goto 24
15: .line 601
StackMap locals:
StackMap stack:
getstatic org.apache.lucene.util.UnicodeUtil.$assertionsDisabled:Z
ifne 16
iload 6 /* b */
sipush 248
if_icmplt 16
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "b = 0x"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 6 /* b */
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.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
16: .line 602
StackMap locals:
StackMap stack:
iload 6 /* b */
bipush 7
iand
bipush 18
ishl
aload 0 /* utf8 */
iload 1 /* offset */
baload
bipush 63
iand
bipush 12
ishl
iadd
aload 0 /* utf8 */
iload 1 /* offset */
iconst_1
iadd
baload
bipush 63
iand
bipush 6
ishl
iadd
aload 0 /* utf8 */
iload 1 /* offset */
iconst_2
iadd
baload
bipush 63
iand
iadd
istore 7 /* ch */
start local 7 // int ch
17: .line 603
iinc 1 /* offset */ 3
18: .line 604
iload 7 /* ch */
i2l
ldc 65535
lcmp
ifge 21
19: .line 605
aload 3 /* out */
iload 4 /* out_offset */
iinc 4 /* out_offset */ 1
iload 7 /* ch */
i2c
castore
20: .line 606
goto 24
21: .line 607
StackMap locals: int
StackMap stack:
iload 7 /* ch */
ldc 65536
isub
istore 8 /* chHalf */
start local 8 // int chHalf
22: .line 608
aload 3 /* out */
iload 4 /* out_offset */
iinc 4 /* out_offset */ 1
iload 8 /* chHalf */
bipush 10
ishr
ldc 55296
iadd
i2c
castore
23: .line 609
aload 3 /* out */
iload 4 /* out_offset */
iinc 4 /* out_offset */ 1
iload 8 /* chHalf */
i2l
ldc 1023
land
ldc 56320
ladd
l2i
i2c
castore
end local 8 // int chHalf
end local 7 // int ch
end local 6 // int b
24: .line 590
StackMap locals:
StackMap stack:
iload 1 /* offset */
iload 5 /* limit */
if_icmplt 3
25: .line 613
iload 4 /* out_offset */
ireturn
end local 5 // int limit
end local 4 // int out_offset
end local 3 // char[] out
end local 2 // int length
end local 1 // int offset
end local 0 // byte[] utf8
LocalVariableTable:
Start End Slot Name Signature
0 26 0 utf8 [B
0 26 1 offset I
0 26 2 length I
0 26 3 out [C
1 26 4 out_offset I
2 26 5 limit I
4 24 6 b I
17 24 7 ch I
22 24 8 chHalf I
MethodParameters:
Name Flags
utf8
offset
length
out
public static int maxUTF8Length(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 // int utf16Length
0: .line 618
iload 0 /* utf16Length */
iconst_3
invokestatic java.lang.Math.multiplyExact:(II)I
ireturn
end local 0 // int utf16Length
LocalVariableTable:
Start End Slot Name Signature
0 1 0 utf16Length I
MethodParameters:
Name Flags
utf16Length
public static int UTF8toUTF16(org.apache.lucene.util.BytesRef, char[]);
descriptor: (Lorg/apache/lucene/util/BytesRef;[C)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 // org.apache.lucene.util.BytesRef bytesRef
start local 1 // char[] chars
0: .line 626
aload 0 /* bytesRef */
getfield org.apache.lucene.util.BytesRef.bytes:[B
aload 0 /* bytesRef */
getfield org.apache.lucene.util.BytesRef.offset:I
aload 0 /* bytesRef */
getfield org.apache.lucene.util.BytesRef.length:I
aload 1 /* chars */
invokestatic org.apache.lucene.util.UnicodeUtil.UTF8toUTF16:([BII[C)I
ireturn
end local 1 // char[] chars
end local 0 // org.apache.lucene.util.BytesRef bytesRef
LocalVariableTable:
Start End Slot Name Signature
0 1 0 bytesRef Lorg/apache/lucene/util/BytesRef;
0 1 1 chars [C
MethodParameters:
Name Flags
bytesRef
chars
}
SourceFile: "UnicodeUtil.java"