final class java.util.regex.Pattern$Conditional extends java.util.regex.Pattern$Node
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: java.util.regex.Pattern$Conditional
super_class: java.util.regex.Pattern$Node
{
java.util.regex.Pattern$Node cond;
descriptor: Ljava/util/regex/Pattern$Node;
flags: (0x0000)
java.util.regex.Pattern$Node yes;
descriptor: Ljava/util/regex/Pattern$Node;
flags: (0x0000)
java.util.regex.Pattern$Node not;
descriptor: Ljava/util/regex/Pattern$Node;
flags: (0x0000)
void <init>(java.util.regex.Pattern$Node, java.util.regex.Pattern$Node, java.util.regex.Pattern$Node);
descriptor: (Ljava/util/regex/Pattern$Node;Ljava/util/regex/Pattern$Node;Ljava/util/regex/Pattern$Node;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.util.regex.Pattern$Node.<init>:()V
1: aload 0
aload 1
putfield java.util.regex.Pattern$Conditional.cond:Ljava/util/regex/Pattern$Node;
2: aload 0
aload 2
putfield java.util.regex.Pattern$Conditional.yes:Ljava/util/regex/Pattern$Node;
3: aload 0
aload 3
putfield java.util.regex.Pattern$Conditional.not:Ljava/util/regex/Pattern$Node;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/util/regex/Pattern$Conditional;
0 5 1 cond Ljava/util/regex/Pattern$Node;
0 5 2 yes Ljava/util/regex/Pattern$Node;
0 5 3 not Ljava/util/regex/Pattern$Node;
MethodParameters:
Name Flags
cond
yes
not
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=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield java.util.regex.Pattern$Conditional.cond:Ljava/util/regex/Pattern$Node;
aload 1
iload 2
aload 3
invokevirtual java.util.regex.Pattern$Node.match:(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z
ifeq 2
1: aload 0
getfield java.util.regex.Pattern$Conditional.yes:Ljava/util/regex/Pattern$Node;
aload 1
iload 2
aload 3
invokevirtual java.util.regex.Pattern$Node.match:(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Pattern$Conditional.not:Ljava/util/regex/Pattern$Node;
aload 1
iload 2
aload 3
invokevirtual java.util.regex.Pattern$Node.match:(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/regex/Pattern$Conditional;
0 3 1 matcher Ljava/util/regex/Matcher;
0 3 2 i I
0 3 3 seq Ljava/lang/CharSequence;
MethodParameters:
Name Flags
matcher
i
seq
boolean study(java.util.regex.Pattern$TreeInfo);
descriptor: (Ljava/util/regex/Pattern$TreeInfo;)Z
flags: (0x0000)
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aload 1
getfield java.util.regex.Pattern$TreeInfo.minLength:I
istore 2
start local 2 1: aload 1
getfield java.util.regex.Pattern$TreeInfo.maxLength:I
istore 3
start local 3 2: aload 1
getfield java.util.regex.Pattern$TreeInfo.maxValid:Z
istore 4
start local 4 3: aload 1
invokevirtual java.util.regex.Pattern$TreeInfo.reset:()V
4: aload 0
getfield java.util.regex.Pattern$Conditional.yes:Ljava/util/regex/Pattern$Node;
aload 1
invokevirtual java.util.regex.Pattern$Node.study:(Ljava/util/regex/Pattern$TreeInfo;)Z
pop
5: aload 1
getfield java.util.regex.Pattern$TreeInfo.minLength:I
istore 5
start local 5 6: aload 1
getfield java.util.regex.Pattern$TreeInfo.maxLength:I
istore 6
start local 6 7: aload 1
getfield java.util.regex.Pattern$TreeInfo.maxValid:Z
istore 7
start local 7 8: aload 1
invokevirtual java.util.regex.Pattern$TreeInfo.reset:()V
9: aload 0
getfield java.util.regex.Pattern$Conditional.not:Ljava/util/regex/Pattern$Node;
aload 1
invokevirtual java.util.regex.Pattern$Node.study:(Ljava/util/regex/Pattern$TreeInfo;)Z
pop
10: aload 1
iload 2
iload 5
aload 1
getfield java.util.regex.Pattern$TreeInfo.minLength:I
invokestatic java.lang.Math.min:(II)I
iadd
putfield java.util.regex.Pattern$TreeInfo.minLength:I
11: aload 1
iload 3
iload 6
aload 1
getfield java.util.regex.Pattern$TreeInfo.maxLength:I
invokestatic java.lang.Math.max:(II)I
iadd
putfield java.util.regex.Pattern$TreeInfo.maxLength:I
12: aload 1
iload 4
iload 7
iand
aload 1
getfield java.util.regex.Pattern$TreeInfo.maxValid:Z
iand
putfield java.util.regex.Pattern$TreeInfo.maxValid:Z
13: aload 1
iconst_0
putfield java.util.regex.Pattern$TreeInfo.deterministic:Z
14: aload 0
getfield java.util.regex.Pattern$Conditional.next:Ljava/util/regex/Pattern$Node;
aload 1
invokevirtual java.util.regex.Pattern$Node.study:(Ljava/util/regex/Pattern$TreeInfo;)Z
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 15 0 this Ljava/util/regex/Pattern$Conditional;
0 15 1 info Ljava/util/regex/Pattern$TreeInfo;
1 15 2 minL I
2 15 3 maxL I
3 15 4 maxV Z
6 15 5 minL2 I
7 15 6 maxL2 I
8 15 7 maxV2 Z
MethodParameters:
Name Flags
info
}
SourceFile: "Pattern.java"
NestHost: java.util.regex.Pattern
InnerClasses:
final Conditional = java.util.regex.Pattern$Conditional of java.util.regex.Pattern
Node = java.util.regex.Pattern$Node of java.util.regex.Pattern
final TreeInfo = java.util.regex.Pattern$TreeInfo of java.util.regex.Pattern