final class java.util.regex.Pattern$BnMS extends java.util.regex.Pattern$BnM
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: java.util.regex.Pattern$BnMS
super_class: java.util.regex.Pattern$BnM
{
int lengthInChars;
descriptor: I
flags: (0x0000)
void <init>(int[], int[], int[], java.util.regex.Pattern$Node);
descriptor: ([I[I[ILjava/util/regex/Pattern$Node;)V
flags: (0x0000)
Code:
stack=5, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokespecial java.util.regex.Pattern$BnM.<init>:([I[I[ILjava/util/regex/Pattern$Node;)V
1: aload 0
getfield java.util.regex.Pattern$BnMS.buffer:[I
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 5
StackMap locals: java.util.regex.Pattern$BnMS int[] int[] int[] java.util.regex.Pattern$Node top int int int[]
StackMap stack:
2: aload 8
iload 6
iaload
istore 5
start local 5 3: aload 0
dup
getfield java.util.regex.Pattern$BnMS.lengthInChars:I
iload 5
invokestatic java.lang.Character.charCount:(I)I
iadd
putfield java.util.regex.Pattern$BnMS.lengthInChars:I
end local 5 4: iinc 6 1
StackMap locals:
StackMap stack:
5: iload 6
iload 7
if_icmplt 2
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/util/regex/Pattern$BnMS;
0 7 1 src [I
0 7 2 lastOcc [I
0 7 3 optoSft [I
0 7 4 next Ljava/util/regex/Pattern$Node;
3 4 5 cp I
MethodParameters:
Name Flags
src
lastOcc
optoSft
next
boolean match(java.util.regex.Matcher, int, java.lang.CharSequence);
descriptor: (Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z
flags: (0x0000)
Code:
stack=4, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield java.util.regex.Pattern$BnMS.buffer:[I
astore 4
start local 4 1: aload 4
arraylength
istore 5
start local 5 2: aload 1
getfield java.util.regex.Matcher.to:I
aload 0
getfield java.util.regex.Pattern$BnMS.lengthInChars:I
isub
istore 6
start local 6 3: goto 23
4: StackMap locals: int[] int int
StackMap stack:
aload 3
iload 2
iload 5
invokestatic java.util.regex.Pattern.countChars:(Ljava/lang/CharSequence;II)I
istore 8
start local 8 5: iload 5
iconst_1
isub
istore 9
start local 9 6: goto 13
7: StackMap locals: java.util.regex.Pattern$BnMS java.util.regex.Matcher int java.lang.CharSequence int[] int int top int int
StackMap stack:
aload 3
iload 2
iload 8
iadd
invokestatic java.lang.Character.codePointBefore:(Ljava/lang/CharSequence;I)I
istore 7
start local 7 8: iload 7
aload 4
iload 9
iaload
if_icmpeq 12
9: iload 9
iconst_1
iadd
aload 0
getfield java.util.regex.Pattern$BnMS.lastOcc:[I
iload 7
bipush 127
iand
iaload
isub
aload 0
getfield java.util.regex.Pattern$BnMS.optoSft:[I
iload 9
iaload
invokestatic java.lang.Math.max:(II)I
istore 10
start local 10 10: iload 2
aload 3
iload 2
iload 10
invokestatic java.util.regex.Pattern.countChars:(Ljava/lang/CharSequence;II)I
iadd
istore 2
11: goto 23
end local 10 12: StackMap locals: java.util.regex.Pattern$BnMS java.util.regex.Matcher int java.lang.CharSequence int[] int int int int int
StackMap stack:
iload 8
iload 7
invokestatic java.lang.Character.charCount:(I)I
isub
istore 8
iinc 9 -1
end local 7 StackMap locals: java.util.regex.Pattern$BnMS java.util.regex.Matcher int java.lang.CharSequence int[] int int top int int
StackMap stack:
13: iload 8
14: ifgt 7
end local 9 end local 8 15: aload 1
iload 2
putfield java.util.regex.Matcher.first:I
16: aload 0
getfield java.util.regex.Pattern$BnMS.next:Ljava/util/regex/Pattern$Node;
aload 1
iload 2
aload 0
getfield java.util.regex.Pattern$BnMS.lengthInChars:I
iadd
aload 3
invokevirtual java.util.regex.Pattern$Node.match:(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z
istore 8
start local 8 17: iload 8
ifeq 22
18: aload 1
iload 2
putfield java.util.regex.Matcher.first:I
19: aload 1
getfield java.util.regex.Matcher.groups:[I
iconst_0
aload 1
getfield java.util.regex.Matcher.first:I
iastore
20: aload 1
getfield java.util.regex.Matcher.groups:[I
iconst_1
aload 1
getfield java.util.regex.Matcher.last:I
iastore
21: iconst_1
ireturn
22: StackMap locals: java.util.regex.Pattern$BnMS java.util.regex.Matcher int java.lang.CharSequence int[] int int top int
StackMap stack:
iload 2
aload 3
iload 2
iconst_1
invokestatic java.util.regex.Pattern.countChars:(Ljava/lang/CharSequence;II)I
iadd
istore 2
end local 8 23: StackMap locals: java.util.regex.Pattern$BnMS java.util.regex.Matcher int java.lang.CharSequence int[] int int
StackMap stack:
iload 2
iload 6
if_icmple 4
24: aload 1
iconst_1
putfield java.util.regex.Matcher.hitEnd:Z
25: iconst_0
ireturn
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 26 0 this Ljava/util/regex/Pattern$BnMS;
0 26 1 matcher Ljava/util/regex/Matcher;
0 26 2 i I
0 26 3 seq Ljava/lang/CharSequence;
1 26 4 src [I
2 26 5 patternLength I
3 26 6 last I
8 13 7 ch I
5 15 8 j I
6 15 9 x I
10 12 10 n I
17 23 8 ret Z
MethodParameters:
Name Flags
matcher
i
seq
}
SourceFile: "Pattern.java"
NestHost: java.util.regex.Pattern
InnerClasses:
BnM = java.util.regex.Pattern$BnM of java.util.regex.Pattern
final BnMS = java.util.regex.Pattern$BnMS of java.util.regex.Pattern
Node = java.util.regex.Pattern$Node of java.util.regex.Pattern