public abstract class org.joni.Matcher extends org.jcodings.IntHolder
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.joni.Matcher
super_class: org.jcodings.IntHolder
{
public static final int FAILED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1
public static final int INTERRUPTED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -2
protected final org.joni.Regex regex;
descriptor: Lorg/joni/Regex;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final org.jcodings.Encoding enc;
descriptor: Lorg/jcodings/Encoding;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final byte[] bytes;
descriptor: [B
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final int str;
descriptor: I
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final int end;
descriptor: I
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected int msaStart;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected int msaOptions;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected final org.joni.Region msaRegion;
descriptor: Lorg/joni/Region;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected int msaBestLen;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected int msaBestS;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected int msaBegin;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected int msaEnd;
descriptor: I
flags: (0x0004) ACC_PROTECTED
int low;
descriptor: I
flags: (0x0000)
int high;
descriptor: I
flags: (0x0000)
private byte[] icbuf;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
void <init>(org.joni.Regex, org.joni.Region, byte[], int, int);
descriptor: (Lorg/joni/Regex;Lorg/joni/Region;[BII)V
flags: (0x0000)
Code:
stack=2, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokespecial org.jcodings.IntHolder.<init>:()V
1: aload 0
aload 1
putfield org.joni.Matcher.regex:Lorg/joni/Regex;
2: aload 0
aload 1
getfield org.joni.Regex.enc:Lorg/jcodings/Encoding;
putfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
3: aload 0
aload 3
putfield org.joni.Matcher.bytes:[B
4: aload 0
iload 4
putfield org.joni.Matcher.str:I
5: aload 0
iload 5
putfield org.joni.Matcher.end:I
6: aload 0
aload 2
putfield org.joni.Matcher.msaRegion:Lorg/joni/Region;
7: return
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 8 0 this Lorg/joni/Matcher;
0 8 1 regex Lorg/joni/Regex;
0 8 2 region Lorg/joni/Region;
0 8 3 bytes [B
0 8 4 p I
0 8 5 end I
MethodParameters:
Name Flags
regex
region
bytes
p
end
protected abstract int matchAt(int, int, int, boolean);
descriptor: (IIIZ)I
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Exceptions:
throws java.lang.InterruptedException
MethodParameters:
Name Flags
range
sstart
sprev
interrupt
protected abstract void stateCheckBuffInit(int, int, int);
descriptor: (III)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
strLength
offset
stateNum
protected abstract void stateCheckBuffClear();
descriptor: ()V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
public abstract void interrupt();
descriptor: ()V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public final org.joni.Region getRegion();
descriptor: ()Lorg/joni/Region;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.joni.Matcher.msaRegion:Lorg/joni/Region;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joni/Matcher;
public final org.joni.Region getEagerRegion();
descriptor: ()Lorg/joni/Region;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.joni.Matcher.msaRegion:Lorg/joni/Region;
ifnull 1
aload 0
getfield org.joni.Matcher.msaRegion:Lorg/joni/Region;
goto 2
StackMap locals:
StackMap stack:
1: new org.joni.Region
dup
aload 0
getfield org.joni.Matcher.msaBegin:I
aload 0
getfield org.joni.Matcher.msaEnd:I
invokespecial org.joni.Region.<init>:(II)V
StackMap locals:
StackMap stack: org.joni.Region
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/joni/Matcher;
public final int getBegin();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.joni.Matcher.msaBegin:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joni/Matcher;
public final int getEnd();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.joni.Matcher.msaEnd:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joni/Matcher;
protected final void msaInit(int, int);
descriptor: (II)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
putfield org.joni.Matcher.msaOptions:I
1: aload 0
iload 2
putfield org.joni.Matcher.msaStart:I
2: aload 0
iconst_m1
putfield org.joni.Matcher.msaBestLen:I
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/joni/Matcher;
0 4 1 option I
0 4 2 start I
MethodParameters:
Name Flags
option
start
public final int match(int, int, int);
descriptor: (III)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
iload 3
iconst_0
invokevirtual org.joni.Matcher.matchCommon:(IIIZ)I
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.InterruptedException
pop
3: bipush -2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/joni/Matcher;
0 4 1 at I
0 4 2 range I
0 4 3 option I
Exception table:
from to target type
0 1 2 Class java.lang.InterruptedException
MethodParameters:
Name Flags
at
range
option
public final int matchInterruptible(int, int, int);
descriptor: (III)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
iload 3
iconst_1
invokevirtual org.joni.Matcher.matchCommon:(IIIZ)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joni/Matcher;
0 1 1 at I
0 1 2 range I
0 1 3 option I
Exceptions:
throws java.lang.InterruptedException
MethodParameters:
Name Flags
at
range
option
private final int matchCommon(int, int, int, boolean);
descriptor: (IIIZ)I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 3
iload 1
invokevirtual org.joni.Matcher.msaInit:(II)V
1: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
iload 1
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
istore 5
start local 5 2: aload 0
iload 2
iload 1
iload 5
iload 4
invokevirtual org.joni.Matcher.matchAt:(IIIZ)I
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 3 0 this Lorg/joni/Matcher;
0 3 1 at I
0 3 2 range I
0 3 3 option I
0 3 4 interrupt Z
2 3 5 prev I
Exceptions:
throws java.lang.InterruptedException
MethodParameters:
Name Flags
at
range
option
interrupt
private final boolean forwardSearchRange(byte[], int, int, int, int, org.jcodings.IntHolder);
descriptor: ([BIIIILorg/jcodings/IntHolder;)Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=7, locals=10, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: iconst_m1
istore 7
start local 7 1: iload 4
istore 8
start local 8 2: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMin:I
ifle 10
3: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
invokevirtual org.jcodings.Encoding.isSingleByte:()Z
ifeq 6
4: iload 8
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMin:I
iadd
istore 8
5: goto 10
6: StackMap locals: int int
StackMap stack:
iload 8
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMin:I
iadd
istore 9
start local 9 7: goto 9
StackMap locals: int
StackMap stack:
8: iload 8
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 8
iload 3
invokevirtual org.jcodings.Encoding.length:([BII)I
iadd
istore 8
StackMap locals:
StackMap stack:
9: iload 8
iload 9
if_icmpge 10
iload 8
iload 3
if_icmplt 8
end local 9 10: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.forward:Lorg/joni/Search$Forward;
aload 0
aload 1
iload 8
iload 3
iload 5
invokevirtual org.joni.Search$Forward.search:(Lorg/joni/Matcher;[BIII)I
istore 8
11: iload 8
iconst_m1
if_icmpeq 57
iload 8
iload 5
if_icmpge 57
12: iload 8
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMin:I
isub
iload 4
if_icmpge 16
13: iload 8
istore 7
14: iload 8
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 8
iload 3
invokevirtual org.jcodings.Encoding.length:([BII)I
iadd
istore 8
15: goto 10
16: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.subAnchor:I
ifeq 32
17: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.subAnchor:I
lookupswitch { // 2
2: 18
32: 26
default: 32
}
18: StackMap locals:
StackMap stack:
iload 8
iload 2
if_icmpeq 32
19: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 7
iconst_m1
if_icmpeq 20
iload 7
goto 21
StackMap locals: org.joni.Matcher byte[] int int int int org.jcodings.IntHolder int int
StackMap stack: org.jcodings.Encoding byte[]
20: iload 2
StackMap locals: org.joni.Matcher byte[] int int int int org.jcodings.IntHolder int int
StackMap stack: org.jcodings.Encoding byte[] int
21: iload 8
iload 3
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
istore 9
start local 9 22: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 9
iload 3
invokevirtual org.jcodings.Encoding.isNewLine:([BII)Z
ifne 32
23: iload 8
istore 7
24: iload 8
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 8
iload 3
invokevirtual org.jcodings.Encoding.length:([BII)I
iadd
istore 8
25: goto 10
end local 9 26: StackMap locals:
StackMap stack:
iload 8
iload 3
if_icmpne 28
27: goto 32
StackMap locals:
StackMap stack:
28: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 8
iload 3
invokevirtual org.jcodings.Encoding.isNewLine:([BII)Z
ifne 32
29: iload 8
istore 7
30: iload 8
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 8
iload 3
invokevirtual org.jcodings.Encoding.length:([BII)I
iadd
istore 8
31: goto 10
32: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
ifne 42
33: aload 0
iload 8
putfield org.joni.Matcher.low:I
34: aload 6
ifnull 55
35: aload 0
getfield org.joni.Matcher.low:I
iload 4
if_icmple 38
36: aload 6
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 4
iload 8
iload 3
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
putfield org.jcodings.IntHolder.value:I
37: goto 55
38: StackMap locals:
StackMap stack:
aload 6
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 7
iconst_m1
if_icmpeq 39
iload 7
goto 40
StackMap locals: org.joni.Matcher byte[] int int int int org.jcodings.IntHolder int int
StackMap stack: org.jcodings.IntHolder org.jcodings.Encoding byte[]
39: iload 2
StackMap locals: org.joni.Matcher byte[] int int int int org.jcodings.IntHolder int int
StackMap stack: org.jcodings.IntHolder org.jcodings.Encoding byte[] int
40: iload 8
iload 3
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
putfield org.jcodings.IntHolder.value:I
41: goto 55
42: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
ldc 2147483647
if_icmpeq 55
43: aload 0
iload 8
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
isub
putfield org.joni.Matcher.low:I
44: aload 0
getfield org.joni.Matcher.low:I
iload 4
if_icmple 51
45: aload 0
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 4
aload 0
getfield org.joni.Matcher.low:I
iload 3
aload 6
invokevirtual org.jcodings.Encoding.rightAdjustCharHeadWithPrev:([BIIILorg/jcodings/IntHolder;)I
putfield org.joni.Matcher.low:I
46: aload 6
ifnull 55
aload 6
getfield org.jcodings.IntHolder.value:I
iconst_m1
if_icmpne 55
47: aload 6
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 7
iconst_m1
if_icmpeq 48
iload 7
goto 49
StackMap locals: org.joni.Matcher byte[] int int int int org.jcodings.IntHolder int int
StackMap stack: org.jcodings.IntHolder org.jcodings.Encoding byte[]
48: iload 4
StackMap locals: org.joni.Matcher byte[] int int int int org.jcodings.IntHolder int int
StackMap stack: org.jcodings.IntHolder org.jcodings.Encoding byte[] int
49: aload 0
getfield org.joni.Matcher.low:I
iload 3
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
putfield org.jcodings.IntHolder.value:I
50: goto 55
51: StackMap locals:
StackMap stack:
aload 6
ifnull 55
52: aload 6
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 7
iconst_m1
if_icmpeq 53
iload 7
goto 54
StackMap locals: org.joni.Matcher byte[] int int int int org.jcodings.IntHolder int int
StackMap stack: org.jcodings.IntHolder org.jcodings.Encoding byte[]
53: iload 2
StackMap locals: org.joni.Matcher byte[] int int int int org.jcodings.IntHolder int int
StackMap stack: org.jcodings.IntHolder org.jcodings.Encoding byte[] int
54: aload 0
getfield org.joni.Matcher.low:I
iload 3
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
putfield org.jcodings.IntHolder.value:I
55: StackMap locals:
StackMap stack:
aload 0
iload 8
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMin:I
isub
putfield org.joni.Matcher.high:I
56: iconst_1
ireturn
57: StackMap locals:
StackMap stack:
iconst_0
ireturn
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 58 0 this Lorg/joni/Matcher;
0 58 1 bytes [B
0 58 2 str I
0 58 3 end I
0 58 4 s I
0 58 5 range I
0 58 6 lowPrev Lorg/jcodings/IntHolder;
1 58 7 pprev I
2 58 8 p I
7 10 9 q I
22 26 9 prev I
MethodParameters:
Name Flags
bytes
str
end
s
range
lowPrev
private final boolean backwardSearchRange(byte[], int, int, int, int, int);
descriptor: ([BIIIII)Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=9, locals=9, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: iload 5
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMin:I
iadd
istore 5
1: iload 4
istore 7
start local 7 2: StackMap locals: int
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.backward:Lorg/joni/Search$Backward;
aload 0
aload 1
iload 5
iload 6
iload 3
iload 7
iload 4
iload 5
invokevirtual org.joni.Search$Backward.search:(Lorg/joni/Matcher;[BIIIIII)I
istore 7
3: iload 7
iconst_m1
if_icmpeq 21
4: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.subAnchor:I
ifeq 16
5: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.subAnchor:I
lookupswitch { // 2
2: 6
32: 11
default: 16
}
6: StackMap locals:
StackMap stack:
iload 7
iload 2
if_icmpeq 16
7: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 2
iload 7
iload 3
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
istore 8
start local 8 8: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 8
iload 3
invokevirtual org.jcodings.Encoding.isNewLine:([BII)Z
ifne 16
9: iload 8
istore 7
10: goto 2
end local 8 11: StackMap locals:
StackMap stack:
iload 7
iload 3
if_icmpne 13
12: goto 16
StackMap locals:
StackMap stack:
13: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 7
iload 3
invokevirtual org.jcodings.Encoding.isNewLine:([BII)Z
ifne 16
14: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 6
iload 7
iload 3
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
istore 7
15: iload 7
iconst_m1
if_icmpne 2
iconst_0
ireturn
16: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
ldc 2147483647
if_icmpeq 20
17: aload 0
iload 7
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
isub
putfield org.joni.Matcher.low:I
18: aload 0
iload 7
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMin:I
isub
putfield org.joni.Matcher.high:I
19: aload 0
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 1
iload 6
aload 0
getfield org.joni.Matcher.high:I
iload 3
invokevirtual org.jcodings.Encoding.rightAdjustCharHead:([BIII)I
putfield org.joni.Matcher.high:I
20: StackMap locals:
StackMap stack:
iconst_1
ireturn
21: StackMap locals:
StackMap stack:
iconst_0
ireturn
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 22 0 this Lorg/joni/Matcher;
0 22 1 bytes [B
0 22 2 str I
0 22 3 end I
0 22 4 s I
0 22 5 range I
0 22 6 adjrange I
2 22 7 p I
8 11 8 prev I
MethodParameters:
Name Flags
bytes
str
end
s
range
adjrange
private boolean matchCheck(int, int, int, boolean);
descriptor: (IIIZ)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 0
getfield org.joni.Matcher.end:I
iload 2
iload 3
iload 4
invokevirtual org.joni.Matcher.matchAt:(IIIZ)I
iconst_m1
if_icmpeq 2
1: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.options:I
invokestatic org.joni.Option.isFindLongest:(I)Z
ifne 2
iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/joni/Matcher;
0 3 1 upperRange I
0 3 2 s I
0 3 3 prev I
0 3 4 interrupt Z
Exceptions:
throws java.lang.InterruptedException
MethodParameters:
Name Flags
upperRange
s
prev
interrupt
public final int search(int, int, int);
descriptor: (III)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
iload 3
iconst_0
invokevirtual org.joni.Matcher.searchCommon:(IIIZ)I
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.InterruptedException
pop
3: bipush -2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/joni/Matcher;
0 4 1 start I
0 4 2 range I
0 4 3 option I
Exception table:
from to target type
0 1 2 Class java.lang.InterruptedException
MethodParameters:
Name Flags
start
range
option
public final int searchInterruptible(int, int, int);
descriptor: (III)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
iload 3
iconst_1
invokevirtual org.joni.Matcher.searchCommon:(IIIZ)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joni/Matcher;
0 1 1 start I
0 1 2 range I
0 1 3 option I
Exceptions:
throws java.lang.InterruptedException
MethodParameters:
Name Flags
start
range
option
private final int searchCommon(int, int, int, boolean);
descriptor: (IIIZ)I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=7, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iload 1
istore 7
start local 7 1: iload 2
istore 8
start local 8 2: iload 1
aload 0
getfield org.joni.Matcher.end:I
if_icmpgt 3
iload 1
aload 0
getfield org.joni.Matcher.str:I
if_icmpge 4
StackMap locals: org.joni.Matcher int int int int top top int int
StackMap stack:
3: iconst_m1
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchor:I
ifeq 40
aload 0
getfield org.joni.Matcher.str:I
aload 0
getfield org.joni.Matcher.end:I
if_icmpge 40
5: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchor:I
iconst_4
iand
ifeq 11
6: iload 2
iload 1
if_icmple 9
7: iload 1
iconst_1
iadd
istore 2
8: goto 48
9: StackMap locals:
StackMap stack:
iload 1
istore 2
10: goto 48
StackMap locals:
StackMap stack:
11: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchor:I
iconst_1
iand
ifeq 21
12: iload 2
iload 1
if_icmple 16
13: iload 1
aload 0
getfield org.joni.Matcher.str:I
if_icmpeq 14
iconst_m1
ireturn
14: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.str:I
iconst_1
iadd
istore 2
15: goto 48
16: StackMap locals:
StackMap stack:
iload 2
aload 0
getfield org.joni.Matcher.str:I
if_icmpgt 20
17: aload 0
getfield org.joni.Matcher.str:I
istore 1
18: aload 0
getfield org.joni.Matcher.str:I
istore 2
19: goto 48
20: StackMap locals:
StackMap stack:
iconst_m1
ireturn
21: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchor:I
bipush 8
iand
ifeq 25
22: aload 0
getfield org.joni.Matcher.end:I
dup
istore 10
start local 10 23: istore 9
start local 9 24: aload 0
iload 1
iload 2
iload 9
iload 10
invokevirtual org.joni.Matcher.endBuf:(IIII)Z
ifeq 48
iconst_m1
ireturn
end local 10 end local 9 25: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchor:I
bipush 16
iand
ifeq 34
26: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
aload 0
getfield org.joni.Matcher.end:I
aload 0
getfield org.joni.Matcher.end:I
iconst_1
invokevirtual org.jcodings.Encoding.stepBack:([BIIII)I
istore 11
start local 11 27: aload 0
getfield org.joni.Matcher.end:I
istore 10
start local 10 28: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
iload 11
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.isNewLine:([BII)Z
ifeq 32
29: iload 11
istore 9
start local 9 30: iload 9
aload 0
getfield org.joni.Matcher.str:I
if_icmple 48
iload 1
iload 9
if_icmpgt 48
31: aload 0
iload 1
iload 2
iload 9
iload 10
invokevirtual org.joni.Matcher.endBuf:(IIII)Z
ifeq 48
iconst_m1
ireturn
end local 9 32: StackMap locals: org.joni.Matcher int int int int top top int int top int int
StackMap stack:
aload 0
getfield org.joni.Matcher.end:I
istore 9
start local 9 33: aload 0
iload 1
iload 2
iload 9
iload 10
invokevirtual org.joni.Matcher.endBuf:(IIII)Z
ifeq 48
iconst_m1
ireturn
end local 11 end local 10 end local 9 34: StackMap locals: org.joni.Matcher int int int int top top int int
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchor:I
ldc 32768
iand
ifeq 48
35: iload 2
iload 1
if_icmple 38
36: iload 1
iconst_1
iadd
istore 2
37: goto 48
38: StackMap locals:
StackMap stack:
iload 1
istore 2
39: goto 48
StackMap locals:
StackMap stack:
40: aload 0
getfield org.joni.Matcher.str:I
aload 0
getfield org.joni.Matcher.end:I
if_icmpne 48
41: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.thresholdLength:I
ifne 47
42: aload 0
getfield org.joni.Matcher.str:I
dup
istore 1
istore 5
start local 5 43: iconst_m1
istore 6
start local 6 44: aload 0
iload 3
iload 1
invokevirtual org.joni.Matcher.msaInit:(II)V
45: aload 0
aload 0
getfield org.joni.Matcher.end:I
iload 5
iload 6
iload 4
invokevirtual org.joni.Matcher.matchCheck:(IIIZ)Z
ifeq 46
aload 0
iload 5
invokevirtual org.joni.Matcher.match:(I)I
ireturn
46: StackMap locals: org.joni.Matcher int int int int int int int int
StackMap stack:
aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
end local 6 end local 5 47: StackMap locals: org.joni.Matcher int int int int top top int int
StackMap stack:
iconst_m1
ireturn
48: StackMap locals:
StackMap stack:
aload 0
iload 3
iload 7
invokevirtual org.joni.Matcher.msaInit:(II)V
49: iload 1
istore 5
start local 5 50: iload 2
iload 1
if_icmple 97
51: iload 5
aload 0
getfield org.joni.Matcher.str:I
if_icmple 54
52: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
iload 5
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
istore 6
start local 6 53: goto 55
end local 6 54: StackMap locals: org.joni.Matcher int int int int int top int int
StackMap stack:
iconst_0
istore 6
start local 6 55: StackMap locals: org.joni.Matcher int int int int int int int int
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.forward:Lorg/joni/Search$Forward;
ifnull 90
56: iload 2
istore 9
start local 9 57: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
ifeq 63
58: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
ldc 2147483647
if_icmpne 61
59: aload 0
getfield org.joni.Matcher.end:I
istore 9
60: goto 63
61: StackMap locals: int
StackMap stack:
iload 9
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
iadd
istore 9
62: iload 9
aload 0
getfield org.joni.Matcher.end:I
if_icmple 63
aload 0
getfield org.joni.Matcher.end:I
istore 9
63: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.end:I
iload 1
isub
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.thresholdLength:I
if_icmpge 64
aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
64: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
ldc 2147483647
if_icmpeq 77
65: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
aload 0
getfield org.joni.Matcher.end:I
iload 5
iload 9
aload 0
invokevirtual org.joni.Matcher.forwardSearchRange:([BIIIILorg/jcodings/IntHolder;)Z
ifne 66
aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
66: StackMap locals:
StackMap stack:
iload 5
aload 0
getfield org.joni.Matcher.low:I
if_icmpge 73
67: aload 0
getfield org.joni.Matcher.low:I
istore 5
68: aload 0
getfield org.joni.Matcher.value:I
istore 6
69: goto 73
70: StackMap locals:
StackMap stack:
aload 0
iload 8
iload 5
iload 6
iload 4
invokevirtual org.joni.Matcher.matchCheck:(IIIZ)Z
ifeq 71
aload 0
iload 5
invokevirtual org.joni.Matcher.match:(I)I
ireturn
71: StackMap locals:
StackMap stack:
iload 5
istore 6
72: iload 5
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
iload 5
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.length:([BII)I
iadd
istore 5
73: StackMap locals:
StackMap stack:
iload 5
aload 0
getfield org.joni.Matcher.high:I
if_icmple 70
74: iload 5
iload 2
75: if_icmplt 65
76: aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
77: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
aload 0
getfield org.joni.Matcher.end:I
iload 5
iload 9
aconst_null
invokevirtual org.joni.Matcher.forwardSearchRange:([BIIIILorg/jcodings/IntHolder;)Z
ifne 78
aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
78: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchor:I
sipush 16384
iand
ifeq 90
79: StackMap locals:
StackMap stack:
aload 0
iload 8
iload 5
iload 6
iload 4
invokevirtual org.joni.Matcher.matchCheck:(IIIZ)Z
ifeq 80
aload 0
iload 5
invokevirtual org.joni.Matcher.match:(I)I
ireturn
80: StackMap locals:
StackMap stack:
iload 5
istore 6
81: iload 5
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
iload 5
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.length:([BII)I
iadd
istore 5
82: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchor:I
sipush 6144
iand
ifne 87
83: goto 86
84: StackMap locals:
StackMap stack:
iload 5
istore 6
85: iload 5
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
iload 5
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.length:([BII)I
iadd
istore 5
86: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
iload 6
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.isNewLine:([BII)Z
ifne 87
iload 5
iload 2
if_icmplt 84
87: StackMap locals:
StackMap stack:
iload 5
iload 2
88: if_icmplt 79
89: aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
end local 9 90: StackMap locals:
StackMap stack:
aload 0
iload 8
iload 5
iload 6
iload 4
invokevirtual org.joni.Matcher.matchCheck:(IIIZ)Z
ifeq 91
aload 0
iload 5
invokevirtual org.joni.Matcher.match:(I)I
ireturn
91: StackMap locals:
StackMap stack:
iload 5
istore 6
92: iload 5
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
iload 5
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.length:([BII)I
iadd
istore 5
93: iload 5
iload 2
94: if_icmplt 90
95: iload 5
iload 2
if_icmpne 132
96: aload 0
iload 8
iload 5
iload 6
iload 4
invokevirtual org.joni.Matcher.matchCheck:(IIIZ)Z
ifeq 132
aload 0
iload 5
invokevirtual org.joni.Matcher.match:(I)I
ireturn
end local 6 97: StackMap locals: org.joni.Matcher int int int int int top int int
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.backward:Lorg/joni/Search$Backward;
ifnull 127
98: iload 2
aload 0
getfield org.joni.Matcher.end:I
if_icmpge 101
99: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
iload 2
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.leftAdjustCharHead:([BIII)I
istore 9
start local 9 100: goto 102
end local 9 101: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.end:I
istore 9
start local 9 102: StackMap locals: int
StackMap stack:
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
ldc 2147483647
if_icmpeq 115
aload 0
getfield org.joni.Matcher.end:I
iload 2
isub
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.thresholdLength:I
if_icmplt 115
103: StackMap locals:
StackMap stack:
iload 5
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
iadd
istore 10
start local 10 104: iload 10
aload 0
getfield org.joni.Matcher.end:I
if_icmple 105
aload 0
getfield org.joni.Matcher.end:I
istore 10
105: StackMap locals: int
StackMap stack:
aload 0
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
aload 0
getfield org.joni.Matcher.end:I
iload 10
iload 2
iload 9
invokevirtual org.joni.Matcher.backwardSearchRange:([BIIIII)Z
ifne 106
aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
106: StackMap locals:
StackMap stack:
iload 5
aload 0
getfield org.joni.Matcher.high:I
if_icmple 111
aload 0
getfield org.joni.Matcher.high:I
istore 5
107: goto 111
108: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
iload 5
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
istore 6
start local 6 109: aload 0
iload 7
iload 5
iload 6
iload 4
invokevirtual org.joni.Matcher.matchCheck:(IIIZ)Z
ifeq 110
aload 0
iload 5
invokevirtual org.joni.Matcher.match:(I)I
ireturn
110: StackMap locals: org.joni.Matcher int int int int int int int int int int
StackMap stack:
iload 6
istore 5
end local 6 111: StackMap locals: org.joni.Matcher int int int int int top int int int int
StackMap stack:
iload 5
iconst_m1
if_icmpeq 112
iload 5
aload 0
getfield org.joni.Matcher.low:I
if_icmpge 108
end local 10 112: StackMap locals:
StackMap stack:
iload 5
iload 2
113: if_icmpge 103
114: aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
115: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.end:I
iload 2
isub
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.thresholdLength:I
if_icmpge 116
aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
116: StackMap locals:
StackMap stack:
iload 5
istore 10
start local 10 117: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
ifeq 126
118: aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
ldc 2147483647
if_icmpne 121
119: aload 0
getfield org.joni.Matcher.end:I
istore 10
120: goto 126
121: StackMap locals: int
StackMap stack:
iload 10
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.dMax:I
iadd
istore 10
122: iload 10
aload 0
getfield org.joni.Matcher.end:I
if_icmple 125
123: aload 0
getfield org.joni.Matcher.end:I
istore 10
124: goto 126
125: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
iload 1
iload 10
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.leftAdjustCharHead:([BIII)I
istore 10
126: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
aload 0
getfield org.joni.Matcher.end:I
iload 10
iload 2
iload 9
invokevirtual org.joni.Matcher.backwardSearchRange:([BIIIII)Z
ifne 127
aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
end local 10 end local 9 127: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
iload 5
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
istore 6
start local 6 128: aload 0
iload 7
iload 5
iload 6
iload 4
invokevirtual org.joni.Matcher.matchCheck:(IIIZ)Z
ifeq 129
aload 0
iload 5
invokevirtual org.joni.Matcher.match:(I)I
ireturn
129: StackMap locals: org.joni.Matcher int int int int int int int int
StackMap stack:
iload 6
istore 5
130: iload 5
iload 2
131: if_icmpge 127
132: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.joni.Matcher.mismatch:()I
ireturn
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 133 0 this Lorg/joni/Matcher;
0 133 1 start I
0 133 2 range I
0 133 3 option I
0 133 4 interrupt Z
43 47 5 s I
50 133 5 s I
44 47 6 prev I
53 54 6 prev I
55 97 6 prev I
109 111 6 prev I
128 133 6 prev I
1 133 7 origStart I
2 133 8 origRange I
24 25 9 minSemiEnd I
30 32 9 minSemiEnd I
33 34 9 minSemiEnd I
23 25 10 maxSemiEnd I
28 34 10 maxSemiEnd I
27 34 11 preEnd I
57 90 9 schRange I
100 101 9 adjrange I
102 127 9 adjrange I
104 112 10 schStart I
117 127 10 schStart I
Exceptions:
throws java.lang.InterruptedException
MethodParameters:
Name Flags
start
range
option
interrupt
private final boolean endBuf(int, int, int, int);
descriptor: (IIII)Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iload 4
aload 0
getfield org.joni.Matcher.str:I
isub
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchorDmin:I
if_icmpge 1
iconst_1
ireturn
1: StackMap locals:
StackMap stack:
iload 2
iload 1
if_icmple 11
2: iload 3
iload 1
isub
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchorDmax:I
if_icmple 8
3: iload 3
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchorDmax:I
isub
istore 1
4: iload 1
aload 0
getfield org.joni.Matcher.end:I
if_icmpge 7
5: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
iload 1
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.rightAdjustCharHead:([BIII)I
istore 1
6: goto 8
7: StackMap locals:
StackMap stack:
aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
aload 0
getfield org.joni.Matcher.end:I
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.prevCharHead:([BIII)I
istore 1
8: StackMap locals:
StackMap stack:
iload 4
iload 2
iconst_1
isub
isub
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchorDmin:I
if_icmpge 10
9: iload 4
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchorDmin:I
isub
iconst_1
iadd
istore 2
10: StackMap locals:
StackMap stack:
iload 1
iload 2
if_icmplt 17
iconst_1
ireturn
11: StackMap locals:
StackMap stack:
iload 3
iload 2
isub
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchorDmax:I
if_icmple 13
12: iload 3
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchorDmax:I
isub
istore 2
13: StackMap locals:
StackMap stack:
iload 4
iload 1
isub
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchorDmin:I
if_icmpge 16
14: iload 4
aload 0
getfield org.joni.Matcher.regex:Lorg/joni/Regex;
getfield org.joni.Regex.anchorDmin:I
isub
istore 1
15: aload 0
getfield org.joni.Matcher.enc:Lorg/jcodings/Encoding;
aload 0
getfield org.joni.Matcher.bytes:[B
aload 0
getfield org.joni.Matcher.str:I
iload 1
aload 0
getfield org.joni.Matcher.end:I
invokevirtual org.jcodings.Encoding.leftAdjustCharHead:([BIII)I
istore 1
16: StackMap locals:
StackMap stack:
iload 2
iload 1
if_icmple 17
iconst_1
ireturn
17: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/joni/Matcher;
0 18 1 start I
0 18 2 range I
0 18 3 minSemiEnd I
0 18 4 maxSemiEnd I
MethodParameters:
Name Flags
start
range
minSemiEnd
maxSemiEnd
private final int match(int);
descriptor: (I)I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
aload 0
getfield org.joni.Matcher.str:I
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joni/Matcher;
0 1 1 s I
MethodParameters:
Name Flags
s
private final int mismatch();
descriptor: ()I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.joni.Matcher.msaBestLen:I
iflt 3
1: aload 0
getfield org.joni.Matcher.msaBestS:I
istore 1
start local 1 2: aload 0
iload 1
invokevirtual org.joni.Matcher.match:(I)I
ireturn
end local 1 3: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/joni/Matcher;
2 3 1 s I
protected final byte[] icbuf();
descriptor: ()[B
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.joni.Matcher.icbuf:[B
ifnonnull 1
aload 0
bipush 18
newarray 8
dup_x1
putfield org.joni.Matcher.icbuf:[B
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield org.joni.Matcher.icbuf:[B
StackMap locals:
StackMap stack: byte[]
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/joni/Matcher;
static boolean isMbcAsciiWord(org.jcodings.Encoding, byte[], int, int);
descriptor: (Lorg/jcodings/Encoding;[BII)Z
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
aload 0
aload 1
iload 2
iload 3
invokevirtual org.jcodings.Encoding.mbcToCode:([BII)I
bipush 12
invokevirtual org.jcodings.specific.ASCIIEncoding.isCodeCType:(II)Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 enc Lorg/jcodings/Encoding;
0 1 1 bytes [B
0 1 2 p I
0 1 3 end I
MethodParameters:
Name Flags
enc
bytes
p
end
private final void debugForwardSearchRange(int, int, int, int);
descriptor: (IIII)V
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=0, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joni/Matcher;
0 1 1 str I
0 1 2 end I
0 1 3 s I
0 1 4 range I
MethodParameters:
Name Flags
str
end
s
range
private final void debugForwardSearchRangeSuccess(int, int, int);
descriptor: (III)V
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=0, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joni/Matcher;
0 1 1 str I
0 1 2 low I
0 1 3 high I
MethodParameters:
Name Flags
str
low
high
private final void debugSearch(int, int, int, int);
descriptor: (IIII)V
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=0, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joni/Matcher;
0 1 1 str I
0 1 2 end I
0 1 3 start I
0 1 4 range I
MethodParameters:
Name Flags
str
end
start
range
private final void debugBackwardSearchRange(int, int, int);
descriptor: (III)V
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=0, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/joni/Matcher;
0 1 1 str I
0 1 2 low I
0 1 3 high I
MethodParameters:
Name Flags
str
low
high
static void debugSearch(java.lang.String, int, int, int);
descriptor: (Ljava/lang/String;III)V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.joni.Config.log:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": text: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", text_end: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", text_range: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 name Ljava/lang/String;
0 2 1 textP I
0 2 2 textEnd I
0 2 3 textRange I
MethodParameters:
Name Flags
name
textP
textEnd
textRange
}
SourceFile: "Matcher.java"
InnerClasses:
abstract Backward = org.joni.Search$Backward of org.joni.Search
abstract Forward = org.joni.Search$Forward of org.joni.Search