class java.util.Scanner$FindSpliterator extends java.util.Spliterators$AbstractSpliterator<java.util.regex.MatchResult>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: java.util.Scanner$FindSpliterator
super_class: java.util.Spliterators$AbstractSpliterator
{
final java.util.regex.Pattern pattern;
descriptor: Ljava/util/regex/Pattern;
flags: (0x0010) ACC_FINAL
int expectedCount;
descriptor: I
flags: (0x0000)
private boolean advance;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
final java.util.Scanner this$0;
descriptor: Ljava/util/Scanner;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(java.util.Scanner, java.util.regex.Pattern);
descriptor: (Ljava/util/Scanner;Ljava/util/regex/Pattern;)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 // java.util.Scanner$FindSpliterator this
start local 2 // java.util.regex.Pattern pattern
0: .line 2948
aload 0 /* this */
aload 1
putfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
1: .line 2949
aload 0 /* this */
ldc 9223372036854775807
2: .line 2950
sipush 1296
invokespecial java.util.Spliterators$AbstractSpliterator.<init>:(JI)V
3: .line 2945
aload 0 /* this */
iconst_m1
putfield java.util.Scanner$FindSpliterator.expectedCount:I
4: .line 2946
aload 0 /* this */
iconst_0
putfield java.util.Scanner$FindSpliterator.advance:Z
5: .line 2951
aload 0 /* this */
aload 2 /* pattern */
putfield java.util.Scanner$FindSpliterator.pattern:Ljava/util/regex/Pattern;
6: .line 2952
return
end local 2 // java.util.regex.Pattern pattern
end local 0 // java.util.Scanner$FindSpliterator this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/util/Scanner$FindSpliterator;
0 7 2 pattern Ljava/util/regex/Pattern;
MethodParameters:
Name Flags
this$0 final
pattern
public boolean tryAdvance(java.util.function.Consumer<? super java.util.regex.MatchResult>);
descriptor: (Ljava/util/function/Consumer;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // java.util.Scanner$FindSpliterator this
start local 1 // java.util.function.Consumer cons
0: .line 2956
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
invokevirtual java.util.Scanner.ensureOpen:()V
1: .line 2957
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.expectedCount:I
iflt 4
2: .line 2958
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.expectedCount:I
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.modCount:I
if_icmpeq 7
3: .line 2959
new java.util.ConcurrentModificationException
dup
invokespecial java.util.ConcurrentModificationException.<init>:()V
athrow
4: .line 2963
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
iconst_0
putfield java.util.Scanner.matchValid:Z
5: .line 2964
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.pattern:Ljava/util/regex/Pattern;
invokevirtual java.util.regex.Matcher.usePattern:(Ljava/util/regex/Pattern;)Ljava/util/regex/Matcher;
pop
6: .line 2965
aload 0 /* this */
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.modCount:I
putfield java.util.Scanner$FindSpliterator.expectedCount:I
7: .line 2970
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual java.util.Scanner$FindSpliterator.nextInBuffer:()Z
ifeq 12
8: .line 2971
aload 1 /* cons */
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
invokevirtual java.util.regex.Matcher.toMatchResult:()Ljava/util/regex/MatchResult;
invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
9: .line 2972
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.expectedCount:I
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.modCount:I
if_icmpeq 11
10: .line 2973
new java.util.ConcurrentModificationException
dup
invokespecial java.util.ConcurrentModificationException.<init>:()V
athrow
11: .line 2975
StackMap locals:
StackMap stack:
iconst_1
ireturn
12: .line 2977
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.needInput:Z
ifeq 14
13: .line 2978
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
invokevirtual java.util.Scanner.readInput:()V
goto 7
14: .line 2980
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 // java.util.function.Consumer cons
end local 0 // java.util.Scanner$FindSpliterator this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljava/util/Scanner$FindSpliterator;
0 15 1 cons Ljava/util/function/Consumer<-Ljava/util/regex/MatchResult;>;
Signature: (Ljava/util/function/Consumer<-Ljava/util/regex/MatchResult;>;)Z
MethodParameters:
Name Flags
cons
private boolean nextInBuffer();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 // java.util.Scanner$FindSpliterator this
0: .line 2986
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.advance:Z
ifeq 7
1: .line 2987
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.position:I
iconst_1
iadd
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.buf:Ljava/nio/CharBuffer;
invokevirtual java.nio.CharBuffer.limit:()I
if_icmple 5
2: .line 2988
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.sourceClosed:Z
ifne 4
3: .line 2989
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
iconst_1
putfield java.util.Scanner.needInput:Z
4: .line 2990
StackMap locals:
StackMap stack:
iconst_0
ireturn
5: .line 2992
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
dup
getfield java.util.Scanner.position:I
iconst_1
iadd
putfield java.util.Scanner.position:I
6: .line 2993
aload 0 /* this */
iconst_0
putfield java.util.Scanner$FindSpliterator.advance:Z
7: .line 2995
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.position:I
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.buf:Ljava/nio/CharBuffer;
invokevirtual java.nio.CharBuffer.limit:()I
invokevirtual java.util.regex.Matcher.region:(II)Ljava/util/regex/Matcher;
pop
8: .line 2996
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
invokevirtual java.util.regex.Matcher.find:()Z
ifeq 14
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
invokevirtual java.util.regex.Matcher.hitEnd:()Z
ifeq 9
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.sourceClosed:Z
ifeq 14
9: .line 2998
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
invokevirtual java.util.regex.Matcher.end:()I
putfield java.util.Scanner.position:I
10: .line 2999
aload 0 /* this */
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
invokevirtual java.util.regex.Matcher.start:()I
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.position:I
if_icmpne 11
iconst_1
goto 12
StackMap locals:
StackMap stack: java.util.Scanner$FindSpliterator
11: iconst_0
StackMap locals: java.util.Scanner$FindSpliterator
StackMap stack: java.util.Scanner$FindSpliterator int
12: putfield java.util.Scanner$FindSpliterator.advance:Z
13: .line 3000
iconst_1
ireturn
14: .line 3002
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
getfield java.util.Scanner.sourceClosed:Z
ifne 16
15: .line 3003
aload 0 /* this */
getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
iconst_1
putfield java.util.Scanner.needInput:Z
16: .line 3004
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 // java.util.Scanner$FindSpliterator this
LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljava/util/Scanner$FindSpliterator;
}
Signature: Ljava/util/Spliterators$AbstractSpliterator<Ljava/util/regex/MatchResult;>;
SourceFile: "Scanner.java"
NestHost: java.util.Scanner
InnerClasses:
FindSpliterator = java.util.Scanner$FindSpliterator of java.util.Scanner
public abstract AbstractSpliterator = java.util.Spliterators$AbstractSpliterator of java.util.Spliterators