public class org.jruby.java.util.ArrayUtils
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.java.util.ArrayUtils
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/java/util/ArrayUtils;
public static org.jruby.runtime.builtin.IRubyObject arefDirect(org.jruby.Ruby, java.lang.Object, org.jruby.javasupport.JavaUtil$JavaConverter, int);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;Lorg/jruby/javasupport/JavaUtil$JavaConverter;I)Lorg/jruby/runtime/builtin/IRubyObject;
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 0
aload 2
aload 1
iload 3
invokestatic org.jruby.javasupport.JavaUtil.convertJavaArrayElementToRuby:(Lorg/jruby/Ruby;Lorg/jruby/javasupport/JavaUtil$JavaConverter;Ljava/lang/Object;I)Lorg/jruby/runtime/builtin/IRubyObject;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.IndexOutOfBoundsException
pop
aload 0
aload 1
iload 3
invokestatic org.jruby.java.util.ArrayUtils.mapIndexOutOfBoundsException:(Lorg/jruby/Ruby;Ljava/lang/Object;I)Lorg/jruby/exceptions/RaiseException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 array Ljava/lang/Object;
0 3 2 javaConverter Lorg/jruby/javasupport/JavaUtil$JavaConverter;
0 3 3 index I
Exception table:
from to target type
0 1 2 Class java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
runtime
array
javaConverter
index
public static org.jruby.runtime.builtin.IRubyObject concatArraysDirect(org.jruby.runtime.ThreadContext, java.lang.Object, java.lang.Object);
descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
istore 3
start local 3 1: aload 2
invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
istore 4
start local 4 2: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
iload 3
iload 4
iadd
invokestatic org.jruby.java.util.ArrayUtils.newProxiedArray:(Lorg/jruby/Ruby;Ljava/lang/Class;I)Lorg/jruby/java/proxies/ArrayJavaProxy;
astore 5
start local 5 3: aload 5
invokevirtual org.jruby.java.proxies.ArrayJavaProxy.getObject:()Ljava/lang/Object;
astore 6
start local 6 4: aload 1
iconst_0
aload 6
iconst_0
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: aload 2
iconst_0
aload 6
iload 3
iload 4
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
6: aload 5
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 7 0 context Lorg/jruby/runtime/ThreadContext;
0 7 1 original Ljava/lang/Object;
0 7 2 additional Ljava/lang/Object;
1 7 3 oldLength I
2 7 4 addLength I
3 7 5 proxy Lorg/jruby/java/proxies/ArrayJavaProxy;
4 7 6 newArray Ljava/lang/Object;
MethodParameters:
Name Flags
context
original
additional
public static org.jruby.java.proxies.ArrayJavaProxy newProxiedArray(org.jruby.Ruby, java.lang.Class<?>, int);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Class;I)Lorg/jruby/java/proxies/ArrayJavaProxy;
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 1
invokestatic org.jruby.javasupport.JavaUtil.getJavaConverter:(Ljava/lang/Class;)Lorg/jruby/javasupport/JavaUtil$JavaConverter;
iload 2
invokestatic org.jruby.java.util.ArrayUtils.newProxiedArray:(Lorg/jruby/Ruby;Ljava/lang/Class;Lorg/jruby/javasupport/JavaUtil$JavaConverter;I)Lorg/jruby/java/proxies/ArrayJavaProxy;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 componentType Ljava/lang/Class<*>;
0 1 2 size I
Signature: (Lorg/jruby/Ruby;Ljava/lang/Class<*>;I)Lorg/jruby/java/proxies/ArrayJavaProxy;
MethodParameters:
Name Flags
runtime
componentType
size
public static org.jruby.java.proxies.ArrayJavaProxy newProxiedArray(org.jruby.Ruby, java.lang.Class<?>, org.jruby.javasupport.JavaUtil$JavaConverter, int);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Class;Lorg/jruby/javasupport/JavaUtil$JavaConverter;I)Lorg/jruby/java/proxies/ArrayJavaProxy;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
iload 3
invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
astore 4
start local 4 1: aload 0
aload 4
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokevirtual org.jruby.javasupport.JavaClass.getProxyClass:()Lorg/jruby/RubyClass;
astore 5
start local 5 2: new org.jruby.java.proxies.ArrayJavaProxy
dup
aload 0
aload 5
aload 4
aload 2
invokespecial org.jruby.java.proxies.ArrayJavaProxy.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/lang/Object;Lorg/jruby/javasupport/JavaUtil$JavaConverter;)V
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 3 0 runtime Lorg/jruby/Ruby;
0 3 1 componentType Ljava/lang/Class<*>;
0 3 2 converter Lorg/jruby/javasupport/JavaUtil$JavaConverter;
0 3 3 size I
1 3 4 array Ljava/lang/Object;
2 3 5 proxyClass Lorg/jruby/RubyClass;
Signature: (Lorg/jruby/Ruby;Ljava/lang/Class<*>;Lorg/jruby/javasupport/JavaUtil$JavaConverter;I)Lorg/jruby/java/proxies/ArrayJavaProxy;
MethodParameters:
Name Flags
runtime
componentType
converter
size
public static org.jruby.runtime.builtin.IRubyObject emptyJavaArrayDirect(org.jruby.runtime.ThreadContext, java.lang.Class);
descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Class;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 1
iconst_0
invokestatic org.jruby.java.util.ArrayUtils.newProxiedArray:(Lorg/jruby/Ruby;Ljava/lang/Class;I)Lorg/jruby/java/proxies/ArrayJavaProxy;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 componentType Ljava/lang/Class;
MethodParameters:
Name Flags
context
componentType
public static org.jruby.runtime.builtin.IRubyObject javaArraySubarrayDirect(org.jruby.runtime.ThreadContext, java.lang.Object, int, int);
descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;II)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
istore 4
start local 4 1: iload 2
iload 4
if_icmplt 2
aload 0
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
2: StackMap locals: int
StackMap stack:
iload 2
iload 3
iadd
iload 4
if_icmple 4
3: iload 4
iload 2
isub
istore 3
4: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
iload 3
invokestatic org.jruby.java.util.ArrayUtils.newProxiedArray:(Lorg/jruby/Ruby;Ljava/lang/Class;I)Lorg/jruby/java/proxies/ArrayJavaProxy;
astore 5
start local 5 5: aload 5
invokevirtual org.jruby.java.proxies.ArrayJavaProxy.getObject:()Ljava/lang/Object;
astore 6
start local 6 6: aload 1
iload 2
aload 6
iconst_0
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
7: aload 5
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 8 0 context Lorg/jruby/runtime/ThreadContext;
0 8 1 fromArray Ljava/lang/Object;
0 8 2 index I
0 8 3 size I
1 8 4 actualLength I
5 8 5 proxy Lorg/jruby/java/proxies/ArrayJavaProxy;
6 8 6 newArray Ljava/lang/Object;
MethodParameters:
Name Flags
context
fromArray
index
size
public static org.jruby.runtime.builtin.IRubyObject concatArraysDirect(org.jruby.runtime.ThreadContext, java.lang.Object, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: aload 1
invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
istore 4
start local 4 2: aload 0
aload 2
ldc "length"
invokestatic org.jruby.runtime.Helpers.invoke:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyFixnum.fix2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 5
start local 5 3: aload 3
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
iload 4
iload 5
iadd
invokestatic org.jruby.java.util.ArrayUtils.newProxiedArray:(Lorg/jruby/Ruby;Ljava/lang/Class;I)Lorg/jruby/java/proxies/ArrayJavaProxy;
astore 6
start local 6 4: aload 1
iconst_0
aload 6
invokevirtual org.jruby.java.proxies.ArrayJavaProxy.getObject:()Ljava/lang/Object;
iconst_0
iload 4
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: iconst_0
istore 7
start local 7 6: goto 10
7: StackMap locals: org.jruby.runtime.ThreadContext java.lang.Object org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby int int org.jruby.java.proxies.ArrayJavaProxy int
StackMap stack:
aload 0
aload 2
ldc "[]"
aload 3
iload 7
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
invokestatic org.jruby.runtime.Helpers.invoke:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 8
start local 8 8: aload 6
aload 3
iload 4
iload 7
iadd
aload 8
invokevirtual org.jruby.java.proxies.ArrayJavaProxy.setValue:(Lorg/jruby/Ruby;ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
end local 8 9: iinc 7 1
StackMap locals:
StackMap stack:
10: iload 7
iload 5
if_icmplt 7
end local 7 11: aload 6
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 12 0 context Lorg/jruby/runtime/ThreadContext;
0 12 1 original Ljava/lang/Object;
0 12 2 additional Lorg/jruby/runtime/builtin/IRubyObject;
1 12 3 runtime Lorg/jruby/Ruby;
2 12 4 oldLength I
3 12 5 addLength I
4 12 6 proxy Lorg/jruby/java/proxies/ArrayJavaProxy;
6 11 7 i I
8 9 8 val Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
context
original
additional
public static org.jruby.runtime.builtin.IRubyObject asetDirect(org.jruby.Ruby, java.lang.Object, org.jruby.javasupport.JavaUtil$JavaConverter, int, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;Lorg/jruby/javasupport/JavaUtil$JavaConverter;ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, 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
iload 3
aload 4
invokevirtual org.jruby.javasupport.JavaUtil$JavaConverter.set:(Lorg/jruby/Ruby;Ljava/lang/Object;ILorg/jruby/runtime/builtin/IRubyObject;)V
1: goto 5
2: StackMap locals:
StackMap stack: java.lang.IndexOutOfBoundsException
pop
aload 0
aload 1
iload 3
invokestatic org.jruby.java.util.ArrayUtils.mapIndexOutOfBoundsException:(Lorg/jruby/Ruby;Ljava/lang/Object;I)Lorg/jruby/exceptions/RaiseException;
athrow
3: StackMap locals:
StackMap stack: java.lang.ArrayStoreException
pop
aload 0
aload 1
aload 4
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic org.jruby.java.util.ArrayUtils.mapArrayStoreException:(Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class;)Lorg/jruby/exceptions/RaiseException;
athrow
4: StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
pop
aload 0
aload 1
aload 4
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic org.jruby.java.util.ArrayUtils.mapIllegalArgumentException:(Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class;)Lorg/jruby/exceptions/RaiseException;
athrow
5: StackMap locals:
StackMap stack:
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 6 0 runtime Lorg/jruby/Ruby;
0 6 1 array Ljava/lang/Object;
0 6 2 javaConverter Lorg/jruby/javasupport/JavaUtil$JavaConverter;
0 6 3 index I
0 6 4 value Lorg/jruby/runtime/builtin/IRubyObject;
Exception table:
from to target type
0 1 2 Class java.lang.IndexOutOfBoundsException
0 1 3 Class java.lang.ArrayStoreException
0 1 4 Class java.lang.IllegalArgumentException
MethodParameters:
Name Flags
runtime
array
javaConverter
index
value
public static void setWithExceptionHandlingDirect(org.jruby.Ruby, java.lang.Object, int, java.lang.Object);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;ILjava/lang/Object;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
iload 2
aload 3
invokestatic java.lang.reflect.Array.set:(Ljava/lang/Object;ILjava/lang/Object;)V
1: goto 5
2: StackMap locals:
StackMap stack: java.lang.IndexOutOfBoundsException
pop
aload 0
aload 1
iload 2
invokestatic org.jruby.java.util.ArrayUtils.mapIndexOutOfBoundsException:(Lorg/jruby/Ruby;Ljava/lang/Object;I)Lorg/jruby/exceptions/RaiseException;
athrow
3: StackMap locals:
StackMap stack: java.lang.ArrayStoreException
pop
aload 0
aload 1
aload 3
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic org.jruby.java.util.ArrayUtils.mapArrayStoreException:(Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class;)Lorg/jruby/exceptions/RaiseException;
athrow
4: StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
pop
aload 0
aload 1
aload 3
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic org.jruby.java.util.ArrayUtils.mapIllegalArgumentException:(Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class;)Lorg/jruby/exceptions/RaiseException;
athrow
5: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 runtime Lorg/jruby/Ruby;
0 6 1 array Ljava/lang/Object;
0 6 2 index I
0 6 3 javaValue Ljava/lang/Object;
Exception table:
from to target type
0 1 2 Class java.lang.IndexOutOfBoundsException
0 1 3 Class java.lang.ArrayStoreException
0 1 4 Class java.lang.IllegalArgumentException
MethodParameters:
Name Flags
runtime
array
index
javaValue
private static org.jruby.exceptions.RaiseException mapIndexOutOfBoundsException(org.jruby.Ruby, java.lang.Object, int);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;I)Lorg/jruby/exceptions/RaiseException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new java.lang.StringBuilder
dup
ldc "index out of bounds for java array ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " for length "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokevirtual org.jruby.Ruby.newIndexError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 array Ljava/lang/Object;
0 3 2 index I
MethodParameters:
Name Flags
runtime final
array final
index
private static org.jruby.exceptions.RaiseException mapArrayStoreException(org.jruby.Ruby, , java.lang.Class<?>);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class;)Lorg/jruby/exceptions/RaiseException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new java.lang.StringBuilder
dup
ldc "wrong element type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " (array contains "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 array Ljava/lang/Object;
0 3 2 type Ljava/lang/Class<*>;
Signature: (Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class<*>;)Lorg/jruby/exceptions/RaiseException;
MethodParameters:
Name Flags
runtime final
array final
type final
private static org.jruby.exceptions.RaiseException mapIllegalArgumentException(org.jruby.Ruby, , java.lang.Class<?>);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class;)Lorg/jruby/exceptions/RaiseException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new java.lang.StringBuilder
dup
ldc "wrong element type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " (array contains "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 array Ljava/lang/Object;
0 3 2 type Ljava/lang/Class<*>;
Signature: (Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class<*>;)Lorg/jruby/exceptions/RaiseException;
MethodParameters:
Name Flags
runtime final
array final
type final
public static void copyDataToJavaArrayDirect(org.jruby.runtime.ThreadContext, org.jruby.RubyArray, java.lang.Object);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyArray;Ljava/lang/Object;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokestatic org.jruby.java.util.ArrayUtils.copyDataToJavaArrayDirect:(Lorg/jruby/RubyArray;Ljava/lang/Object;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 context Lorg/jruby/runtime/ThreadContext;
0 2 1 rubyArray Lorg/jruby/RubyArray;
0 2 2 javaArray Ljava/lang/Object;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
rubyArray final
javaArray final
public static void copyDataToJavaArrayDirect(org.jruby.RubyArray, java.lang.Object);
descriptor: (Lorg/jruby/RubyArray;Ljava/lang/Object;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
astore 2
start local 2 1: aload 2
invokevirtual java.lang.Class.isPrimitive:()Z
ifne 3
2: aload 2
aload 0
aload 1
checkcast java.lang.Object[]
invokestatic org.jruby.java.util.ArrayUtils.copyDataToJavaArrayDirect:(Ljava/lang/Class;Lorg/jruby/RubyArray;[Ljava/lang/Object;)V
return
3: StackMap locals: java.lang.Class
StackMap stack:
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
aload 2
if_acmpne 5
4: aload 2
aload 0
aload 1
checkcast int[]
invokestatic org.jruby.java.util.ArrayUtils.copyDataToJavaArrayDirect:(Ljava/lang/Class;Lorg/jruby/RubyArray;[I)V
return
5: StackMap locals:
StackMap stack:
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
aload 2
if_acmpne 7
6: aload 2
aload 0
aload 1
checkcast long[]
invokestatic org.jruby.java.util.ArrayUtils.copyDataToJavaArrayDirect:(Ljava/lang/Class;Lorg/jruby/RubyArray;[J)V
return
7: StackMap locals:
StackMap stack:
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
aload 2
if_acmpne 9
8: aload 2
aload 0
aload 1
checkcast byte[]
invokestatic org.jruby.java.util.ArrayUtils.copyDataToJavaArrayDirect:(Ljava/lang/Class;Lorg/jruby/RubyArray;[B)V
return
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.RubyArray.getLength:()I
istore 3
start local 3 10: aload 1
invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
istore 4
start local 4 11: iload 4
iload 3
if_icmpge 12
iload 4
istore 3
12: StackMap locals: int int
StackMap stack:
iconst_0
istore 5
start local 5 13: goto 16
14: StackMap locals: int
StackMap stack:
aload 1
iload 5
aload 0
iload 5
invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
invokestatic java.lang.reflect.Array.set:(Ljava/lang/Object;ILjava/lang/Object;)V
15: iinc 5 1
StackMap locals:
StackMap stack:
16: iload 5
iload 3
if_icmplt 14
end local 5 17: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 rubyArray Lorg/jruby/RubyArray;
0 18 1 javaArray Ljava/lang/Object;
1 18 2 targetType Ljava/lang/Class;
10 18 3 length I
11 18 4 javaLength I
13 17 5 i I
MethodParameters:
Name Flags
rubyArray final
javaArray final
private static void copyDataToJavaArrayDirect(java.lang.Class<?>, org.jruby.RubyArray, []);
descriptor: (Ljava/lang/Class;Lorg/jruby/RubyArray;[Ljava/lang/Object;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.jruby.RubyArray.getLength:()I
istore 3
start local 3 1: aload 2
arraylength
istore 4
start local 4 2: iload 4
iload 3
if_icmpge 3
iload 4
istore 3
3: StackMap locals: int int
StackMap stack:
iconst_0
istore 5
start local 5 4: goto 7
5: StackMap locals: int
StackMap stack:
aload 2
iload 5
aload 1
iload 5
invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
aastore
6: iinc 5 1
StackMap locals:
StackMap stack:
7: iload 5
iload 3
if_icmplt 5
end local 5 8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 targetType Ljava/lang/Class<*>;
0 9 1 rubyArray Lorg/jruby/RubyArray;
0 9 2 javaArray [Ljava/lang/Object;
1 9 3 length I
2 9 4 javaLength I
4 8 5 i I
Signature: (Ljava/lang/Class<*>;Lorg/jruby/RubyArray;[Ljava/lang/Object;)V
MethodParameters:
Name Flags
targetType final
rubyArray final
javaArray final
private static void copyDataToJavaArrayDirect(java.lang.Class<?>, org.jruby.RubyArray, );
descriptor: (Ljava/lang/Class;Lorg/jruby/RubyArray;[I)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.jruby.RubyArray.getLength:()I
istore 3
start local 3 1: aload 2
arraylength
istore 4
start local 4 2: iload 4
iload 3
if_icmpge 3
iload 4
istore 3
3: StackMap locals: int int
StackMap stack:
iconst_0
istore 5
start local 5 4: goto 7
5: StackMap locals: int
StackMap stack:
aload 2
iload 5
aload 1
iload 5
invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iastore
6: iinc 5 1
StackMap locals:
StackMap stack:
7: iload 5
iload 3
if_icmplt 5
end local 5 8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 targetType Ljava/lang/Class<*>;
0 9 1 rubyArray Lorg/jruby/RubyArray;
0 9 2 javaArray [I
1 9 3 length I
2 9 4 javaLength I
4 8 5 i I
Signature: (Ljava/lang/Class<*>;Lorg/jruby/RubyArray;[I)V
MethodParameters:
Name Flags
targetType final
rubyArray final
javaArray final
private static void copyDataToJavaArrayDirect(java.lang.Class<?>, org.jruby.RubyArray, );
descriptor: (Ljava/lang/Class;Lorg/jruby/RubyArray;[J)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.jruby.RubyArray.getLength:()I
istore 3
start local 3 1: aload 2
arraylength
istore 4
start local 4 2: iload 4
iload 3
if_icmpge 3
iload 4
istore 3
3: StackMap locals: int int
StackMap stack:
iconst_0
istore 5
start local 5 4: goto 7
5: StackMap locals: int
StackMap stack:
aload 2
iload 5
aload 1
iload 5
invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lastore
6: iinc 5 1
StackMap locals:
StackMap stack:
7: iload 5
iload 3
if_icmplt 5
end local 5 8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 targetType Ljava/lang/Class<*>;
0 9 1 rubyArray Lorg/jruby/RubyArray;
0 9 2 javaArray [J
1 9 3 length I
2 9 4 javaLength I
4 8 5 i I
Signature: (Ljava/lang/Class<*>;Lorg/jruby/RubyArray;[J)V
MethodParameters:
Name Flags
targetType final
rubyArray final
javaArray final
private static void copyDataToJavaArrayDirect(java.lang.Class<?>, org.jruby.RubyArray, );
descriptor: (Ljava/lang/Class;Lorg/jruby/RubyArray;[B)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.jruby.RubyArray.getLength:()I
istore 3
start local 3 1: aload 2
arraylength
istore 4
start local 4 2: iload 4
iload 3
if_icmpge 3
iload 4
istore 3
3: StackMap locals: int int
StackMap stack:
iconst_0
istore 5
start local 5 4: goto 7
5: StackMap locals: int
StackMap stack:
aload 2
iload 5
aload 1
iload 5
invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast java.lang.Byte
invokevirtual java.lang.Byte.byteValue:()B
bastore
6: iinc 5 1
StackMap locals:
StackMap stack:
7: iload 5
iload 3
if_icmplt 5
end local 5 8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 targetType Ljava/lang/Class<*>;
0 9 1 rubyArray Lorg/jruby/RubyArray;
0 9 2 javaArray [B
1 9 3 length I
2 9 4 javaLength I
4 8 5 i I
Signature: (Ljava/lang/Class<*>;Lorg/jruby/RubyArray;[B)V
MethodParameters:
Name Flags
targetType final
rubyArray final
javaArray final
public static void copyDataToJavaArray(org.jruby.runtime.ThreadContext, org.jruby.RubyArray, int, org.jruby.javasupport.JavaArray, int, int);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyArray;ILorg/jruby/javasupport/JavaArray;II)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 3
invokevirtual org.jruby.javasupport.JavaArray.getComponentType:()Ljava/lang/Class;
astore 6
start local 6 1: aload 3
invokevirtual org.jruby.javasupport.JavaArray.length:()Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyFixnum.getLongValue:()J
l2i
istore 7
start local 7 2: aload 1
invokevirtual org.jruby.RubyArray.getLength:()I
istore 8
start local 8 3: iconst_0
istore 9
start local 9 4: goto 7
5: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyArray int org.jruby.javasupport.JavaArray int int java.lang.Class int int int
StackMap stack:
aload 3
iload 4
iload 9
iadd
aload 1
iload 2
iload 9
iadd
invokevirtual org.jruby.RubyArray.entry:(I)Lorg/jruby/runtime/builtin/IRubyObject;
aload 6
invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
invokevirtual org.jruby.javasupport.JavaArray.setWithExceptionHandling:(ILjava/lang/Object;)V
6: iinc 9 1
StackMap locals:
StackMap stack:
7: iload 2
iload 9
iadd
iload 8
if_icmpge 8
iload 4
iload 9
iadd
iload 7
if_icmpge 8
iload 9
iload 5
if_icmplt 5
end local 9 8: StackMap locals:
StackMap stack:
return
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 9 0 context Lorg/jruby/runtime/ThreadContext;
0 9 1 rubyArray Lorg/jruby/RubyArray;
0 9 2 src I
0 9 3 javaArray Lorg/jruby/javasupport/JavaArray;
0 9 4 dest I
0 9 5 length I
1 9 6 targetType Ljava/lang/Class;
2 9 7 destLength I
3 9 8 srcLength I
4 8 9 i I
MethodParameters:
Name Flags
context
rubyArray
src
javaArray
dest
length
}
SourceFile: "ArrayUtils.java"
InnerClasses:
public abstract JavaConverter = org.jruby.javasupport.JavaUtil$JavaConverter of org.jruby.javasupport.JavaUtil