class java.util.stream.SliceOps$1 extends java.util.stream.ReferencePipeline$StatefulOp<T, T>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: java.util.stream.SliceOps$1
super_class: java.util.stream.ReferencePipeline$StatefulOp
{
private final long val$skip;
descriptor: J
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final long val$limit;
descriptor: J
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(java.util.stream.AbstractPipeline, java.util.stream.StreamShape, int, long, long);
descriptor: (Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;IJJ)V
flags: (0x0000)
Code:
stack=4, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 0: aload 0
lload 4
putfield java.util.stream.SliceOps$1.val$skip:J
aload 0
lload 6
putfield java.util.stream.SliceOps$1.val$limit:J
aload 0
aload 1
aload 2
iload 3
invokespecial java.util.stream.ReferencePipeline$StatefulOp.<init>:(Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;I)V
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/stream/SliceOps$1;
0 1 1 $anonymous0 Ljava/util/stream/AbstractPipeline<*TT;*>;
0 1 2 $anonymous1 Ljava/util/stream/StreamShape;
0 1 3 $anonymous2 I
MethodParameters:
Name Flags
$anonymous0
$anonymous1
$anonymous2
val$skip final
val$limit final
java.util.Spliterator<T> unorderedSkipLimitSpliterator(java.util.Spliterator<T>, long, long, long);
descriptor: (Ljava/util/Spliterator;JJJ)Ljava/util/Spliterator;
flags: (0x0000)
Code:
stack=7, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 6 0: lload 2
lload 6
lcmp
ifgt 5
1: lload 4
lconst_0
lcmp
iflt 2
lload 4
lload 6
lload 2
lsub
invokestatic java.lang.Math.min:(JJ)J
goto 3
StackMap locals:
StackMap stack:
2: lload 6
lload 2
lsub
StackMap locals:
StackMap stack: long
3: lstore 4
4: lconst_0
lstore 2
5: StackMap locals:
StackMap stack:
new java.util.stream.StreamSpliterators$UnorderedSliceSpliterator$OfRef
dup
aload 1
lload 2
lload 4
invokespecial java.util.stream.StreamSpliterators$UnorderedSliceSpliterator$OfRef.<init>:(Ljava/util/Spliterator;JJ)V
areturn
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/util/stream/SliceOps$1;
0 6 1 s Ljava/util/Spliterator<TT;>;
0 6 2 skip J
0 6 4 limit J
0 6 6 sizeIfKnown J
Signature: (Ljava/util/Spliterator<TT;>;JJJ)Ljava/util/Spliterator<TT;>;
MethodParameters:
Name Flags
s
skip
limit
sizeIfKnown
<P_IN> java.util.Spliterator<T> opEvaluateParallelLazy(java.util.stream.PipelineHelper<T>, java.util.Spliterator<P_IN>);
descriptor: (Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;)Ljava/util/Spliterator;
flags: (0x0000)
Code:
stack=10, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokevirtual java.util.stream.PipelineHelper.exactOutputSizeIfKnown:(Ljava/util/Spliterator;)J
lstore 3
start local 3 1: lload 3
lconst_0
lcmp
ifle 7
aload 2
sipush 16384
invokeinterface java.util.Spliterator.hasCharacteristics:(I)Z
ifeq 7
2: new java.util.stream.StreamSpliterators$SliceSpliterator$OfRef
dup
3: aload 1
aload 2
invokevirtual java.util.stream.PipelineHelper.wrapSpliterator:(Ljava/util/Spliterator;)Ljava/util/Spliterator;
4: aload 0
getfield java.util.stream.SliceOps$1.val$skip:J
5: aload 0
getfield java.util.stream.SliceOps$1.val$skip:J
aload 0
getfield java.util.stream.SliceOps$1.val$limit:J
invokestatic java.util.stream.SliceOps.calcSliceFence:(JJ)J
6: invokespecial java.util.stream.StreamSpliterators$SliceSpliterator$OfRef.<init>:(Ljava/util/Spliterator;JJ)V
areturn
7: StackMap locals: long
StackMap stack:
getstatic java.util.stream.StreamOpFlag.ORDERED:Ljava/util/stream/StreamOpFlag;
aload 1
invokevirtual java.util.stream.PipelineHelper.getStreamAndOpFlags:()I
invokevirtual java.util.stream.StreamOpFlag.isKnown:(I)Z
ifne 12
8: aload 0
9: aload 1
aload 2
invokevirtual java.util.stream.PipelineHelper.wrapSpliterator:(Ljava/util/Spliterator;)Ljava/util/Spliterator;
10: aload 0
getfield java.util.stream.SliceOps$1.val$skip:J
aload 0
getfield java.util.stream.SliceOps$1.val$limit:J
lload 3
11: invokevirtual java.util.stream.SliceOps$1.unorderedSkipLimitSpliterator:(Ljava/util/Spliterator;JJJ)Ljava/util/Spliterator;
areturn
12: StackMap locals:
StackMap stack:
new java.util.stream.SliceOps$SliceTask
dup
aload 0
aload 1
aload 2
invokestatic java.util.stream.Nodes.castingArray:()Ljava/util/function/IntFunction;
aload 0
getfield java.util.stream.SliceOps$1.val$skip:J
aload 0
getfield java.util.stream.SliceOps$1.val$limit:J
invokespecial java.util.stream.SliceOps$SliceTask.<init>:(Ljava/util/stream/AbstractPipeline;Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;Ljava/util/function/IntFunction;JJ)V
13: invokevirtual java.util.stream.SliceOps$SliceTask.invoke:()Ljava/lang/Object;
checkcast java.util.stream.Node
invokeinterface java.util.stream.Node.spliterator:()Ljava/util/Spliterator;
14: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljava/util/stream/SliceOps$1;
0 15 1 helper Ljava/util/stream/PipelineHelper<TT;>;
0 15 2 spliterator Ljava/util/Spliterator<TP_IN;>;
1 15 3 size J
Signature: <P_IN:Ljava/lang/Object;>(Ljava/util/stream/PipelineHelper<TT;>;Ljava/util/Spliterator<TP_IN;>;)Ljava/util/Spliterator<TT;>;
MethodParameters:
Name Flags
helper
spliterator
<P_IN> java.util.stream.Node<T> opEvaluateParallel(java.util.stream.PipelineHelper<T>, java.util.Spliterator<P_IN>, java.util.function.IntFunction<T[]>);
descriptor: (Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;Ljava/util/function/IntFunction;)Ljava/util/stream/Node;
flags: (0x0000)
Code:
stack=10, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
invokevirtual java.util.stream.PipelineHelper.exactOutputSizeIfKnown:(Ljava/util/Spliterator;)J
lstore 4
start local 4 1: lload 4
lconst_0
lcmp
ifle 4
aload 2
sipush 16384
invokeinterface java.util.Spliterator.hasCharacteristics:(I)Z
ifeq 4
2: aload 1
invokevirtual java.util.stream.PipelineHelper.getSourceShape:()Ljava/util/stream/StreamShape;
aload 2
aload 0
getfield java.util.stream.SliceOps$1.val$skip:J
aload 0
getfield java.util.stream.SliceOps$1.val$limit:J
invokestatic java.util.stream.SliceOps.sliceSpliterator:(Ljava/util/stream/StreamShape;Ljava/util/Spliterator;JJ)Ljava/util/Spliterator;
astore 6
start local 6 3: aload 1
aload 6
iconst_1
aload 3
invokestatic java.util.stream.Nodes.collect:(Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;ZLjava/util/function/IntFunction;)Ljava/util/stream/Node;
areturn
end local 6 4: StackMap locals: long
StackMap stack:
getstatic java.util.stream.StreamOpFlag.ORDERED:Ljava/util/stream/StreamOpFlag;
aload 1
invokevirtual java.util.stream.PipelineHelper.getStreamAndOpFlags:()I
invokevirtual java.util.stream.StreamOpFlag.isKnown:(I)Z
ifne 10
5: aload 0
6: aload 1
aload 2
invokevirtual java.util.stream.PipelineHelper.wrapSpliterator:(Ljava/util/Spliterator;)Ljava/util/Spliterator;
7: aload 0
getfield java.util.stream.SliceOps$1.val$skip:J
aload 0
getfield java.util.stream.SliceOps$1.val$limit:J
lload 4
8: invokevirtual java.util.stream.SliceOps$1.unorderedSkipLimitSpliterator:(Ljava/util/Spliterator;JJJ)Ljava/util/Spliterator;
astore 6
start local 6 9: aload 0
aload 6
iconst_1
aload 3
invokestatic java.util.stream.Nodes.collect:(Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;ZLjava/util/function/IntFunction;)Ljava/util/stream/Node;
areturn
end local 6 10: StackMap locals:
StackMap stack:
new java.util.stream.SliceOps$SliceTask
dup
aload 0
aload 1
aload 2
aload 3
aload 0
getfield java.util.stream.SliceOps$1.val$skip:J
aload 0
getfield java.util.stream.SliceOps$1.val$limit:J
invokespecial java.util.stream.SliceOps$SliceTask.<init>:(Ljava/util/stream/AbstractPipeline;Ljava/util/stream/PipelineHelper;Ljava/util/Spliterator;Ljava/util/function/IntFunction;JJ)V
11: invokevirtual java.util.stream.SliceOps$SliceTask.invoke:()Ljava/lang/Object;
checkcast java.util.stream.Node
12: areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljava/util/stream/SliceOps$1;
0 13 1 helper Ljava/util/stream/PipelineHelper<TT;>;
0 13 2 spliterator Ljava/util/Spliterator<TP_IN;>;
0 13 3 generator Ljava/util/function/IntFunction<[TT;>;
1 13 4 size J
3 4 6 s Ljava/util/Spliterator<TP_IN;>;
9 10 6 s Ljava/util/Spliterator<TT;>;
Signature: <P_IN:Ljava/lang/Object;>(Ljava/util/stream/PipelineHelper<TT;>;Ljava/util/Spliterator<TP_IN;>;Ljava/util/function/IntFunction<[TT;>;)Ljava/util/stream/Node<TT;>;
MethodParameters:
Name Flags
helper
spliterator
generator
java.util.stream.Sink<T> opWrapSink(int, java.util.stream.Sink<T>);
descriptor: (ILjava/util/stream/Sink;)Ljava/util/stream/Sink;
flags: (0x0000)
Code:
stack=8, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new java.util.stream.SliceOps$1$1
dup
aload 0
aload 2
aload 0
getfield java.util.stream.SliceOps$1.val$skip:J
aload 0
getfield java.util.stream.SliceOps$1.val$limit:J
invokespecial java.util.stream.SliceOps$1$1.<init>:(Ljava/util/stream/SliceOps$1;Ljava/util/stream/Sink;JJ)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/stream/SliceOps$1;
0 1 1 flags I
0 1 2 sink Ljava/util/stream/Sink<TT;>;
Signature: (ILjava/util/stream/Sink<TT;>;)Ljava/util/stream/Sink<TT;>;
MethodParameters:
Name Flags
flags
sink
}
Signature: Ljava/util/stream/ReferencePipeline$StatefulOp<TT;TT;>;
SourceFile: "SliceOps.java"
EnclosingMethod: java.util.stream.SliceOps.makeRef:(Ljava/util/stream/AbstractPipeline;JJ)Ljava/util/stream/Stream;
NestHost: java.util.stream.SliceOps
InnerClasses:
abstract StatefulOp = java.util.stream.ReferencePipeline$StatefulOp of java.util.stream.ReferencePipeline
java.util.stream.SliceOps$1
java.util.stream.SliceOps$1$1
private final SliceTask = java.util.stream.SliceOps$SliceTask of java.util.stream.SliceOps
abstract SliceSpliterator = java.util.stream.StreamSpliterators$SliceSpliterator of java.util.stream.StreamSpliterators
final OfRef = java.util.stream.StreamSpliterators$SliceSpliterator$OfRef of java.util.stream.StreamSpliterators$SliceSpliterator
abstract UnorderedSliceSpliterator = java.util.stream.StreamSpliterators$UnorderedSliceSpliterator of java.util.stream.StreamSpliterators
final OfRef = java.util.stream.StreamSpliterators$UnorderedSliceSpliterator$OfRef of java.util.stream.StreamSpliterators$UnorderedSliceSpliterator