public abstract class org.jruby.util.ArraySupport
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.jruby.util.ArraySupport
super_class: java.lang.Object
{
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: .line 41
ldc Lorg/jruby/util/ArraySupport;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.jruby.util.ArraySupport.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 // org.jruby.util.ArraySupport this
0: .line 43
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.jruby.util.ArraySupport this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/ArraySupport;
public static void copy(java.lang.Object[], java.lang.Object[], int, int);
descriptor: ([Ljava/lang/Object;[Ljava/lang/Object;II)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 // java.lang.Object[] src
start local 1 // java.lang.Object[] dst
start local 2 // int dstOff
start local 3 // int length
0: .line 53
iload 3 /* length */
tableswitch { // 0 - 3
0: 1
1: 2
2: 3
3: 5
default: 7
}
1: .line 54
StackMap locals:
StackMap stack:
return
2: .line 56
StackMap locals:
StackMap stack:
aload 1 /* dst */
iload 2 /* dstOff */
aload 0 /* src */
iconst_0
aaload
aastore
return
3: .line 58
StackMap locals:
StackMap stack:
getstatic org.jruby.util.ArraySupport.$assertionsDisabled:Z
ifne 4
aload 0 /* src */
aload 1 /* dst */
if_acmpne 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: .line 59
StackMap locals:
StackMap stack:
aload 1 /* dst */
iload 2 /* dstOff */
aload 0 /* src */
iconst_0
aaload
aastore
aload 1 /* dst */
iinc 2 /* dstOff */ 1
iload 2 /* dstOff */
aload 0 /* src */
iconst_1
aaload
aastore
return
5: .line 60
StackMap locals:
StackMap stack:
getstatic org.jruby.util.ArraySupport.$assertionsDisabled:Z
ifne 6
aload 0 /* src */
aload 1 /* dst */
if_acmpne 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: .line 61
StackMap locals:
StackMap stack:
aload 1 /* dst */
iload 2 /* dstOff */
aload 0 /* src */
iconst_0
aaload
aastore
aload 1 /* dst */
iinc 2 /* dstOff */ 1
iload 2 /* dstOff */
aload 0 /* src */
iconst_1
aaload
aastore
aload 1 /* dst */
iinc 2 /* dstOff */ 1
iload 2 /* dstOff */
aload 0 /* src */
iconst_2
aaload
aastore
return
7: .line 63
StackMap locals:
StackMap stack:
aload 0 /* src */
iconst_0
aload 1 /* dst */
iload 2 /* dstOff */
iload 3 /* length */
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
8: .line 64
return
end local 3 // int length
end local 2 // int dstOff
end local 1 // java.lang.Object[] dst
end local 0 // java.lang.Object[] src
LocalVariableTable:
Start End Slot Name Signature
0 9 0 src [Ljava/lang/Object;
0 9 1 dst [Ljava/lang/Object;
0 9 2 dstOff I
0 9 3 length I
MethodParameters:
Name Flags
src
dst
dstOff
length final
public static void copy(java.lang.Object[], int, java.lang.Object[], int, int);
descriptor: ([Ljava/lang/Object;I[Ljava/lang/Object;II)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=5
start local 0 // java.lang.Object[] src
start local 1 // int srcOff
start local 2 // java.lang.Object[] dst
start local 3 // int dstOff
start local 4 // int length
0: .line 67
iload 4 /* length */
tableswitch { // 0 - 3
0: 1
1: 2
2: 3
3: 5
default: 7
}
1: .line 68
StackMap locals:
StackMap stack:
return
2: .line 70
StackMap locals:
StackMap stack:
aload 2 /* dst */
iload 3 /* dstOff */
aload 0 /* src */
iload 1 /* srcOff */
aaload
aastore
return
3: .line 72
StackMap locals:
StackMap stack:
getstatic org.jruby.util.ArraySupport.$assertionsDisabled:Z
ifne 4
aload 0 /* src */
aload 2 /* dst */
if_acmpne 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: .line 73
StackMap locals:
StackMap stack:
aload 2 /* dst */
iload 3 /* dstOff */
aload 0 /* src */
iload 1 /* srcOff */
aaload
aastore
aload 2 /* dst */
iinc 3 /* dstOff */ 1
iload 3 /* dstOff */
aload 0 /* src */
iload 1 /* srcOff */
iconst_1
iadd
aaload
aastore
return
5: .line 74
StackMap locals:
StackMap stack:
getstatic org.jruby.util.ArraySupport.$assertionsDisabled:Z
ifne 6
aload 0 /* src */
aload 2 /* dst */
if_acmpne 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: .line 75
StackMap locals:
StackMap stack:
aload 2 /* dst */
iload 3 /* dstOff */
aload 0 /* src */
iload 1 /* srcOff */
aaload
aastore
aload 2 /* dst */
iinc 3 /* dstOff */ 1
iload 3 /* dstOff */
aload 0 /* src */
iload 1 /* srcOff */
iconst_1
iadd
aaload
aastore
aload 2 /* dst */
iinc 3 /* dstOff */ 1
iload 3 /* dstOff */
aload 0 /* src */
iload 1 /* srcOff */
iconst_2
iadd
aaload
aastore
return
7: .line 77
StackMap locals:
StackMap stack:
aload 0 /* src */
iload 1 /* srcOff */
aload 2 /* dst */
iload 3 /* dstOff */
iload 4 /* length */
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
8: .line 78
return
end local 4 // int length
end local 3 // int dstOff
end local 2 // java.lang.Object[] dst
end local 1 // int srcOff
end local 0 // java.lang.Object[] src
LocalVariableTable:
Start End Slot Name Signature
0 9 0 src [Ljava/lang/Object;
0 9 1 srcOff I
0 9 2 dst [Ljava/lang/Object;
0 9 3 dstOff I
0 9 4 length I
MethodParameters:
Name Flags
src
srcOff
dst
dstOff
length final
public static java.lang.Object[] newCopy(java.lang.Object[], int);
descriptor: ([Ljava/lang/Object;I)[Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 // java.lang.Object[] src
start local 1 // int length
0: .line 81
iload 1 /* length */
anewarray java.lang.Object
astore 2 /* copy */
start local 2 // java.lang.Object[] copy
1: .line 82
iload 1 /* length */
aload 0 /* src */
arraylength
if_icmple 2
aload 0 /* src */
arraylength
istore 1 /* length */
2: .line 83
StackMap locals: java.lang.Object[]
StackMap stack:
aload 0 /* src */
aload 2 /* copy */
iconst_0
iload 1 /* length */
invokestatic org.jruby.util.ArraySupport.copy:([Ljava/lang/Object;[Ljava/lang/Object;II)V
3: .line 84
aload 2 /* copy */
areturn
end local 2 // java.lang.Object[] copy
end local 1 // int length
end local 0 // java.lang.Object[] src
LocalVariableTable:
Start End Slot Name Signature
0 4 0 src [Ljava/lang/Object;
0 4 1 length I
1 4 2 copy [Ljava/lang/Object;
MethodParameters:
Name Flags
src
length
public static org.jruby.runtime.builtin.IRubyObject[] newCopy(org.jruby.runtime.builtin.IRubyObject[], int);
descriptor: ([Lorg/jruby/runtime/builtin/IRubyObject;I)[Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 // org.jruby.runtime.builtin.IRubyObject[] src
start local 1 // int length
0: .line 88
iload 1 /* length */
anewarray org.jruby.runtime.builtin.IRubyObject
astore 2 /* copy */
start local 2 // org.jruby.runtime.builtin.IRubyObject[] copy
1: .line 89
iload 1 /* length */
aload 0 /* src */
arraylength
if_icmple 2
aload 0 /* src */
arraylength
istore 1 /* length */
2: .line 90
StackMap locals: org.jruby.runtime.builtin.IRubyObject[]
StackMap stack:
aload 0 /* src */
aload 2 /* copy */
iconst_0
iload 1 /* length */
invokestatic org.jruby.util.ArraySupport.copy:([Ljava/lang/Object;[Ljava/lang/Object;II)V
3: .line 91
aload 2 /* copy */
areturn
end local 2 // org.jruby.runtime.builtin.IRubyObject[] copy
end local 1 // int length
end local 0 // org.jruby.runtime.builtin.IRubyObject[] src
LocalVariableTable:
Start End Slot Name Signature
0 4 0 src [Lorg/jruby/runtime/builtin/IRubyObject;
0 4 1 length I
1 4 2 copy [Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
src
length
public static org.jruby.runtime.builtin.IRubyObject[] newCopy(org.jruby.runtime.builtin.IRubyObject[], int, int);
descriptor: ([Lorg/jruby/runtime/builtin/IRubyObject;II)[Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 // org.jruby.runtime.builtin.IRubyObject[] src
start local 1 // int srcOff
start local 2 // int length
0: .line 95
iload 2 /* length */
anewarray org.jruby.runtime.builtin.IRubyObject
astore 3 /* copy */
start local 3 // org.jruby.runtime.builtin.IRubyObject[] copy
1: .line 96
iload 2 /* length */
aload 0 /* src */
arraylength
if_icmple 2
aload 0 /* src */
arraylength
istore 2 /* length */
2: .line 97
StackMap locals: org.jruby.runtime.builtin.IRubyObject[]
StackMap stack:
aload 0 /* src */
iload 1 /* srcOff */
aload 3 /* copy */
iconst_0
iload 2 /* length */
invokestatic org.jruby.util.ArraySupport.copy:([Ljava/lang/Object;I[Ljava/lang/Object;II)V
3: .line 98
aload 3 /* copy */
areturn
end local 3 // org.jruby.runtime.builtin.IRubyObject[] copy
end local 2 // int length
end local 1 // int srcOff
end local 0 // org.jruby.runtime.builtin.IRubyObject[] src
LocalVariableTable:
Start End Slot Name Signature
0 4 0 src [Lorg/jruby/runtime/builtin/IRubyObject;
0 4 1 srcOff I
0 4 2 length I
1 4 3 copy [Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
src
srcOff final
length
public static java.lang.Class[] newCopy(java.lang.Class[], int);
descriptor: ([Ljava/lang/Class;I)[Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 // java.lang.Class[] src
start local 1 // int length
0: .line 102
iload 1 /* length */
anewarray java.lang.Class
astore 2 /* copy */
start local 2 // java.lang.Class[] copy
1: .line 103
iload 1 /* length */
aload 0 /* src */
arraylength
if_icmple 2
aload 0 /* src */
arraylength
istore 1 /* length */
2: .line 104
StackMap locals: java.lang.Class[]
StackMap stack:
aload 0 /* src */
aload 2 /* copy */
iconst_0
iload 1 /* length */
invokestatic org.jruby.util.ArraySupport.copy:([Ljava/lang/Object;[Ljava/lang/Object;II)V
3: .line 105
aload 2 /* copy */
areturn
end local 2 // java.lang.Class[] copy
end local 1 // int length
end local 0 // java.lang.Class[] src
LocalVariableTable:
Start End Slot Name Signature
0 4 0 src [Ljava/lang/Class;
0 4 1 length I
1 4 2 copy [Ljava/lang/Class;
MethodParameters:
Name Flags
src
length
public static java.lang.Object[] newCopy(java.lang.Object[], java.lang.Object);
descriptor: ([Ljava/lang/Object;Ljava/lang/Object;)[Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 // java.lang.Object[] src
start local 1 // java.lang.Object last
0: .line 109
aload 0 /* src */
arraylength
tableswitch { // 0 - 3
0: 1
1: 2
2: 3
3: 4
default: 5
}
1: .line 110
StackMap locals:
StackMap stack:
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1 /* last */
aastore
areturn
2: .line 111
StackMap locals:
StackMap stack:
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0 /* src */
iconst_0
aaload
aastore
dup
iconst_1
aload 1 /* last */
aastore
areturn
3: .line 112
StackMap locals:
StackMap stack:
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 0 /* src */
iconst_0
aaload
aastore
dup
iconst_1
aload 0 /* src */
iconst_1
aaload
aastore
dup
iconst_2
aload 1 /* last */
aastore
areturn
4: .line 113
StackMap locals:
StackMap stack:
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 0 /* src */
iconst_0
aaload
aastore
dup
iconst_1
aload 0 /* src */
iconst_1
aaload
aastore
dup
iconst_2
aload 0 /* src */
iconst_2
aaload
aastore
dup
iconst_3
aload 1 /* last */
aastore
areturn
5: .line 114
StackMap locals:
StackMap stack:
aload 0 /* src */
6: .line 115
arraylength
iconst_1
iadd
anewarray java.lang.Object
astore 2 /* copy */
start local 2 // java.lang.Object[] copy
7: .line 116
aload 0 /* src */
iconst_0
aload 2 /* copy */
iconst_0
aload 0 /* src */
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
8: .line 117
aload 2 /* copy */
aload 0 /* src */
arraylength
aload 1 /* last */
aastore
9: .line 118
aload 2 /* copy */
areturn
end local 2 // java.lang.Object[] copy
end local 1 // java.lang.Object last
end local 0 // java.lang.Object[] src
LocalVariableTable:
Start End Slot Name Signature
0 10 0 src [Ljava/lang/Object;
0 10 1 last Ljava/lang/Object;
7 10 2 copy [Ljava/lang/Object;
MethodParameters:
Name Flags
src
last
public static org.jruby.runtime.builtin.IRubyObject[] newCopy(org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.builtin.IRubyObject);
descriptor: ([Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 // org.jruby.runtime.builtin.IRubyObject[] src
start local 1 // org.jruby.runtime.builtin.IRubyObject last
0: .line 122
aload 0 /* src */
arraylength
tableswitch { // 0 - 4
0: 1
1: 2
2: 3
3: 4
4: 5
default: 6
}
1: .line 123
StackMap locals:
StackMap stack:
iconst_1
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 1 /* last */
aastore
areturn
2: .line 124
StackMap locals:
StackMap stack:
iconst_2
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0 /* src */
iconst_0
aaload
aastore
dup
iconst_1
aload 1 /* last */
aastore
areturn
3: .line 125
StackMap locals:
StackMap stack:
iconst_3
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0 /* src */
iconst_0
aaload
aastore
dup
iconst_1
aload 0 /* src */
iconst_1
aaload
aastore
dup
iconst_2
aload 1 /* last */
aastore
areturn
4: .line 126
StackMap locals:
StackMap stack:
iconst_4
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0 /* src */
iconst_0
aaload
aastore
dup
iconst_1
aload 0 /* src */
iconst_1
aaload
aastore
dup
iconst_2
aload 0 /* src */
iconst_2
aaload
aastore
dup
iconst_3
aload 1 /* last */
aastore
areturn
5: .line 127
StackMap locals:
StackMap stack:
iconst_5
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0 /* src */
iconst_0
aaload
aastore
dup
iconst_1
aload 0 /* src */
iconst_1
aaload
aastore
dup
iconst_2
aload 0 /* src */
iconst_2
aaload
aastore
dup
iconst_3
aload 0 /* src */
iconst_3
aaload
aastore
dup
iconst_4
aload 1 /* last */
aastore
areturn
6: .line 128
StackMap locals:
StackMap stack:
aload 0 /* src */
7: .line 129
arraylength
iconst_1
iadd
anewarray org.jruby.runtime.builtin.IRubyObject
astore 2 /* copy */
start local 2 // org.jruby.runtime.builtin.IRubyObject[] copy
8: .line 130
aload 0 /* src */
iconst_0
aload 2 /* copy */
iconst_0
aload 0 /* src */
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
9: .line 131
aload 2 /* copy */
aload 0 /* src */
arraylength
aload 1 /* last */
aastore
10: .line 132
aload 2 /* copy */
areturn
end local 2 // org.jruby.runtime.builtin.IRubyObject[] copy
end local 1 // org.jruby.runtime.builtin.IRubyObject last
end local 0 // org.jruby.runtime.builtin.IRubyObject[] src
LocalVariableTable:
Start End Slot Name Signature
0 11 0 src [Lorg/jruby/runtime/builtin/IRubyObject;
0 11 1 last Lorg/jruby/runtime/builtin/IRubyObject;
8 11 2 copy [Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
src
last
public static org.jruby.runtime.builtin.IRubyObject[] newCopy(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 // org.jruby.runtime.builtin.IRubyObject first
start local 1 // org.jruby.runtime.builtin.IRubyObject[] src
0: .line 136
aload 1 /* src */
arraylength
tableswitch { // 0 - 4
0: 1
1: 2
2: 3
3: 4
4: 5
default: 6
}
1: .line 137
StackMap locals:
StackMap stack:
iconst_1
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0 /* first */
aastore
areturn
2: .line 138
StackMap locals:
StackMap stack:
iconst_2
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0 /* first */
aastore
dup
iconst_1
aload 1 /* src */
iconst_0
aaload
aastore
areturn
3: .line 139
StackMap locals:
StackMap stack:
iconst_3
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0 /* first */
aastore
dup
iconst_1
aload 1 /* src */
iconst_0
aaload
aastore
dup
iconst_2
aload 1 /* src */
iconst_1
aaload
aastore
areturn
4: .line 140
StackMap locals:
StackMap stack:
iconst_4
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0 /* first */
aastore
dup
iconst_1
aload 1 /* src */
iconst_0
aaload
aastore
dup
iconst_2
aload 1 /* src */
iconst_1
aaload
aastore
dup
iconst_3
aload 1 /* src */
iconst_2
aaload
aastore
areturn
5: .line 141
StackMap locals:
StackMap stack:
iconst_5
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0 /* first */
aastore
dup
iconst_1
aload 1 /* src */
iconst_0
aaload
aastore
dup
iconst_2
aload 1 /* src */
iconst_1
aaload
aastore
dup
iconst_3
aload 1 /* src */
iconst_2
aaload
aastore
dup
iconst_4
aload 1 /* src */
iconst_3
aaload
aastore
areturn
6: .line 143
StackMap locals:
StackMap stack:
iconst_1
aload 1 /* src */
arraylength
iadd
anewarray org.jruby.runtime.builtin.IRubyObject
astore 2 /* copy */
start local 2 // org.jruby.runtime.builtin.IRubyObject[] copy
7: .line 144
aload 2 /* copy */
iconst_0
aload 0 /* first */
aastore
8: .line 145
aload 1 /* src */
iconst_0
aload 2 /* copy */
iconst_1
aload 1 /* src */
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
9: .line 146
aload 2 /* copy */
areturn
end local 2 // org.jruby.runtime.builtin.IRubyObject[] copy
end local 1 // org.jruby.runtime.builtin.IRubyObject[] src
end local 0 // org.jruby.runtime.builtin.IRubyObject first
LocalVariableTable:
Start End Slot Name Signature
0 10 0 first Lorg/jruby/runtime/builtin/IRubyObject;
0 10 1 src [Lorg/jruby/runtime/builtin/IRubyObject;
7 10 2 copy [Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
first
src
}
SourceFile: "ArraySupport.java"