final class com.microsoft.sqlserver.jdbc.ParameterUtils
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.microsoft.sqlserver.jdbc.ParameterUtils
super_class: java.lang.Object
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 // com.microsoft.sqlserver.jdbc.ParameterUtils this
0: .line 12
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // com.microsoft.sqlserver.jdbc.ParameterUtils this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/microsoft/sqlserver/jdbc/ParameterUtils;
static byte[] HexToBin(java.lang.String);
descriptor: (Ljava/lang/String;)[B
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=5, args_size=1
start local 0 // java.lang.String hexV
0: .line 14
aload 0 /* hexV */
invokevirtual java.lang.String.length:()I
istore 1 /* len */
start local 1 // int len
1: .line 15
aload 0 /* hexV */
invokevirtual java.lang.String.toCharArray:()[C
astore 2 /* orig */
start local 2 // char[] orig
2: .line 16
iload 1 /* len */
iconst_2
irem
ifeq 6
3: .line 17
aconst_null
aconst_null
ldc "R_stringNotInHex"
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
4: .line 18
aconst_null
iconst_0
5: .line 17
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError:(Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Z)V
6: .line 19
StackMap locals: int char[]
StackMap stack:
iload 1 /* len */
iconst_2
idiv
newarray 8
astore 3 /* bin */
start local 3 // byte[] bin
7: .line 20
iconst_0
istore 4 /* i */
start local 4 // int i
8: goto 11
9: .line 21
StackMap locals: byte[] int
StackMap stack:
aload 3 /* bin */
iload 4 /* i */
aload 2 /* orig */
iconst_2
iload 4 /* i */
imul
caload
invokestatic com.microsoft.sqlserver.jdbc.ParameterUtils.CharToHex:(C)B
iconst_4
ishl
aload 2 /* orig */
iconst_2
iload 4 /* i */
imul
iconst_1
iadd
caload
invokestatic com.microsoft.sqlserver.jdbc.ParameterUtils.CharToHex:(C)B
sipush 255
iand
iadd
i2b
bastore
10: .line 20
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 4 /* i */
iload 1 /* len */
iconst_2
idiv
if_icmplt 9
end local 4 // int i
12: .line 23
aload 3 /* bin */
areturn
end local 3 // byte[] bin
end local 2 // char[] orig
end local 1 // int len
end local 0 // java.lang.String hexV
LocalVariableTable:
Start End Slot Name Signature
0 13 0 hexV Ljava/lang/String;
1 13 1 len I
2 13 2 orig [C
7 13 3 bin [B
8 12 4 i I
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
hexV
static byte CharToHex(char);
descriptor: (C)B
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 // char CTX
0: .line 30
iconst_0
istore 1 /* ret */
start local 1 // byte ret
1: .line 31
iload 0 /* CTX */
bipush 65
if_icmplt 4
iload 0 /* CTX */
bipush 70
if_icmpgt 4
2: .line 32
iload 0 /* CTX */
bipush 65
isub
bipush 10
iadd
i2b
istore 1 /* ret */
3: .line 33
goto 13
StackMap locals: int
StackMap stack:
4: iload 0 /* CTX */
bipush 97
if_icmplt 7
iload 0 /* CTX */
bipush 102
if_icmpgt 7
5: .line 34
iload 0 /* CTX */
bipush 97
isub
bipush 10
iadd
i2b
istore 1 /* ret */
6: .line 35
goto 13
StackMap locals:
StackMap stack:
7: iload 0 /* CTX */
bipush 48
if_icmplt 10
iload 0 /* CTX */
bipush 57
if_icmpgt 10
8: .line 36
iload 0 /* CTX */
bipush 48
isub
i2b
istore 1 /* ret */
9: .line 37
goto 13
10: .line 38
StackMap locals:
StackMap stack:
aconst_null
aconst_null
ldc "R_stringNotInHex"
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
11: .line 39
aconst_null
iconst_0
12: .line 38
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError:(Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Z)V
13: .line 41
StackMap locals:
StackMap stack:
iload 1 /* ret */
ireturn
end local 1 // byte ret
end local 0 // char CTX
LocalVariableTable:
Start End Slot Name Signature
0 14 0 CTX C
1 14 1 ret B
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
CTX
static int scanSQLForChar(char, java.lang.String, int);
descriptor: (CLjava/lang/String;I)I
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=6, args_size=3
start local 0 // char ch
start local 1 // java.lang.String sql
start local 2 // int offset
0: .line 68
aload 1 /* sql */
invokevirtual java.lang.String.length:()I
istore 5 /* len */
start local 5 // int len
1: .line 70
goto 32
2: .line 71
StackMap locals: int java.lang.String int top top int
StackMap stack:
aload 1 /* sql */
iload 2 /* offset */
iinc 2 /* offset */ 1
invokevirtual java.lang.String.charAt:(I)C
dup
istore 4 /* chTmp */
start local 4 // char chTmp
3: lookupswitch { // 5
34: 25
39: 25
45: 15
47: 4
91: 24
default: 22
}
4: .line 73
StackMap locals: int java.lang.String int top int int
StackMap stack:
iload 2 /* offset */
iload 5 /* len */
if_icmpne 6
5: .line 74
goto 32
6: .line 76
StackMap locals:
StackMap stack:
aload 1 /* sql */
iload 2 /* offset */
invokevirtual java.lang.String.charAt:(I)C
bipush 42
if_icmpne 13
7: .line 77
goto 11
8: .line 78
StackMap locals:
StackMap stack:
aload 1 /* sql */
iload 2 /* offset */
invokevirtual java.lang.String.charAt:(I)C
bipush 42
if_icmpne 11
iload 2 /* offset */
iconst_1
iadd
iload 5 /* len */
if_icmpge 11
aload 1 /* sql */
iload 2 /* offset */
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
bipush 47
if_icmpne 11
9: .line 80
iinc 2 /* offset */ 2
10: .line 81
goto 32
11: .line 77
StackMap locals:
StackMap stack:
iinc 2 /* offset */ 1
iload 2 /* offset */
iload 5 /* len */
if_icmplt 8
12: .line 84
goto 32
13: .line 85
StackMap locals:
StackMap stack:
aload 1 /* sql */
iload 2 /* offset */
invokevirtual java.lang.String.charAt:(I)C
bipush 45
if_icmpne 15
14: .line 86
goto 32
15: .line 90
StackMap locals:
StackMap stack:
iload 2 /* offset */
iflt 22
iload 2 /* offset */
aload 1 /* sql */
invokevirtual java.lang.String.length:()I
if_icmpge 22
aload 1 /* sql */
iload 2 /* offset */
invokevirtual java.lang.String.charAt:(I)C
bipush 45
if_icmpne 22
16: .line 91
goto 20
17: .line 92
StackMap locals:
StackMap stack:
aload 1 /* sql */
iload 2 /* offset */
invokevirtual java.lang.String.charAt:(I)C
bipush 10
if_icmpeq 18
aload 1 /* sql */
iload 2 /* offset */
invokevirtual java.lang.String.charAt:(I)C
bipush 13
if_icmpne 20
18: .line 94
StackMap locals:
StackMap stack:
iinc 2 /* offset */ 1
19: .line 95
goto 32
20: .line 91
StackMap locals:
StackMap stack:
iinc 2 /* offset */ 1
iload 2 /* offset */
iload 5 /* len */
if_icmplt 17
21: .line 98
goto 32
22: .line 102
StackMap locals:
StackMap stack:
iload 0 /* ch */
iload 4 /* chTmp */
if_icmpne 32
23: .line 103
iload 2 /* offset */
iconst_1
isub
ireturn
24: .line 106
StackMap locals:
StackMap stack:
bipush 93
istore 4 /* chTmp */
25: .line 109
StackMap locals:
StackMap stack:
iload 4 /* chTmp */
istore 3 /* chQuote */
start local 3 // char chQuote
26: .line 110
goto 31
27: .line 111
StackMap locals: int java.lang.String int int int int
StackMap stack:
aload 1 /* sql */
iload 2 /* offset */
iinc 2 /* offset */ 1
invokevirtual java.lang.String.charAt:(I)C
iload 3 /* chQuote */
if_icmpne 31
28: .line 112
iload 5 /* len */
iload 2 /* offset */
if_icmpeq 32
aload 1 /* sql */
iload 2 /* offset */
invokevirtual java.lang.String.charAt:(I)C
iload 3 /* chQuote */
if_icmpeq 30
29: .line 113
goto 32
30: .line 115
StackMap locals:
StackMap stack:
iinc 2 /* offset */ 1
31: .line 110
StackMap locals:
StackMap stack:
iload 2 /* offset */
iload 5 /* len */
if_icmplt 27
end local 4 // char chTmp
end local 3 // char chQuote
32: .line 70
StackMap locals: int java.lang.String int top top int
StackMap stack:
iload 2 /* offset */
iload 5 /* len */
if_icmplt 2
33: .line 122
iload 5 /* len */
ireturn
end local 5 // int len
end local 2 // int offset
end local 1 // java.lang.String sql
end local 0 // char ch
LocalVariableTable:
Start End Slot Name Signature
0 34 0 ch C
0 34 1 sql Ljava/lang/String;
0 34 2 offset I
26 32 3 chQuote C
3 32 4 chTmp C
1 34 5 len I
MethodParameters:
Name Flags
ch
sql
offset
}
SourceFile: "ParameterUtils.java"