public class org.jruby.RubyRange extends org.jruby.RubyObject
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.RubyRange
super_class: org.jruby.RubyObject
{
private org.jruby.runtime.builtin.IRubyObject begin;
descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
private org.jruby.runtime.builtin.IRubyObject end;
descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
private boolean isExclusive;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean isInited;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private static final org.jruby.runtime.ObjectAllocator RANGE_ALLOCATOR;
descriptor: Lorg/jruby/runtime/ObjectAllocator;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.jruby.RubyRange$InspectRecursive INSPECT_RECURSIVE;
descriptor: Lorg/jruby/RubyRange$InspectRecursive;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] DOTDOTDOT;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.jruby.runtime.ObjectMarshal RANGE_MARSHAL;
descriptor: Lorg/jruby/runtime/ObjectMarshal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new org.jruby.RubyRange$1
dup
invokespecial org.jruby.RubyRange$1.<init>:()V
putstatic org.jruby.RubyRange.RANGE_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
1: new org.jruby.RubyRange$InspectRecursive
dup
invokespecial org.jruby.RubyRange$InspectRecursive.<init>:()V
putstatic org.jruby.RubyRange.INSPECT_RECURSIVE:Lorg/jruby/RubyRange$InspectRecursive;
2: iconst_3
newarray 8
dup
iconst_0
bipush 46
bastore
dup
iconst_1
bipush 46
bastore
dup
iconst_2
bipush 46
bastore
putstatic org.jruby.RubyRange.DOTDOTDOT:[B
3: new org.jruby.RubyRange$2
dup
invokespecial org.jruby.RubyRange$2.<init>:()V
putstatic org.jruby.RubyRange.RANGE_MARSHAL:Lorg/jruby/runtime/ObjectMarshal;
4: return
LocalVariableTable:
Start End Slot Name Signature
public static org.jruby.RubyClass createRangeClass(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 "Range"
aload 0
invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
getstatic org.jruby.RubyRange.RANGE_ALLOCATOR: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.RANGE:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
2: aload 1
ldc Lorg/jruby/RubyRange;
invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
3: aload 1
new org.jruby.RubyModule$JavaClassKindOf
dup
ldc Lorg/jruby/RubyRange;
invokespecial org.jruby.RubyModule$JavaClassKindOf.<init>:(Ljava/lang/Class;)V
putfield org.jruby.RubyClass.kindOf:Lorg/jruby/RubyModule$KindOf;
4: aload 1
getstatic org.jruby.RubyRange.RANGE_MARSHAL:Lorg/jruby/runtime/ObjectMarshal;
invokevirtual org.jruby.RubyClass.setMarshal:(Lorg/jruby/runtime/ObjectMarshal;)V
5: aload 1
aload 0
invokevirtual org.jruby.Ruby.getEnumerable:()Lorg/jruby/RubyModule;
invokevirtual org.jruby.RubyClass.includeModule:(Lorg/jruby/runtime/builtin/IRubyObject;)V
6: aload 1
ldc Lorg/jruby/RubyRange;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
7: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 runtime Lorg/jruby/Ruby;
1 8 1 result Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
private void <init>(org.jruby.Ruby, org.jruby.RubyClass);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: aload 0
iconst_0
putfield org.jruby.RubyRange.isInited:Z
2: aload 0
aload 0
aload 1
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
dup_x1
putfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
putfield org.jruby.RubyRange.begin: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/RubyRange;
0 4 1 runtime Lorg/jruby/Ruby;
0 4 2 klass Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
klass
public static org.jruby.RubyRange newRange(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, boolean);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyRange;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.jruby.RubyRange
dup
aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getRange:()Lorg/jruby/RubyClass;
invokespecial org.jruby.RubyRange.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
astore 4
start local 4 1: aload 4
aload 0
aload 1
aload 2
iload 3
invokevirtual org.jruby.RubyRange.init:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
2: aload 4
iconst_1
putfield org.jruby.RubyRange.isInited:Z
3: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 context Lorg/jruby/runtime/ThreadContext;
0 4 1 begin Lorg/jruby/runtime/builtin/IRubyObject;
0 4 2 end Lorg/jruby/runtime/builtin/IRubyObject;
0 4 3 isExclusive Z
1 4 4 range Lorg/jruby/RubyRange;
MethodParameters:
Name Flags
context
begin
end
isExclusive
public static org.jruby.RubyRange newInclusiveRange(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyRange;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_0
invokestatic org.jruby.RubyRange.newRange:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyRange;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 begin Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 end Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
begin
end
public static org.jruby.RubyRange newExclusiveRange(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyRange;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_1
invokestatic org.jruby.RubyRange.newRange:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyRange;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 begin Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 end Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
begin
end
public void copySpecialInstanceVariables(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
checkcast org.jruby.RubyRange
astore 2
start local 2 1: aload 2
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
putfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
2: aload 2
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
putfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
3: aload 2
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
putfield org.jruby.RubyRange.isExclusive:Z
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyRange;
0 5 1 clone Lorg/jruby/runtime/builtin/IRubyObject;
1 5 2 range Lorg/jruby/RubyRange;
MethodParameters:
Name Flags
clone
final boolean checkBegin(long);
descriptor: (J)Z
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyNumeric.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
lstore 3
start local 3 1: lload 3
lconst_0
lcmp
ifge 5
2: lload 3
lload 1
ladd
lstore 3
3: lload 3
lconst_0
lcmp
ifge 7
4: iconst_0
ireturn
5: StackMap locals: long
StackMap stack:
lload 1
lload 3
lcmp
ifge 7
6: iconst_0
ireturn
7: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/RubyRange;
0 8 1 length J
1 8 3 beg J
MethodParameters:
Name Flags
length
final long[] begLen(long, int);
descriptor: (JI)[J
flags: (0x0010) ACC_FINAL
Code:
stack=5, locals=8, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyNumeric.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
lstore 4
start local 4 1: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyNumeric.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
lstore 6
start local 6 2: lload 4
lconst_0
lcmp
ifge 10
3: lload 4
lload 1
ladd
lstore 4
4: lload 4
lconst_0
lcmp
ifge 10
5: iload 3
ifeq 9
6: aload 0
invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
lload 4
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 7
ldc "."
goto 8
StackMap locals: org.jruby.RubyRange long int long long
StackMap stack: org.jruby.Ruby java.lang.StringBuilder
7: ldc ""
StackMap locals: org.jruby.RubyRange long int long long
StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
8: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 6
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " out of range"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
9: StackMap locals:
StackMap stack:
aconst_null
areturn
10: StackMap locals:
StackMap stack:
iload 3
ifeq 11
iload 3
iconst_2
if_icmpne 19
11: StackMap locals:
StackMap stack:
lload 4
lload 1
lcmp
ifle 17
12: iload 3
ifeq 16
13: aload 0
invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
lload 4
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 14
ldc "."
goto 15
StackMap locals: org.jruby.RubyRange long int long long
StackMap stack: org.jruby.Ruby java.lang.StringBuilder
14: ldc ""
StackMap locals: org.jruby.RubyRange long int long long
StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
15: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 6
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " out of range"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
16: StackMap locals:
StackMap stack:
aconst_null
areturn
17: StackMap locals:
StackMap stack:
lload 6
lload 1
lcmp
ifle 19
18: lload 1
lstore 6
19: StackMap locals:
StackMap stack:
lload 6
lconst_0
lcmp
ifge 21
20: lload 6
lload 1
ladd
lstore 6
21: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifne 23
22: lload 6
lconst_1
ladd
lstore 6
23: StackMap locals:
StackMap stack:
lload 6
lload 4
lsub
lstore 1
24: lload 1
lconst_0
lcmp
ifge 26
25: lconst_0
lstore 1
26: StackMap locals:
StackMap stack:
iconst_2
newarray 11
dup
iconst_0
lload 4
lastore
dup
iconst_1
lload 1
lastore
areturn
end local 6 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/jruby/RubyRange;
0 27 1 len J
0 27 3 err I
1 27 4 beg J
2 27 6 end J
MethodParameters:
Name Flags
len
err
final long begLen0(long);
descriptor: (J)J
flags: (0x0010) ACC_FINAL
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyNumeric.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
lstore 3
start local 3 1: lload 3
lconst_0
lcmp
ifge 7
2: lload 3
lload 1
ladd
lstore 3
3: lload 3
lconst_0
lcmp
ifge 7
4: aload 0
invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
lload 3
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 5
ldc "."
goto 6
StackMap locals: org.jruby.RubyRange long long
StackMap stack: org.jruby.Ruby java.lang.StringBuilder
5: ldc ""
StackMap locals: org.jruby.RubyRange long long
StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
6: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " out of range"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
7: StackMap locals:
StackMap stack:
lload 3
lreturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/RubyRange;
0 8 1 len J
1 8 3 beg J
MethodParameters:
Name Flags
len
final long begLen1(long, int);
descriptor: (JI)J
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyNumeric.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
lstore 4
start local 4 1: lload 4
lconst_0
lcmp
ifge 3
2: lload 4
lload 1
ladd
lstore 4
3: StackMap locals: long
StackMap stack:
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifne 5
4: lload 4
lconst_1
ladd
lstore 4
5: StackMap locals:
StackMap stack:
lload 4
iload 3
i2l
lsub
lstore 1
6: lload 1
lconst_0
lcmp
ifge 8
7: lconst_0
lstore 1
8: StackMap locals:
StackMap stack:
lload 1
lreturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/jruby/RubyRange;
0 9 1 len J
0 9 3 beg I
1 9 4 end J
MethodParameters:
Name Flags
len
beg
final int[] begLenInt(int, int);
descriptor: (II)[I
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 3
start local 3 1: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 4
start local 4 2: iload 3
ifge 10
3: iload 3
iload 1
iadd
istore 3
4: iload 3
ifge 10
5: iload 2
ifeq 9
6: aload 0
invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
iload 3
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 7
ldc "."
goto 8
StackMap locals: org.jruby.RubyRange int int int int
StackMap stack: org.jruby.Ruby java.lang.StringBuilder
7: ldc ""
StackMap locals: org.jruby.RubyRange int int int int
StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
8: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " out of range"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
9: StackMap locals:
StackMap stack:
aconst_null
areturn
10: StackMap locals:
StackMap stack:
iload 2
ifeq 11
iload 2
iconst_2
if_icmpne 19
11: StackMap locals:
StackMap stack:
iload 3
iload 1
if_icmple 17
12: iload 2
ifeq 16
13: aload 0
invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
iload 3
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 14
ldc "."
goto 15
StackMap locals: org.jruby.RubyRange int int int int
StackMap stack: org.jruby.Ruby java.lang.StringBuilder
14: ldc ""
StackMap locals: org.jruby.RubyRange int int int int
StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
15: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " out of range"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
16: StackMap locals:
StackMap stack:
aconst_null
areturn
17: StackMap locals:
StackMap stack:
iload 4
iload 1
if_icmple 19
18: iload 1
istore 4
19: StackMap locals:
StackMap stack:
iload 4
ifge 21
20: iload 4
iload 1
iadd
istore 4
21: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifne 23
22: iinc 4 1
23: StackMap locals:
StackMap stack:
iload 4
iload 3
isub
istore 1
24: iload 1
ifge 26
25: iconst_0
istore 1
26: StackMap locals:
StackMap stack:
iconst_2
newarray 10
dup
iconst_0
iload 3
iastore
dup
iconst_1
iload 1
iastore
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/jruby/RubyRange;
0 27 1 len I
0 27 2 err I
1 27 3 beg I
2 27 4 end I
MethodParameters:
Name Flags
len
err final
private void init(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, boolean);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
instanceof org.jruby.RubyFixnum
ifeq 1
aload 3
instanceof org.jruby.RubyFixnum
ifne 4
1: StackMap locals:
StackMap stack:
aload 1
aload 2
getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_CMP:Lorg/jruby/runtime/invokedynamic/MethodNames;
aload 3
invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 2: aload 5
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 4
3: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "bad value for range"
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 5 4: StackMap locals:
StackMap stack:
aload 0
aload 2
putfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
5: aload 0
aload 3
putfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
6: aload 0
iload 4
putfield org.jruby.RubyRange.isExclusive:Z
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/RubyRange;
0 8 1 context Lorg/jruby/runtime/ThreadContext;
0 8 2 begin Lorg/jruby/runtime/builtin/IRubyObject;
0 8 3 end Lorg/jruby/runtime/builtin/IRubyObject;
0 8 4 isExclusive Z
2 4 5 result Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
begin
end
isExclusive
public org.jruby.runtime.builtin.IRubyObject initialize(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=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.RubyRange.isInited:Z
ifeq 2
1: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "`initialize' called twice"
ldc "initialize"
invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.RubyRange.checkFrozen:()V
3: aload 0
aload 1
aload 2
iconst_0
aaload
aload 2
iconst_1
aaload
aload 2
arraylength
iconst_2
if_icmple 4
aload 2
iconst_2
aaload
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifeq 4
iconst_1
goto 5
StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block
StackMap stack: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject
4: iconst_0
StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block
StackMap stack: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject int
5: invokevirtual org.jruby.RubyRange.init:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
6: aload 0
iconst_1
putfield org.jruby.RubyRange.isInited:Z
7: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/RubyRange;
0 8 1 context Lorg/jruby/runtime/ThreadContext;
0 8 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
0 8 3 unusedBlock Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(required = 2, optional = 1, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
context
args
unusedBlock
public org.jruby.runtime.builtin.IRubyObject initialize_copy(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=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyRange.isInited:Z
ifeq 2
1: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "`initialize' called twice"
ldc "initialize"
invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
2: StackMap locals:
StackMap stack:
aload 2
checkcast org.jruby.RubyRange
astore 3
start local 3 3: aload 0
aload 1
aload 3
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
aload 3
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
aload 3
getfield org.jruby.RubyRange.isExclusive:Z
invokevirtual org.jruby.RubyRange.init:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
4: aload 0
iconst_1
putfield org.jruby.RubyRange.isInited:Z
5: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/RubyRange;
0 6 1 context Lorg/jruby/runtime/ThreadContext;
0 6 2 original Lorg/jruby/runtime/builtin/IRubyObject;
3 6 3 other Lorg/jruby/RubyRange;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(required = 1, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
context
original
public org.jruby.RubyFixnum hash();
descriptor: ()Lorg/jruby/RubyFixnum;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield org.jruby.RubyRange.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
invokevirtual org.jruby.RubyRange.hash:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
public org.jruby.RubyFixnum hash(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 2
start local 2 1: aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 2
iconst_1
goto 3
StackMap locals: org.jruby.Ruby
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 3
start local 3 4: iload 3
i2l
lstore 4
start local 4 5: aload 2
lload 4
invokestatic org.jruby.runtime.Helpers.hashStart:(Lorg/jruby/Ruby;J)J
lstore 4
6: aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.runtime.Helpers.safeHash:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyFixnum;
astore 6
start local 6 7: lload 4
aload 6
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
invokevirtual org.jruby.RubyInteger.getLongValue:()J
invokestatic org.jruby.runtime.Helpers.murmurCombine:(JJ)J
lstore 4
8: aload 1
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.runtime.Helpers.safeHash:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyFixnum;
astore 6
9: lload 4
aload 6
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
invokevirtual org.jruby.RubyInteger.getLongValue:()J
invokestatic org.jruby.runtime.Helpers.murmurCombine:(JJ)J
lstore 4
10: lload 4
iload 3
bipush 24
ishl
i2l
invokestatic org.jruby.runtime.Helpers.murmurCombine:(JJ)J
lstore 4
11: lload 4
invokestatic org.jruby.runtime.Helpers.hashEnd:(J)J
lstore 4
12: aload 2
lload 4
invokevirtual org.jruby.Ruby.newFixnum:(J)Lorg/jruby/RubyFixnum;
areturn
end local 6 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 Lorg/jruby/RubyRange;
0 13 1 context Lorg/jruby/runtime/ThreadContext;
1 13 2 runtime Lorg/jruby/Ruby;
4 13 3 exclusiveBit I
5 13 4 hash J
7 13 6 v Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"hash"})
MethodParameters:
Name Flags
context
private static org.jruby.RubyString inspectValue(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getstatic org.jruby.RubyRange.INSPECT_RECURSIVE:Lorg/jruby/RubyRange$InspectRecursive;
aload 1
aload 1
ldc "inspect"
iconst_1
invokevirtual org.jruby.runtime.ThreadContext.safeRecurse:(Lorg/jruby/runtime/ThreadContext$RecursiveFunctionEx;Ljava/lang/Object;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyString
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 value Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context final
value
public org.jruby.runtime.builtin.IRubyObject inspect();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
invokevirtual org.jruby.RubyRange.inspect:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
public org.jruby.RubyString inspect(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRange.inspectValue:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
astore 2
start local 2 1: aload 1
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRange.inspectValue:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
astore 3
start local 3 2: aload 2
getstatic org.jruby.RubyRange.DOTDOTDOT:[B
iconst_0
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 3
iconst_3
goto 4
StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.RubyString
StackMap stack: org.jruby.RubyString byte[] int
3: iconst_2
StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.RubyString
StackMap stack: org.jruby.RubyString byte[] int int
4: invokevirtual org.jruby.RubyString.cat:([BII)Lorg/jruby/RubyString;
pop
5: aload 2
aload 3
invokevirtual org.jruby.RubyString.append:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
pop
6: aload 2
aload 3
invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
pop
7: aload 2
aload 0
invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
pop
8: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/jruby/RubyRange;
0 9 1 context Lorg/jruby/runtime/ThreadContext;
1 9 2 i1 Lorg/jruby/RubyString;
2 9 3 i2 Lorg/jruby/RubyString;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"inspect"})
MethodParameters:
Name Flags
context final
public org.jruby.runtime.builtin.IRubyObject to_s();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.RubyRange.to_s:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
public org.jruby.runtime.builtin.IRubyObject to_s(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.RubyRange.to_s:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"to_s"})
MethodParameters:
Name Flags
context final
private org.jruby.RubyString to_s(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.asString:()Lorg/jruby/RubyString;
aload 1
invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
astore 2
start local 2 1: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.asString:()Lorg/jruby/RubyString;
astore 3
start local 3 2: aload 2
getstatic org.jruby.RubyRange.DOTDOTDOT:[B
iconst_0
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 3
iconst_3
goto 4
StackMap locals: org.jruby.RubyRange org.jruby.Ruby org.jruby.RubyString org.jruby.RubyString
StackMap stack: org.jruby.RubyString byte[] int
3: iconst_2
StackMap locals: org.jruby.RubyRange org.jruby.Ruby org.jruby.RubyString org.jruby.RubyString
StackMap stack: org.jruby.RubyString byte[] int int
4: invokevirtual org.jruby.RubyString.cat:([BII)Lorg/jruby/RubyString;
pop
5: aload 2
aload 3
invokevirtual org.jruby.RubyString.append:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
pop
6: aload 2
aload 3
invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
pop
7: aload 2
aload 0
invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
pop
8: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/jruby/RubyRange;
0 9 1 runtime Lorg/jruby/Ruby;
1 9 2 i1 Lorg/jruby/RubyString;
2 9 3 i2 Lorg/jruby/RubyString;
MethodParameters:
Name Flags
runtime final
public org.jruby.RubyBoolean exclude_end_p();
descriptor: ()Lorg/jruby/RubyBoolean;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"exclude_end?"})
public org.jruby.runtime.builtin.IRubyObject eql_p(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=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
getstatic org.jruby.runtime.invokedynamic.MethodNames.EQL:Lorg/jruby/runtime/invokedynamic/MethodNames;
invokevirtual org.jruby.RubyRange.equalityInner:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"eql?"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_equal(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=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_EQUAL:Lorg/jruby/runtime/invokedynamic/MethodNames;
invokevirtual org.jruby.RubyRange.equalityInner:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"=="}, required = 1)
MethodParameters:
Name Flags
context
other
private org.jruby.runtime.builtin.IRubyObject equalityInner(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.invokedynamic.MethodNames);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 2
if_acmpne 1
aload 1
getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
areturn
1: StackMap locals:
StackMap stack:
aload 2
instanceof org.jruby.RubyRange
ifne 2
aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
areturn
2: StackMap locals:
StackMap stack:
aload 2
checkcast org.jruby.RubyRange
astore 4
start local 4 3: aload 1
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
aload 4
getfield org.jruby.RubyRange.isExclusive:Z
if_icmpne 6
4: aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
aload 3
aload 4
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifeq 6
5: aload 1
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
aload 3
aload 4
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifeq 6
iconst_1
goto 7
StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.invokedynamic.MethodNames org.jruby.RubyRange
StackMap stack: org.jruby.runtime.ThreadContext
6: iconst_0
7: StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.invokedynamic.MethodNames org.jruby.RubyRange
StackMap stack: org.jruby.runtime.ThreadContext int
invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/RubyRange;
0 8 1 context Lorg/jruby/runtime/ThreadContext;
0 8 2 other Lorg/jruby/runtime/builtin/IRubyObject;
0 8 3 equalityCheck Lorg/jruby/runtime/invokedynamic/MethodNames;
3 8 4 otherRange Lorg/jruby/RubyRange;
MethodParameters:
Name Flags
context
other
equalityCheck
private static org.jruby.runtime.builtin.IRubyObject rangeLt(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_CMP:Lorg/jruby/runtime/invokedynamic/MethodNames;
aload 2
invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
start local 3 1: aload 3
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 3
2: aconst_null
areturn
3: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 0
aload 3
aload 1
aload 2
invokestatic org.jruby.RubyComparable.cmpint:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)I
ifge 4
aload 0
getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
goto 5
StackMap locals:
StackMap stack:
4: aconst_null
StackMap locals:
StackMap stack: org.jruby.RubyBoolean
5: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 context Lorg/jruby/runtime/ThreadContext;
0 6 1 a Lorg/jruby/runtime/builtin/IRubyObject;
0 6 2 b Lorg/jruby/runtime/builtin/IRubyObject;
1 6 3 result Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
a
b
private static org.jruby.runtime.builtin.IRubyObject rangeLe(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_CMP:Lorg/jruby/runtime/invokedynamic/MethodNames;
aload 2
invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
start local 3 1: aload 3
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 3
2: aconst_null
areturn
3: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 0
aload 3
aload 1
aload 2
invokestatic org.jruby.RubyComparable.cmpint:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 4
start local 4 4: iload 4
ifne 6
5: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
areturn
6: StackMap locals: int
StackMap stack:
iload 4
ifge 7
aload 0
getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
goto 8
StackMap locals:
StackMap stack:
7: aconst_null
StackMap locals:
StackMap stack: org.jruby.RubyBoolean
8: areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 context Lorg/jruby/runtime/ThreadContext;
0 9 1 a Lorg/jruby/runtime/builtin/IRubyObject;
0 9 2 b Lorg/jruby/runtime/builtin/IRubyObject;
1 9 3 result Lorg/jruby/runtime/builtin/IRubyObject;
4 9 4 c I
MethodParameters:
Name Flags
context
a
b
private void rangeEach(org.jruby.runtime.ThreadContext, org.jruby.RubyRange$RangeCallBack);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyRange$RangeCallBack;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
start local 3 1: aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 11
2: goto 5
3: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 2
aload 1
aload 3
invokevirtual org.jruby.RubyRange$RangeCallBack.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)V
4: aload 3
aload 1
ldc "succ"
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
5: StackMap locals:
StackMap stack:
aload 1
aload 3
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRange.rangeLt:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
ifnonnull 3
6: goto 13
start local 4 7: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 2
aload 1
aload 3
invokevirtual org.jruby.RubyRange$RangeCallBack.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)V
8: aload 4
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
if_acmpne 10
9: goto 13
10: StackMap locals:
StackMap stack:
aload 3
aload 1
ldc "succ"
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
end local 4 11: StackMap locals:
StackMap stack:
aload 1
aload 3
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRange.rangeLe:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
dup
astore 4
start local 4 12: ifnull 13
aload 4
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifne 7
end local 4 13: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/jruby/RubyRange;
0 14 1 context Lorg/jruby/runtime/ThreadContext;
0 14 2 callback Lorg/jruby/RubyRange$RangeCallBack;
1 14 3 v Lorg/jruby/runtime/builtin/IRubyObject;
7 11 4 c Lorg/jruby/runtime/builtin/IRubyObject;
12 13 4 c Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
callback
public org.jruby.runtime.builtin.IRubyObject to_a(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyFixnum
ifeq 18
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyFixnum
ifeq 18
2: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyFixnum
invokevirtual org.jruby.RubyFixnum.getLongValue:()J
lstore 4
start local 4 3: aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifne 5
4: lload 4
lconst_1
ladd
lstore 4
5: StackMap locals: org.jruby.Ruby long
StackMap stack:
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyFixnum
invokevirtual org.jruby.RubyFixnum.getLongValue:()J
lstore 6
start local 6 6: lload 4
lload 6
lsub
lstore 8
start local 8 7: lload 8
ldc 2147483647
lcmp
ifle 9
8: aload 3
ldc "Range size too large for to_a"
invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
9: StackMap locals: long long
StackMap stack:
lload 8
lconst_0
lcmp
ifge 11
10: aload 3
invokestatic org.jruby.RubyArray.newEmptyArray:(Lorg/jruby/Ruby;)Lorg/jruby/RubyArray;
areturn
11: StackMap locals:
StackMap stack:
lload 8
l2i
anewarray org.jruby.runtime.builtin.IRubyObject
astore 10
start local 10 12: iconst_0
istore 11
start local 11 13: goto 16
14: StackMap locals: org.jruby.runtime.builtin.IRubyObject[] int
StackMap stack:
aload 10
iload 11
aload 3
lload 6
iload 11
i2l
ladd
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
aastore
15: iinc 11 1
StackMap locals:
StackMap stack:
16: iload 11
i2l
lload 8
lcmp
iflt 14
end local 11 17: aload 3
aload 10
invokestatic org.jruby.RubyArray.newArrayMayCopy:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
areturn
end local 10 end local 8 end local 6 end local 4 18: StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.Ruby
StackMap stack:
aload 1
aload 0
invokestatic org.jruby.RubyEnumerable.to_a:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/jruby/RubyRange;
0 19 1 context Lorg/jruby/runtime/ThreadContext;
0 19 2 block Lorg/jruby/runtime/Block;
1 19 3 runtime Lorg/jruby/Ruby;
3 18 4 lim J
6 18 6 base J
7 18 8 size J
12 18 10 array [Lorg/jruby/runtime/builtin/IRubyObject;
13 17 11 i I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
block final
public org.jruby.runtime.builtin.IRubyObject each19(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyRange.each:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
block final
public org.jruby.runtime.builtin.IRubyObject each(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.jruby.runtime.Block.isGiven:()Z
ifne 2
1: aload 1
aload 0
ldc "each"
aload 0
invokevirtual org.jruby.RubyRange.enumSizeFn:()Lorg/jruby/RubyEnumerator$SizeFn;
invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyFixnum
ifeq 5
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyFixnum
ifeq 5
3: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyRange.fixnumEach:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)V
4: goto 15
StackMap locals:
StackMap stack:
5: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubySymbol
ifeq 8
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubySymbol
ifeq 8
6: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubySymbol
invokevirtual org.jruby.RubySymbol.asString:()Lorg/jruby/RubyString;
aload 1
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubySymbol
invokevirtual org.jruby.RubySymbol.asString:()Lorg/jruby/RubyString;
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
aload 2
iconst_1
invokevirtual org.jruby.RubyString.uptoCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;ZLorg/jruby/runtime/Block;Z)Lorg/jruby/runtime/builtin/IRubyObject;
pop
7: goto 15
8: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.checkStringType:()Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
start local 3 9: aload 3
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 12
10: aload 3
checkcast org.jruby.RubyString
aload 1
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
aload 2
invokevirtual org.jruby.RubyString.uptoCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;ZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
11: goto 15
12: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRange.discreteObject:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
ifne 14
13: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
ldc "can't iterate from "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
14: StackMap locals:
StackMap stack:
aload 0
aload 1
new org.jruby.RubyRange$3
dup
aload 0
aload 2
invokespecial org.jruby.RubyRange$3.<init>:(Lorg/jruby/RubyRange;Lorg/jruby/runtime/Block;)V
invokevirtual org.jruby.RubyRange.rangeEach:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyRange$RangeCallBack;)V
end local 3 15: StackMap locals:
StackMap stack:
aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/jruby/RubyRange;
0 16 1 context Lorg/jruby/runtime/ThreadContext;
0 16 2 block Lorg/jruby/runtime/Block;
9 15 3 tmp Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"each"})
MethodParameters:
Name Flags
context final
block final
private void fixnumEach(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyFixnum
getfield org.jruby.RubyFixnum.value:J
lstore 3
start local 3 1: aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 5
2: lload 3
ldc -9223372036854775808
lcmp
ifne 4
3: return
4: StackMap locals: long
StackMap stack:
lload 3
lconst_1
lsub
lstore 3
5: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyFixnum
getfield org.jruby.RubyFixnum.value:J
lload 3
aload 2
invokestatic org.jruby.RubyInteger.fixnumUpto:(Lorg/jruby/runtime/ThreadContext;JJLorg/jruby/runtime/Block;)V
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/RubyRange;
0 7 1 context Lorg/jruby/runtime/ThreadContext;
0 7 2 block Lorg/jruby/runtime/Block;
1 7 3 to J
MethodParameters:
Name Flags
context
block
public org.jruby.runtime.builtin.IRubyObject step19(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=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
invokevirtual org.jruby.RubyRange.step:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 step Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
step
block
public org.jruby.runtime.builtin.IRubyObject step19(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyRange.step:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
block
public org.jruby.runtime.builtin.IRubyObject step(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.jruby.runtime.Block.isGiven:()Z
ifeq 1
aload 0
aload 1
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
aload 2
invokevirtual org.jruby.RubyRange.stepCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
goto 2
StackMap locals:
StackMap stack:
1: aload 1
aload 0
ldc "step"
aload 0
invokevirtual org.jruby.RubyRange.stepSizeFn:()Lorg/jruby/RubyEnumerator$SizeFn;
invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
2: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyRange;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"step"})
MethodParameters:
Name Flags
context final
block final
public org.jruby.runtime.builtin.IRubyObject step(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=7, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 4
start local 4 1: aload 3
invokevirtual org.jruby.runtime.Block.isGiven:()Z
ifne 3
2: aload 1
aload 0
ldc "step"
iconst_1
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 2
aastore
aload 0
invokevirtual org.jruby.RubyRange.stepSizeFn:()Lorg/jruby/RubyEnumerator$SizeFn;
invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
3: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 2
instanceof org.jruby.RubyNumeric
ifne 5
4: aload 2
ldc "to_int"
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:(Ljava/lang/String;)Lorg/jruby/RubyInteger;
astore 2
5: StackMap locals:
StackMap stack:
aload 4
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
astore 5
start local 5 6: aload 2
aload 1
ldc "<"
aload 5
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifeq 8
7: aload 4
ldc "step can't be negative"
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
8: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 2
aload 1
ldc ">"
aload 5
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifne 10
9: aload 4
ldc "step can't be 0"
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
10: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
invokevirtual org.jruby.RubyRange.stepCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
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/RubyRange;
0 11 1 context Lorg/jruby/runtime/ThreadContext;
0 11 2 step Lorg/jruby/runtime/builtin/IRubyObject;
0 11 3 block Lorg/jruby/runtime/Block;
1 11 4 runtime Lorg/jruby/Ruby;
6 11 5 zero Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"step"})
MethodParameters:
Name Flags
context final
step
block final
private org.jruby.runtime.builtin.IRubyObject stepCommon(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: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 4
start local 4 1: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyFixnum
ifeq 4
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyFixnum
ifeq 4
aload 2
instanceof org.jruby.RubyFixnum
ifeq 4
2: aload 0
aload 1
aload 4
aload 2
checkcast org.jruby.RubyFixnum
invokevirtual org.jruby.RubyFixnum.getLongValue:()J
aload 3
invokevirtual org.jruby.RubyRange.fixnumStep:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;JLorg/jruby/runtime/Block;)V
3: goto 21
StackMap locals: org.jruby.Ruby
StackMap stack:
4: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyFloat
ifne 5
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyFloat
ifne 5
aload 2
instanceof org.jruby.RubyFloat
ifeq 7
5: StackMap locals:
StackMap stack:
aload 1
aload 4
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
aload 2
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
aload 3
invokestatic org.jruby.RubyNumeric.floatStep:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;ZLorg/jruby/runtime/Block;)V
6: goto 21
StackMap locals:
StackMap stack:
7: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyNumeric
ifne 10
8: aload 4
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
ldc "to_int"
invokestatic org.jruby.util.TypeConverter.checkIntegerType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 10
9: aload 4
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
ldc "to_int"
invokestatic org.jruby.util.TypeConverter.checkIntegerType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 12
10: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 4
aload 2
aload 3
invokevirtual org.jruby.RubyRange.numericStep:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)V
11: goto 21
12: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.checkStringType:()Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 13: aload 5
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 18
14: new org.jruby.RubyRange$StepBlockCallBack
dup
aload 3
aload 4
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
aload 2
invokespecial org.jruby.RubyRange$StepBlockCallBack.<init>:(Lorg/jruby/runtime/Block;Lorg/jruby/RubyFixnum;Lorg/jruby/runtime/builtin/IRubyObject;)V
astore 6
start local 6 15: aload 1
aload 0
getstatic org.jruby.runtime.Signature.ONE_ARGUMENT:Lorg/jruby/runtime/Signature;
aload 6
invokestatic org.jruby.runtime.CallBlock.newCallClosure:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Signature;Lorg/jruby/runtime/BlockCallback;)Lorg/jruby/runtime/Block;
astore 7
start local 7 16: aload 5
checkcast org.jruby.RubyString
aload 1
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
aload 7
invokevirtual org.jruby.RubyString.uptoCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;ZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
end local 7 end local 6 17: goto 21
18: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
ldc "succ"
invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsTo:(Ljava/lang/String;)Z
ifne 20
19: aload 4
new java.lang.StringBuilder
dup
ldc "can't iterate from "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
20: StackMap locals:
StackMap stack:
aload 0
aload 1
new org.jruby.RubyRange$StepBlockCallBack
dup
aload 3
aload 4
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
aload 2
invokespecial org.jruby.RubyRange$StepBlockCallBack.<init>:(Lorg/jruby/runtime/Block;Lorg/jruby/RubyFixnum;Lorg/jruby/runtime/builtin/IRubyObject;)V
invokevirtual org.jruby.RubyRange.rangeEach:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyRange$RangeCallBack;)V
end local 5 21: StackMap locals:
StackMap stack:
aload 0
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/jruby/RubyRange;
0 22 1 context Lorg/jruby/runtime/ThreadContext;
0 22 2 step Lorg/jruby/runtime/builtin/IRubyObject;
0 22 3 block Lorg/jruby/runtime/Block;
1 22 4 runtime Lorg/jruby/Ruby;
13 21 5 tmp Lorg/jruby/runtime/builtin/IRubyObject;
15 17 6 callback Lorg/jruby/RubyRange$StepBlockCallBack;
16 17 7 blockCallback Lorg/jruby/runtime/Block;
MethodParameters:
Name Flags
context
step
block
private void fixnumStep(org.jruby.runtime.ThreadContext, org.jruby.Ruby, long, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;JLorg/jruby/runtime/Block;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyFixnum
invokevirtual org.jruby.RubyFixnum.getLongValue:()J
lstore 6
start local 6 1: aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 5
2: lload 6
ldc -9223372036854775808
lcmp
ifne 4
3: return
4: StackMap locals: long
StackMap stack:
lload 6
lconst_1
lsub
lstore 6
5: StackMap locals:
StackMap stack:
ldc 9223372036854775807
lload 3
lsub
lstore 8
start local 8 6: lload 6
lload 8
lcmp
ifge 8
7: lload 6
lstore 8
8: StackMap locals: long
StackMap stack:
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyFixnum
invokevirtual org.jruby.RubyFixnum.getLongValue:()J
lstore 10
start local 10 9: goto 12
10: StackMap locals: long
StackMap stack:
aload 5
aload 1
aload 2
lload 10
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
11: lload 10
lload 3
ladd
lstore 10
StackMap locals:
StackMap stack:
12: lload 10
lload 8
lcmp
ifle 10
13: lload 10
lload 6
lcmp
ifgt 15
14: aload 5
aload 1
aload 2
lload 10
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
15: StackMap locals:
StackMap stack:
return
end local 10 end local 8 end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/jruby/RubyRange;
0 16 1 context Lorg/jruby/runtime/ThreadContext;
0 16 2 runtime Lorg/jruby/Ruby;
0 16 3 step J
0 16 5 block Lorg/jruby/runtime/Block;
1 16 6 to J
6 16 8 tov J
9 16 10 i J
MethodParameters:
Name Flags
context
runtime
step
block
private void numericStep(org.jruby.runtime.ThreadContext, org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 1
ldc "<"
goto 2
StackMap locals:
StackMap stack:
1: ldc "<="
StackMap locals:
StackMap stack: java.lang.String
2: astore 5
start local 5 3: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
astore 6
start local 6 4: lconst_0
lstore 7
start local 7 5: goto 9
6: StackMap locals: java.lang.String org.jruby.runtime.builtin.IRubyObject long
StackMap stack:
aload 4
aload 1
aload 6
invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
7: lload 7
lconst_1
ladd
lstore 7
8: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
aload 1
ldc "+"
aload 2
lload 7
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
aload 1
ldc "*"
aload 3
invokevirtual org.jruby.RubyFixnum.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 6
9: StackMap locals:
StackMap stack:
aload 6
aload 1
aload 5
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifne 6
10: return
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/RubyRange;
0 11 1 context Lorg/jruby/runtime/ThreadContext;
0 11 2 runtime Lorg/jruby/Ruby;
0 11 3 step Lorg/jruby/runtime/builtin/IRubyObject;
0 11 4 block Lorg/jruby/runtime/Block;
3 11 5 method Ljava/lang/String;
4 11 6 beg Lorg/jruby/runtime/builtin/IRubyObject;
5 11 7 i J
MethodParameters:
Name Flags
context
runtime
step
block
private org.jruby.RubyEnumerator$SizeFn enumSizeFn();
descriptor: ()Lorg/jruby/RubyEnumerator$SizeFn;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic size(Lorg/jruby/RubyRange;)Lorg/jruby/RubyEnumerator$SizeFn;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
org/jruby/RubyRange.lambda$0(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject; (7)
(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
private org.jruby.RubyEnumerator$SizeFn stepSizeFn();
descriptor: ()Lorg/jruby/RubyEnumerator$SizeFn;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic size(Lorg/jruby/RubyRange;)Lorg/jruby/RubyEnumerator$SizeFn;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
org/jruby/RubyRange.lambda$1(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject; (7)
(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
public org.jruby.runtime.builtin.IRubyObject include_p19(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=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyRange.include_p:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 obj Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
obj
public org.jruby.runtime.builtin.IRubyObject include_p(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=4, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyNumeric
ifne 4
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyNumeric
ifne 4
2: aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRange.linearObject:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
ifne 4
aload 1
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRange.linearObject:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
ifne 4
3: iconst_0
goto 5
StackMap locals: org.jruby.Ruby
StackMap stack:
4: iconst_1
StackMap locals:
StackMap stack: int
5: istore 4
start local 4 6: iload 4
ifne 9
7: aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
aload 3
invokevirtual org.jruby.Ruby.getInteger:()Lorg/jruby/RubyClass;
aload 1
invokestatic org.jruby.RubyRange.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$RangeSites;
getfield org.jruby.runtime.JavaSites$RangeSites.to_int_checked:Lorg/jruby/runtime/JavaSites$CheckedSites;
invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 9
8: aload 1
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
aload 3
invokevirtual org.jruby.Ruby.getInteger:()Lorg/jruby/RubyClass;
aload 1
invokestatic org.jruby.RubyRange.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$RangeSites;
getfield org.jruby.runtime.JavaSites$RangeSites.to_int_checked:Lorg/jruby/runtime/JavaSites$CheckedSites;
invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 10
9: StackMap locals: int
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyRange.cover_p:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
areturn
10: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyString
ifeq 27
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyString
ifeq 27
11: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyString
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iconst_1
if_icmpne 27
12: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyString
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iconst_1
if_icmpne 27
13: aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 14
aload 3
invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
areturn
14: StackMap locals:
StackMap stack:
aload 2
instanceof org.jruby.RubyString
ifeq 27
15: aload 2
checkcast org.jruby.RubyString
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 5
start local 5 16: aload 5
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iconst_1
if_icmpeq 17
aload 3
invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
areturn
17: StackMap locals: org.jruby.util.ByteList
StackMap stack:
aload 5
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
aload 5
invokevirtual org.jruby.util.ByteList.getBegin:()I
baload
sipush 255
iand
istore 6
start local 6 18: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyString
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 7
start local 7 19: aload 7
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
aload 7
invokevirtual org.jruby.util.ByteList.getBegin:()I
baload
sipush 255
iand
istore 8
start local 8 20: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyString
invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
astore 9
start local 9 21: aload 9
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
aload 9
invokevirtual org.jruby.util.ByteList.getBegin:()I
baload
sipush 255
iand
istore 10
start local 10 22: iload 6
invokestatic org.jcodings.Encoding.isAscii:(I)Z
ifeq 27
iload 8
invokestatic org.jcodings.Encoding.isAscii:(I)Z
ifeq 27
iload 10
invokestatic org.jcodings.Encoding.isAscii:(I)Z
ifeq 27
23: iload 8
iload 6
if_icmpgt 24
iload 6
iload 10
if_icmplt 25
StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby int org.jruby.util.ByteList int org.jruby.util.ByteList int org.jruby.util.ByteList int
StackMap stack:
24: aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifne 26
iload 6
iload 10
if_icmpne 26
25: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.jruby.Ruby.getTrue:()Lorg/jruby/RubyBoolean;
areturn
26: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
areturn
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 27: StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby int
StackMap stack:
aload 1
aload 0
aload 2
getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/jruby/RubyRange;
0 28 1 context Lorg/jruby/runtime/ThreadContext;
0 28 2 obj Lorg/jruby/runtime/builtin/IRubyObject;
1 28 3 runtime Lorg/jruby/Ruby;
6 28 4 iterable Z
16 27 5 objBytes Lorg/jruby/util/ByteList;
18 27 6 v I
19 27 7 begBytes Lorg/jruby/util/ByteList;
20 27 8 b I
21 27 9 endBytes Lorg/jruby/util/ByteList;
22 27 10 e I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"include?", "member?"}, frame = true)
MethodParameters:
Name Flags
context
obj final
private static boolean discreteObject(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.jruby.RubyTime
ifeq 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
aload 0
invokestatic org.jruby.RubyRange.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$RangeSites;
getfield org.jruby.runtime.JavaSites$RangeSites.respond_to_succ:Lorg/jruby/runtime/callsite/RespondToCallSite;
aload 0
aload 1
aload 1
iconst_0
invokevirtual org.jruby.runtime.callsite.RespondToCallSite.respondsTo:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 context Lorg/jruby/runtime/ThreadContext;
0 2 1 obj Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
obj
private static boolean linearObject(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.jruby.RubyFixnum
ifne 1
aload 1
instanceof org.jruby.RubyFloat
ifeq 2
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof org.jruby.RubyBignum
ifeq 3
iconst_1
ireturn
3: StackMap locals:
StackMap stack:
aload 1
instanceof org.jruby.RubyNumeric
ifeq 4
iconst_1
ireturn
4: StackMap locals:
StackMap stack:
aload 1
instanceof org.jruby.RubyTime
ifeq 5
iconst_1
ireturn
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 context Lorg/jruby/runtime/ThreadContext;
0 6 1 obj Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
obj
public org.jruby.runtime.builtin.IRubyObject eqq_p(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=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
ldc "include?"
aload 2
invokevirtual org.jruby.RubyRange.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 obj Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"==="})
MethodParameters:
Name Flags
context
obj
public org.jruby.RubyBoolean cover_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
aload 2
invokestatic org.jruby.RubyRange.rangeLe:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
ifnonnull 2
1: aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
areturn
2: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 5
3: aload 1
aload 2
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRange.rangeLt:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
ifnull 4
iconst_1
goto 7
StackMap locals:
StackMap stack: org.jruby.runtime.ThreadContext
4: iconst_0
goto 7
StackMap locals:
StackMap stack: org.jruby.runtime.ThreadContext
5: aload 1
aload 2
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRange.rangeLe:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
ifnull 6
iconst_1
goto 7
StackMap locals:
StackMap stack: org.jruby.runtime.ThreadContext
6: iconst_0
7: StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
StackMap stack: org.jruby.runtime.ThreadContext int
invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/RubyRange;
0 8 1 context Lorg/jruby/runtime/ThreadContext;
0 8 2 obj Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"cover?"})
MethodParameters:
Name Flags
context
obj
public org.jruby.runtime.builtin.IRubyObject min(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.jruby.runtime.Block.isGiven:()Z
ifeq 2
1: aload 1
aload 0
aload 2
invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
2: StackMap locals:
StackMap stack:
aload 1
aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_CMP:Lorg/jruby/runtime/invokedynamic/MethodNames;
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyComparable.cmpint:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 3
start local 3 3: iload 3
ifgt 4
iload 3
ifne 5
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 5
4: StackMap locals: int
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
5: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/RubyRange;
0 6 1 context Lorg/jruby/runtime/ThreadContext;
0 6 2 block Lorg/jruby/runtime/Block;
3 6 3 cmp I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(frame = true)
MethodParameters:
Name Flags
context
block
public org.jruby.runtime.builtin.IRubyObject max(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyNumeric
istore 3
start local 3 1: aload 2
invokevirtual org.jruby.runtime.Block.isGiven:()Z
ifne 2
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 3
iload 3
ifne 3
2: StackMap locals: int
StackMap stack:
aload 1
aload 0
aload 2
invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
3: StackMap locals:
StackMap stack:
aload 1
aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_CMP:Lorg/jruby/runtime/invokedynamic/MethodNames;
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyComparable.cmpint:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 4
start local 4 4: iload 4
ifle 6
5: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
6: StackMap locals: int
StackMap stack:
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ifeq 16
7: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyInteger
ifne 9
8: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "cannot exclude non Integer end value"
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
9: StackMap locals:
StackMap stack:
iload 4
ifne 11
10: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
11: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyInteger
ifne 13
12: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "cannot exclude end value with non Integer begin value"
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
13: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyFixnum
ifeq 15
14: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyFixnum
invokevirtual org.jruby.RubyFixnum.getLongValue:()J
lconst_1
lsub
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
areturn
15: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
aload 1
ldc "-"
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
16: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/jruby/RubyRange;
0 17 1 context Lorg/jruby/runtime/ThreadContext;
0 17 2 block Lorg/jruby/runtime/Block;
1 17 3 isNumeric Z
4 17 4 cmp I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(frame = true)
MethodParameters:
Name Flags
context
block
public org.jruby.runtime.builtin.IRubyObject min(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=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 0
aload 2
aload 3
invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(frame = true)
MethodParameters:
Name Flags
context
arg
block
public org.jruby.runtime.builtin.IRubyObject max(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=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 0
aload 2
aload 3
invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(frame = true)
MethodParameters:
Name Flags
context
arg
block
public org.jruby.runtime.builtin.IRubyObject first(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject begin(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject first(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=8, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: aload 2
invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 4
start local 4 2: iload 4
ifge 4
3: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "negative array size (or size too big)"
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
4: StackMap locals: org.jruby.Ruby int
StackMap stack:
aload 3
iload 4
invokevirtual org.jruby.Ruby.newArray:(I)Lorg/jruby/RubyArray;
astore 5
start local 5 5: aload 1
aload 0
getstatic org.jruby.runtime.Signature.ONE_ARGUMENT:Lorg/jruby/runtime/Signature;
new org.jruby.RubyRange$4
dup
aload 0
iload 4
aload 5
invokespecial org.jruby.RubyRange$4.<init>:(Lorg/jruby/RubyRange;ILorg/jruby/RubyArray;)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
6: goto 8
StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby int org.jruby.RubyArray
StackMap stack: org.jruby.exceptions.JumpException$SpecialJump
7: pop
8: StackMap locals:
StackMap stack:
aload 5
areturn
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 9 0 this Lorg/jruby/RubyRange;
0 9 1 context Lorg/jruby/runtime/ThreadContext;
0 9 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
1 9 3 runtime Lorg/jruby/Ruby;
2 9 4 num I
5 9 5 result Lorg/jruby/RubyArray;
Exception table:
from to target type
5 6 7 Class org.jruby.exceptions.JumpException$SpecialJump
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
arg
public org.jruby.runtime.builtin.IRubyObject last(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject end(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject last(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=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
aload 0
invokestatic org.jruby.RubyKernel.new_array:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyArray
aload 2
invokevirtual org.jruby.RubyArray.last:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
arg
public org.jruby.runtime.builtin.IRubyObject size(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyNumeric
ifeq 2
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
instanceof org.jruby.RubyNumeric
ifeq 2
1: aload 1
aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
invokestatic org.jruby.RubyNumeric.intervalStepSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyNumeric;
areturn
2: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyRange;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public final boolean isExcludeEnd();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyRange.isExclusive:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
public static org.jruby.RubyRange rangeFromRangeLike(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.CallSite, org.jruby.runtime.CallSite, org.jruby.runtime.CallSite);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/CallSite;)Lorg/jruby/RubyRange;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
aload 0
aload 1
aload 1
invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 1: aload 3
aload 0
aload 1
aload 1
invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 6
start local 6 2: aload 4
aload 0
aload 1
aload 1
invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 7
start local 7 3: aload 0
aload 5
aload 6
aload 7
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
invokestatic org.jruby.RubyRange.newRange:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyRange;
areturn
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 4 0 context Lorg/jruby/runtime/ThreadContext;
0 4 1 rangeLike Lorg/jruby/runtime/builtin/IRubyObject;
0 4 2 beginSite Lorg/jruby/runtime/CallSite;
0 4 3 endSite Lorg/jruby/runtime/CallSite;
0 4 4 excludeEndSite Lorg/jruby/runtime/CallSite;
1 4 5 begin Lorg/jruby/runtime/builtin/IRubyObject;
2 4 6 end Lorg/jruby/runtime/builtin/IRubyObject;
3 4 7 excl Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
rangeLike
beginSite
endSite
excludeEndSite
public static boolean isRangeLike(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.callsite.RespondToCallSite, org.jruby.runtime.callsite.RespondToCallSite);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/callsite/RespondToCallSite;Lorg/jruby/runtime/callsite/RespondToCallSite;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
aload 0
aload 1
aload 1
invokevirtual org.jruby.runtime.callsite.RespondToCallSite.respondsTo:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Z
ifeq 3
1: aload 3
aload 0
aload 1
aload 1
invokevirtual org.jruby.runtime.callsite.RespondToCallSite.respondsTo:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Z
ifeq 3
2: iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 context Lorg/jruby/runtime/ThreadContext;
0 4 1 obj Lorg/jruby/runtime/builtin/IRubyObject;
0 4 2 respond_to_begin Lorg/jruby/runtime/callsite/RespondToCallSite;
0 4 3 respond_to_end Lorg/jruby/runtime/callsite/RespondToCallSite;
MethodParameters:
Name Flags
context
obj
respond_to_begin
respond_to_end
public static boolean isRangeLike(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.JavaSites$CheckedSites, org.jruby.runtime.JavaSites$CheckedSites, org.jruby.runtime.JavaSites$CheckedSites);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/JavaSites$CheckedSites;Lorg/jruby/runtime/JavaSites$CheckedSites;Lorg/jruby/runtime/JavaSites$CheckedSites;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
aload 0
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.checkCallMethod:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
ifnull 4
1: aload 1
aload 0
aload 3
invokeinterface org.jruby.runtime.builtin.IRubyObject.checkCallMethod:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
ifnull 4
2: aload 1
aload 0
aload 4
invokeinterface org.jruby.runtime.builtin.IRubyObject.checkCallMethod:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
ifnull 4
3: iconst_1
ireturn
StackMap locals:
StackMap stack:
4: iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 context Lorg/jruby/runtime/ThreadContext;
0 5 1 obj Lorg/jruby/runtime/builtin/IRubyObject;
0 5 2 begin_checked Lorg/jruby/runtime/JavaSites$CheckedSites;
0 5 3 end_checked Lorg/jruby/runtime/JavaSites$CheckedSites;
0 5 4 exclude_end_checked Lorg/jruby/runtime/JavaSites$CheckedSites;
MethodParameters:
Name Flags
context
obj
begin_checked
end_checked
exclude_end_checked
public static org.jruby.runtime.builtin.IRubyObject rangeBeginLength(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, int, int[], int);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;I[II)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=13, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokestatic org.jruby.RubyRange.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$RangeSites;
astore 5
start local 5 1: aload 0
aload 1
aload 5
getfield org.jruby.runtime.JavaSites$RangeSites.respond_to_begin:Lorg/jruby/runtime/callsite/RespondToCallSite;
aload 5
getfield org.jruby.runtime.JavaSites$RangeSites.respond_to_end:Lorg/jruby/runtime/callsite/RespondToCallSite;
invokestatic org.jruby.RubyRange.isRangeLike:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/callsite/RespondToCallSite;Lorg/jruby/runtime/callsite/RespondToCallSite;)Z
ifne 2
aload 0
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
areturn
2: StackMap locals: org.jruby.runtime.JavaSites$RangeSites
StackMap stack:
aload 5
getfield org.jruby.runtime.JavaSites$RangeSites.begin:Lorg/jruby/runtime/CallSite;
aload 0
aload 1
aload 1
invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 6
start local 6 3: aload 5
getfield org.jruby.runtime.JavaSites$RangeSites.end:Lorg/jruby/runtime/CallSite;
aload 0
aload 1
aload 1
invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 7
start local 7 4: aload 5
getfield org.jruby.runtime.JavaSites$RangeSites.exclude_end:Lorg/jruby/runtime/CallSite;
aload 0
aload 1
aload 1
invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
istore 8
start local 8 5: aload 6
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
invokevirtual org.jruby.RubyInteger.getIntValue:()I
istore 9
start local 9 6: aload 7
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
invokevirtual org.jruby.RubyInteger.getIntValue:()I
istore 10
start local 10 7: iload 9
istore 11
start local 11 8: iload 10
istore 12
start local 12 9: iload 9
ifge 13
10: iload 9
iload 2
iadd
istore 9
11: iload 9
ifge 13
12: aload 0
iload 11
iload 12
iload 8
iload 4
invokestatic org.jruby.RubyRange.rangeBeginLengthError:(Lorg/jruby/runtime/ThreadContext;IIZI)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
13: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject int int[] int org.jruby.runtime.JavaSites$RangeSites org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject int int int int int
StackMap stack:
iload 10
ifge 15
14: iload 10
iload 2
iadd
istore 10
15: StackMap locals:
StackMap stack:
iload 8
ifne 16
iinc 10 1
16: StackMap locals:
StackMap stack:
iload 4
ifeq 17
iload 4
iconst_2
if_icmpne 19
17: StackMap locals:
StackMap stack:
iload 9
iload 2
if_icmple 18
aload 0
iload 11
iload 12
iload 8
iload 4
invokestatic org.jruby.RubyRange.rangeBeginLengthError:(Lorg/jruby/runtime/ThreadContext;IIZI)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
18: StackMap locals:
StackMap stack:
iload 10
iload 2
if_icmple 19
iload 2
istore 10
19: StackMap locals:
StackMap stack:
iload 10
iload 9
isub
istore 2
20: iload 2
ifge 21
iconst_0
istore 2
21: StackMap locals:
StackMap stack:
aload 3
iconst_0
iload 9
iastore
22: aload 3
iconst_1
iload 2
iastore
23: aload 0
getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
areturn
end local 12 end local 11 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 24 0 context Lorg/jruby/runtime/ThreadContext;
0 24 1 range Lorg/jruby/runtime/builtin/IRubyObject;
0 24 2 len I
0 24 3 begLen [I
0 24 4 err I
1 24 5 sites Lorg/jruby/runtime/JavaSites$RangeSites;
3 24 6 _beg Lorg/jruby/runtime/builtin/IRubyObject;
4 24 7 _end Lorg/jruby/runtime/builtin/IRubyObject;
5 24 8 excludeEnd Z
6 24 9 beg I
7 24 10 end I
8 24 11 origBeg I
9 24 12 origEnd I
MethodParameters:
Name Flags
context
range
len
begLen
err
private static org.jruby.runtime.builtin.IRubyObject rangeBeginLengthError(org.jruby.runtime.ThreadContext, int, int, boolean, int);
descriptor: (Lorg/jruby/runtime/ThreadContext;IIZI)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iload 4
ifeq 3
aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
iload 1
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
ifeq 1
ldc "."
goto 2
StackMap locals: org.jruby.runtime.ThreadContext int int int int
StackMap stack: org.jruby.Ruby java.lang.StringBuilder
1: ldc ""
StackMap locals: org.jruby.runtime.ThreadContext int int int int
StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
2: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " out of range"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 context Lorg/jruby/runtime/ThreadContext;
0 4 1 beg I
0 4 2 end I
0 4 3 excludeEnd Z
0 4 4 err I
MethodParameters:
Name Flags
context
beg
end
excludeEnd
err
private static org.jruby.runtime.JavaSites$RangeSites sites(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$RangeSites;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.runtime.ThreadContext.sites:Lorg/jruby/runtime/JavaSites;
getfield org.jruby.runtime.JavaSites.Range:Lorg/jruby/runtime/JavaSites$RangeSites;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
MethodParameters:
Name Flags
context
private org.jruby.runtime.builtin.IRubyObject lambda$0(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: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.jruby.RubyRange.size:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyRange;
0 1 1 ctx Lorg/jruby/runtime/ThreadContext;
0 1 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
private org.jruby.runtime.builtin.IRubyObject lambda$1(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: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: aload 0
getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
astore 4
start local 4 2: aload 0
getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 3: aload 2
ifnull 8
aload 2
arraylength
ifle 8
4: aload 2
iconst_0
aaload
astore 6
start local 6 5: aload 6
instanceof org.jruby.RubyNumeric
ifne 9
6: aload 6
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
pop
7: goto 9
end local 6 8: StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 3
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
astore 6
start local 6 9: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 6
aload 1
ldc "<"
aload 3
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifeq 11
10: aload 3
ldc "step can't be negative"
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
11: StackMap locals:
StackMap stack:
aload 6
aload 1
ldc ">"
aload 3
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifne 13
12: aload 3
ldc "step can't be 0"
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
13: StackMap locals:
StackMap stack:
aload 4
instanceof org.jruby.RubyNumeric
ifeq 15
aload 5
instanceof org.jruby.RubyNumeric
ifeq 15
14: aload 1
aload 4
aload 5
aload 6
aload 0
getfield org.jruby.RubyRange.isExclusive:Z
invokestatic org.jruby.RubyNumeric.intervalStepSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyNumeric;
areturn
15: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
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 16 0 this Lorg/jruby/RubyRange;
0 16 1 context Lorg/jruby/runtime/ThreadContext;
0 16 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
1 16 3 runtime Lorg/jruby/Ruby;
2 16 4 begin Lorg/jruby/runtime/builtin/IRubyObject;
3 16 5 end Lorg/jruby/runtime/builtin/IRubyObject;
5 8 6 step Lorg/jruby/runtime/builtin/IRubyObject;
9 16 6 step Lorg/jruby/runtime/builtin/IRubyObject;
}
SourceFile: "RubyRange.java"
NestMembers:
org.jruby.RubyRange$1 org.jruby.RubyRange$2 org.jruby.RubyRange$3 org.jruby.RubyRange$4 org.jruby.RubyRange$InspectRecursive org.jruby.RubyRange$RangeCallBack org.jruby.RubyRange$StepBlockCallBack
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract SizeFn = org.jruby.RubyEnumerator$SizeFn of org.jruby.RubyEnumerator
public final JavaClassKindOf = org.jruby.RubyModule$JavaClassKindOf of org.jruby.RubyModule
org.jruby.RubyRange$1
org.jruby.RubyRange$2
org.jruby.RubyRange$3
org.jruby.RubyRange$4
private InspectRecursive = org.jruby.RubyRange$InspectRecursive of org.jruby.RubyRange
private abstract RangeCallBack = org.jruby.RubyRange$RangeCallBack of org.jruby.RubyRange
private final StepBlockCallBack = org.jruby.RubyRange$StepBlockCallBack of org.jruby.RubyRange
public SpecialJump = org.jruby.exceptions.JumpException$SpecialJump of org.jruby.exceptions.JumpException
public CheckedSites = org.jruby.runtime.JavaSites$CheckedSites of org.jruby.runtime.JavaSites
public RangeSites = org.jruby.runtime.JavaSites$RangeSites of org.jruby.runtime.JavaSites
public abstract RecursiveFunctionEx = org.jruby.runtime.ThreadContext$RecursiveFunctionEx of org.jruby.runtime.ThreadContext
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyClass(name = {"Range"}, include = {"Enumerable"})