public final class org.jruby.RubyEnumerable$ChunkedBlockCallback implements org.jruby.runtime.BlockCallback
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.jruby.RubyEnumerable$ChunkedBlockCallback
super_class: java.lang.Object
{
private final org.jruby.Ruby runtime;
descriptor: Lorg/jruby/Ruby;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.jruby.runtime.builtin.IRubyObject enumerator;
descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.jruby.RubyEnumerable$ChunkedBlockCallback.runtime:Lorg/jruby/Ruby;
2: aload 0
aload 2
putfield org.jruby.RubyEnumerable$ChunkedBlockCallback.enumerator:Lorg/jruby/runtime/builtin/IRubyObject;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyEnumerable$ChunkedBlockCallback;
0 4 1 runtime Lorg/jruby/Ruby;
0 4 2 enumerator Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
runtime
enumerator
public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.RubyEnumerable$ChunkedBlockCallback.enumerator:Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.getInternalVariables:()Lorg/jruby/runtime/builtin/InternalVariables;
astore 4
start local 4 1: aload 4
ldc "chunk_enumerable"
invokeinterface org.jruby.runtime.builtin.InternalVariables.getInternalVariable:(Ljava/lang/String;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
astore 5
start local 5 2: aload 4
ldc "chunk_categorize"
invokeinterface org.jruby.runtime.builtin.InternalVariables.getInternalVariable:(Ljava/lang/String;)Ljava/lang/Object;
checkcast org.jruby.RubyProc
astore 6
start local 6 3: aload 1
aload 2
invokestatic org.jruby.RubyEnumerable.packEnumValues:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 7
start local 7 4: new org.jruby.RubyEnumerable$ChunkArg
dup
aload 1
invokespecial org.jruby.RubyEnumerable$ChunkArg.<init>:(Lorg/jruby/runtime/ThreadContext;)V
astore 8
start local 8 5: aload 0
getfield org.jruby.RubyEnumerable$ChunkedBlockCallback.runtime:Lorg/jruby/Ruby;
ldc "_alone"
invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
astore 9
start local 9 6: aload 0
getfield org.jruby.RubyEnumerable$ChunkedBlockCallback.runtime:Lorg/jruby/Ruby;
ldc "_separator"
invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
astore 10
start local 10 7: aload 1
aload 5
getstatic org.jruby.runtime.Signature.OPTIONAL:Lorg/jruby/runtime/Signature;
new org.jruby.RubyEnumerable$ChunkedBlockCallback$1
dup
aload 0
aload 6
aload 9
aload 8
aload 7
aload 10
invokespecial org.jruby.RubyEnumerable$ChunkedBlockCallback$1.<init>:(Lorg/jruby/RubyEnumerable$ChunkedBlockCallback;Lorg/jruby/RubyProc;Lorg/jruby/RubySymbol;Lorg/jruby/RubyEnumerable$ChunkArg;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubySymbol;)V
invokestatic org.jruby.RubyEnumerable.callEach:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Signature;Lorg/jruby/runtime/BlockCallback;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
8: aload 8
getfield org.jruby.RubyEnumerable$ChunkArg.prev_elts:Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 10
9: aload 7
aload 1
ldc "<<"
aload 0
getfield org.jruby.RubyEnumerable$ChunkedBlockCallback.runtime:Lorg/jruby/Ruby;
aload 8
getfield org.jruby.RubyEnumerable$ChunkArg.prev_value:Lorg/jruby/runtime/builtin/IRubyObject;
aload 8
getfield org.jruby.RubyEnumerable$ChunkArg.prev_elts:Lorg/jruby/runtime/builtin/IRubyObject;
invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
10: StackMap locals: org.jruby.RubyEnumerable$ChunkedBlockCallback org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.runtime.builtin.InternalVariables org.jruby.runtime.builtin.IRubyObject org.jruby.RubyProc org.jruby.runtime.builtin.IRubyObject org.jruby.RubyEnumerable$ChunkArg org.jruby.RubySymbol org.jruby.RubySymbol
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 10 end local 9 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 11 0 this Lorg/jruby/RubyEnumerable$ChunkedBlockCallback;
0 11 1 context Lorg/jruby/runtime/ThreadContext;
0 11 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
0 11 3 block Lorg/jruby/runtime/Block;
1 11 4 variables Lorg/jruby/runtime/builtin/InternalVariables;
2 11 5 enumerable Lorg/jruby/runtime/builtin/IRubyObject;
3 11 6 categorize Lorg/jruby/RubyProc;
4 11 7 yielder Lorg/jruby/runtime/builtin/IRubyObject;
5 11 8 arg Lorg/jruby/RubyEnumerable$ChunkArg;
6 11 9 alone Lorg/jruby/RubySymbol;
7 11 10 separator Lorg/jruby/RubySymbol;
MethodParameters:
Name Flags
context
args
block
}
SourceFile: "RubyEnumerable.java"
NestHost: org.jruby.RubyEnumerable
InnerClasses:
private final ChunkArg = org.jruby.RubyEnumerable$ChunkArg of org.jruby.RubyEnumerable
public final ChunkedBlockCallback = org.jruby.RubyEnumerable$ChunkedBlockCallback of org.jruby.RubyEnumerable
org.jruby.RubyEnumerable$ChunkedBlockCallback$1