public class org.postgresql.core.EncodingPredictor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.postgresql.core.EncodingPredictor
super_class: java.lang.Object
{
private static final org.postgresql.core.EncodingPredictor$Translation[] FATAL_TRANSLATIONS;
descriptor: [Lorg/postgresql/core/EncodingPredictor$Translation;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=12, locals=0, args_size=0
0: bipush 6
anewarray org.postgresql.core.EncodingPredictor$Translation
dup
iconst_0
1: new org.postgresql.core.EncodingPredictor$Translation
dup
ldc "\u0412\u0410\u0416\u041D\u041E"
aconst_null
ldc "ru"
iconst_3
anewarray java.lang.String
dup
iconst_0
ldc "WIN"
aastore
dup
iconst_1
ldc "ALT"
aastore
dup
iconst_2
ldc "KOI8"
aastore
invokespecial org.postgresql.core.EncodingPredictor$Translation.<init>:(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
aastore
dup
iconst_1
2: new org.postgresql.core.EncodingPredictor$Translation
dup
ldc "\u81F4\u547D\u9519\u8BEF"
aconst_null
ldc "zh_CN"
iconst_3
anewarray java.lang.String
dup
iconst_0
ldc "EUC_CN"
aastore
dup
iconst_1
ldc "GBK"
aastore
dup
iconst_2
ldc "BIG5"
aastore
invokespecial org.postgresql.core.EncodingPredictor$Translation.<init>:(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
aastore
dup
iconst_2
3: new org.postgresql.core.EncodingPredictor$Translation
dup
ldc "KATASTROFALNY"
aconst_null
ldc "pl"
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "LATIN2"
aastore
invokespecial org.postgresql.core.EncodingPredictor$Translation.<init>:(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
aastore
dup
iconst_3
4: new org.postgresql.core.EncodingPredictor$Translation
dup
ldc "FATALE"
aconst_null
ldc "it"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "LATIN1"
aastore
dup
iconst_1
ldc "LATIN9"
aastore
invokespecial org.postgresql.core.EncodingPredictor$Translation.<init>:(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
aastore
dup
iconst_4
5: new org.postgresql.core.EncodingPredictor$Translation
dup
ldc "FATAL"
iconst_3
anewarray java.lang.String
dup
iconst_0
ldc "\u306F\u5B58\u5728\u3057\u307E\u305B\u3093"
aastore
dup
iconst_1
6: ldc "\u30ED\u30FC\u30EB"
aastore
dup
iconst_2
ldc "\u30E6\u30FC\u30B6"
aastore
ldc "ja"
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "EUC_JP"
aastore
dup
iconst_1
ldc "SJIS"
7: aastore
invokespecial org.postgresql.core.EncodingPredictor$Translation.<init>:(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
aastore
dup
iconst_5
8: new org.postgresql.core.EncodingPredictor$Translation
dup
aconst_null
aconst_null
ldc "fr/de/es/pt_BR"
bipush 6
anewarray java.lang.String
dup
iconst_0
ldc "LATIN1"
aastore
dup
iconst_1
ldc "LATIN3"
aastore
dup
iconst_2
ldc "LATIN4"
aastore
dup
iconst_3
ldc "LATIN5"
aastore
dup
iconst_4
9: ldc "LATIN7"
aastore
dup
iconst_5
ldc "LATIN9"
10: aastore
invokespecial org.postgresql.core.EncodingPredictor$Translation.<init>:(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
aastore
11: putstatic org.postgresql.core.EncodingPredictor.FATAL_TRANSLATIONS:[Lorg/postgresql/core/EncodingPredictor$Translation;
12: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/core/EncodingPredictor;
public static org.postgresql.core.EncodingPredictor$DecodeResult decode(byte[], int, int);
descriptor: ([BII)Lorg/postgresql/core/EncodingPredictor$DecodeResult;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=19, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.postgresql.core.Encoding.defaultEncoding:()Lorg/postgresql/core/Encoding;
astore 3
start local 3 1: getstatic org.postgresql.core.EncodingPredictor.FATAL_TRANSLATIONS:[Lorg/postgresql/core/EncodingPredictor$Translation;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 41
StackMap locals: byte[] int int org.postgresql.core.Encoding top int int org.postgresql.core.EncodingPredictor$Translation[]
StackMap stack:
2: aload 7
iload 5
aaload
astore 4
start local 4 3: aload 4
getfield org.postgresql.core.EncodingPredictor$Translation.encodings:[Ljava/lang/String;
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 39
StackMap locals: byte[] int int org.postgresql.core.Encoding org.postgresql.core.EncodingPredictor$Translation int int org.postgresql.core.EncodingPredictor$Translation[] top int int java.lang.String[]
StackMap stack:
4: aload 11
iload 9
aaload
astore 8
start local 8 5: aload 8
invokestatic org.postgresql.core.Encoding.getDatabaseEncoding:(Ljava/lang/String;)Lorg/postgresql/core/Encoding;
astore 12
start local 12 6: aload 12
aload 3
if_acmpne 8
7: goto 38
8: StackMap locals: byte[] int int org.postgresql.core.Encoding org.postgresql.core.EncodingPredictor$Translation int int org.postgresql.core.EncodingPredictor$Translation[] java.lang.String int int java.lang.String[] org.postgresql.core.Encoding
StackMap stack:
aload 4
getfield org.postgresql.core.EncodingPredictor$Translation.fatalText:Ljava/lang/String;
ifnull 19
9: aload 12
aload 4
getfield org.postgresql.core.EncodingPredictor$Translation.fatalText:Ljava/lang/String;
invokevirtual org.postgresql.core.Encoding.encode:(Ljava/lang/String;)[B
astore 14
start local 14 10: aload 14
arraylength
iconst_2
iadd
newarray 8
astore 13
start local 13 11: aload 13
iconst_0
bipush 83
bastore
12: aload 13
aload 13
arraylength
iconst_1
isub
iconst_0
bastore
13: aload 14
iconst_0
aload 13
iconst_1
aload 14
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
end local 14 14: goto 17
end local 13 StackMap locals:
StackMap stack: java.io.IOException
15: pop
16: goto 38
start local 13 17: StackMap locals: byte[]
StackMap stack:
aload 0
iload 1
iload 2
aload 13
iconst_0
aload 13
arraylength
invokestatic org.postgresql.core.EncodingPredictor.arrayContains:([BII[BII)Z
ifne 19
18: goto 38
end local 13 19: StackMap locals:
StackMap stack:
aload 4
getfield org.postgresql.core.EncodingPredictor$Translation.texts:[Ljava/lang/String;
ifnull 32
20: iconst_0
istore 13
start local 13 21: aload 4
getfield org.postgresql.core.EncodingPredictor$Translation.texts:[Ljava/lang/String;
dup
astore 17
arraylength
istore 16
iconst_0
istore 15
goto 29
StackMap locals: byte[] int int org.postgresql.core.Encoding org.postgresql.core.EncodingPredictor$Translation int int org.postgresql.core.EncodingPredictor$Translation[] java.lang.String int int java.lang.String[] org.postgresql.core.Encoding int top int int java.lang.String[]
StackMap stack:
22: aload 17
iload 15
aaload
astore 14
start local 14 23: aload 12
aload 14
invokevirtual org.postgresql.core.Encoding.encode:(Ljava/lang/String;)[B
astore 18
start local 18 24: aload 0
iload 1
iload 2
aload 18
iconst_0
aload 18
arraylength
invokestatic org.postgresql.core.EncodingPredictor.arrayContains:([BII[BII)Z
ifeq 28
25: iconst_1
istore 13
26: goto 30
end local 18 27: StackMap locals: byte[] int int org.postgresql.core.Encoding org.postgresql.core.EncodingPredictor$Translation int int org.postgresql.core.EncodingPredictor$Translation[] java.lang.String int int java.lang.String[] org.postgresql.core.Encoding int java.lang.String int int java.lang.String[]
StackMap stack: java.io.IOException
pop
end local 14 28: StackMap locals: byte[] int int org.postgresql.core.Encoding org.postgresql.core.EncodingPredictor$Translation int int org.postgresql.core.EncodingPredictor$Translation[] java.lang.String int int java.lang.String[] org.postgresql.core.Encoding int top int int java.lang.String[]
StackMap stack:
iinc 15 1
StackMap locals:
StackMap stack:
29: iload 15
iload 16
if_icmplt 22
30: StackMap locals: byte[] int int org.postgresql.core.Encoding org.postgresql.core.EncodingPredictor$Translation int int org.postgresql.core.EncodingPredictor$Translation[] java.lang.String int int java.lang.String[] org.postgresql.core.Encoding int
StackMap stack:
iload 13
ifne 32
31: goto 38
end local 13 32: StackMap locals:
StackMap stack:
aload 12
aload 0
iload 1
iload 2
invokevirtual org.postgresql.core.Encoding.decode:([BII)Ljava/lang/String;
astore 13
start local 13 33: aload 13
ldc 65533
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 35
34: goto 38
35: StackMap locals: java.lang.String
StackMap stack:
new org.postgresql.core.EncodingPredictor$DecodeResult
dup
aload 13
aload 12
invokevirtual org.postgresql.core.Encoding.name:()Ljava/lang/String;
invokespecial org.postgresql.core.EncodingPredictor$DecodeResult.<init>:(Ljava/lang/String;Ljava/lang/String;)V
36: areturn
end local 13 37: StackMap locals: byte[] int int org.postgresql.core.Encoding org.postgresql.core.EncodingPredictor$Translation int int org.postgresql.core.EncodingPredictor$Translation[] java.lang.String int int java.lang.String[] org.postgresql.core.Encoding
StackMap stack: java.io.IOException
pop
end local 12 end local 8 38: StackMap locals: byte[] int int org.postgresql.core.Encoding org.postgresql.core.EncodingPredictor$Translation int int org.postgresql.core.EncodingPredictor$Translation[] top int int java.lang.String[]
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
39: iload 9
iload 10
if_icmplt 4
end local 4 40: iinc 5 1
StackMap locals: byte[] int int org.postgresql.core.Encoding top int int org.postgresql.core.EncodingPredictor$Translation[]
StackMap stack:
41: iload 5
iload 6
if_icmplt 2
42: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 43 0 bytes [B
0 43 1 offset I
0 43 2 length I
1 43 3 defaultEncoding Lorg/postgresql/core/Encoding;
3 40 4 tr Lorg/postgresql/core/EncodingPredictor$Translation;
5 38 8 encoding Ljava/lang/String;
6 38 12 encoder Lorg/postgresql/core/Encoding;
11 15 13 encoded [B
17 19 13 encoded [B
10 14 14 tmp [B
21 32 13 foundOne Z
23 28 14 text Ljava/lang/String;
24 27 18 textBytes [B
33 37 13 decoded Ljava/lang/String;
Exception table:
from to target type
9 14 15 Class java.io.IOException
23 26 27 Class java.io.IOException
32 34 37 Class java.io.IOException
35 36 37 Class java.io.IOException
MethodParameters:
Name Flags
bytes
offset
length
private static boolean arrayContains(byte[], int, int, byte[], int, int);
descriptor: ([BII[BII)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iload 2
iload 5
if_icmpge 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
istore 6
start local 6 3: goto 13
4: StackMap locals: int
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
5: iload 6
iload 2
if_icmpge 6
aload 0
iload 1
iload 6
iadd
baload
aload 3
iload 4
baload
if_icmpne 4
6: StackMap locals:
StackMap stack:
iconst_1
istore 7
start local 7 7: goto 9
StackMap locals: int
StackMap stack:
8: iinc 7 1
StackMap locals:
StackMap stack:
9: iload 7
iload 5
if_icmpge 10
aload 0
iload 1
iload 6
iadd
iload 7
iadd
baload
aload 3
iload 4
iload 7
iadd
baload
if_icmpeq 8
10: StackMap locals:
StackMap stack:
iload 7
iload 5
if_icmpne 12
11: iconst_1
ireturn
end local 7 12: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
13: iload 6
iload 2
if_icmplt 5
end local 6 14: iconst_0
ireturn
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 15 0 first [B
0 15 1 firstOffset I
0 15 2 firstLength I
0 15 3 second [B
0 15 4 secondOffset I
0 15 5 secondLength I
3 14 6 i I
7 12 7 j I
MethodParameters:
Name Flags
first
firstOffset
firstLength
second
secondOffset
secondLength
}
SourceFile: "EncodingPredictor.java"
NestMembers:
org.postgresql.core.EncodingPredictor$DecodeResult org.postgresql.core.EncodingPredictor$Translation
InnerClasses:
public DecodeResult = org.postgresql.core.EncodingPredictor$DecodeResult of org.postgresql.core.EncodingPredictor
Translation = org.postgresql.core.EncodingPredictor$Translation of org.postgresql.core.EncodingPredictor