public class org.jruby.RubyContinuation extends org.jruby.RubyObject
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.RubyContinuation
super_class: org.jruby.RubyObject
{
private final org.jruby.RubyContinuation$Continuation continuation;
descriptor: Lorg/jruby/RubyContinuation$Continuation;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean disabled;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public static org.jruby.RubyClass createContinuation(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyClass;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
ldc "Continuation"
aload 0
invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
aload 0
invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getAllocator:()Lorg/jruby/runtime/ObjectAllocator;
invokevirtual org.jruby.Ruby.defineClass:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
astore 1
start local 1 1: aload 1
getstatic org.jruby.runtime.ClassIndex.CONTINUATION:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
2: aload 1
ldc Lorg/jruby/RubyContinuation;
invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
3: aload 1
invokevirtual org.jruby.RubyClass.getSingletonClass:()Lorg/jruby/RubyClass;
ldc "new"
invokevirtual org.jruby.RubyClass.undefineMethod:(Ljava/lang/String;)V
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 runtime Lorg/jruby/Ruby;
1 5 1 cContinuation Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
public void <init>(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 1
invokevirtual org.jruby.Ruby.getContinuation:()Lorg/jruby/RubyClass;
invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: aload 0
new org.jruby.RubyContinuation$Continuation
dup
invokespecial org.jruby.RubyContinuation$Continuation.<init>:()V
putfield org.jruby.RubyContinuation.continuation:Lorg/jruby/RubyContinuation$Continuation;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyContinuation;
0 3 1 runtime Lorg/jruby/Ruby;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
runtime
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=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 1
invokevirtual org.jruby.Ruby.getContinuation:()Lorg/jruby/RubyClass;
invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: aload 0
new org.jruby.RubyContinuation$Continuation
dup
aload 2
invokespecial org.jruby.RubyContinuation$Continuation.<init>:(Lorg/jruby/runtime/builtin/IRubyObject;)V
putfield org.jruby.RubyContinuation.continuation:Lorg/jruby/RubyContinuation$Continuation;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyContinuation;
0 3 1 runtime Lorg/jruby/Ruby;
0 3 2 tag Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
runtime
tag
public org.jruby.RubyContinuation$Continuation getContinuation();
descriptor: ()Lorg/jruby/RubyContinuation$Continuation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyContinuation.continuation:Lorg/jruby/RubyContinuation$Continuation;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyContinuation;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyContinuation.disabled:Z
ifeq 5
1: aload 1
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getThreadError:()Lorg/jruby/RubyClass;
2: iconst_1
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "continuations can not be called from outside their scope"
invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
aastore
3: getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
4: invokestatic org.jruby.RubyKernel.raise:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
5: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyContinuation.continuation:Lorg/jruby/RubyContinuation$Continuation;
aload 2
putfield org.jruby.RubyContinuation$Continuation.args:[Lorg/jruby/runtime/builtin/IRubyObject;
6: aload 0
getfield org.jruby.RubyContinuation.continuation:Lorg/jruby/RubyContinuation$Continuation;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/RubyContinuation;
0 7 1 context Lorg/jruby/runtime/ThreadContext;
0 7 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
args
public org.jruby.runtime.builtin.IRubyObject enter(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=3, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
aload 1
aload 2
invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 6
1: aload 0
iconst_1
putfield org.jruby.RubyContinuation.disabled:Z
2: aload 6
areturn
3: StackMap locals:
StackMap stack: org.jruby.RubyContinuation$Continuation
astore 4
start local 4 4: aload 4
aload 0
getfield org.jruby.RubyContinuation.continuation:Lorg/jruby/RubyContinuation$Continuation;
if_acmpne 16
5: aload 0
getfield org.jruby.RubyContinuation.continuation:Lorg/jruby/RubyContinuation$Continuation;
getfield org.jruby.RubyContinuation$Continuation.args:[Lorg/jruby/runtime/builtin/IRubyObject;
arraylength
ifne 9
6: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
astore 6
7: aload 0
iconst_1
putfield org.jruby.RubyContinuation.disabled:Z
8: aload 6
areturn
9: StackMap locals: org.jruby.RubyContinuation$Continuation
StackMap stack:
aload 0
getfield org.jruby.RubyContinuation.continuation:Lorg/jruby/RubyContinuation$Continuation;
getfield org.jruby.RubyContinuation$Continuation.args:[Lorg/jruby/runtime/builtin/IRubyObject;
arraylength
iconst_1
if_icmpne 13
10: aload 0
getfield org.jruby.RubyContinuation.continuation:Lorg/jruby/RubyContinuation$Continuation;
getfield org.jruby.RubyContinuation$Continuation.args:[Lorg/jruby/runtime/builtin/IRubyObject;
iconst_0
aaload
astore 6
11: aload 0
iconst_1
putfield org.jruby.RubyContinuation.disabled:Z
12: aload 6
areturn
13: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyContinuation.continuation:Lorg/jruby/RubyContinuation$Continuation;
getfield org.jruby.RubyContinuation$Continuation.args:[Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyArray.newArrayMayCopy:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
astore 6
14: aload 0
iconst_1
putfield org.jruby.RubyContinuation.disabled:Z
15: aload 6
areturn
16: StackMap locals:
StackMap stack:
aload 4
athrow
end local 4 17: StackMap locals: org.jruby.RubyContinuation org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.Block
StackMap stack: java.lang.Throwable
astore 5
18: aload 0
iconst_1
putfield org.jruby.RubyContinuation.disabled:Z
19: aload 5
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/jruby/RubyContinuation;
0 20 1 context Lorg/jruby/runtime/ThreadContext;
0 20 2 yielded Lorg/jruby/runtime/builtin/IRubyObject;
0 20 3 block Lorg/jruby/runtime/Block;
4 17 4 c Lorg/jruby/RubyContinuation$Continuation;
Exception table:
from to target type
0 1 3 Class org.jruby.RubyContinuation$Continuation
0 1 17 any
3 7 17 any
9 11 17 any
13 14 17 any
16 17 17 any
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
yielded
block
}
SourceFile: "RubyContinuation.java"
NestMembers:
org.jruby.RubyContinuation$Continuation
InnerClasses:
public Continuation = org.jruby.RubyContinuation$Continuation of org.jruby.RubyContinuation
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyClass(name = {"Continuation"})
java.lang.Deprecated()