@JRubyMethod(name = "[]", meta = true, rest = true) public static IRubyObject op_aref(ThreadContext context, IRubyObject self, IRubyObject[] args) { final JavaClass javaClass = java_class(context, (RubyModule) self); if ( args.length > 0 ) { // construct new array proxy (ArrayJavaProxy) return new ArrayJavaProxyCreator(context, javaClass, args); // e.g. Byte[64] } return Java.get_proxy_class(javaClass, Helpers.invoke(context, javaClass, "array_class")); }
@JRubyMethod(name = "[]", meta = true, rest = true) public static IRubyObject op_aref(ThreadContext context, IRubyObject self, IRubyObject[] args) { final JavaClass javaClass = java_class(context, (RubyModule) self); if ( args.length > 0 ) { // construct new array proxy (ArrayJavaProxy) return new ArrayJavaProxyCreator(context, javaClass, args); // e.g. Byte[64] } return Java.get_proxy_class(javaClass, Helpers.invoke(context, javaClass, "array_class")); }
@JRubyMethod(name = "[]", meta = true, rest = true) public static IRubyObject op_aref(ThreadContext context, IRubyObject recv, IRubyObject[] args) { IRubyObject javaClass = Helpers.invoke(context, recv, "java_class"); if (args.length > 0) { // construct new array proxy (ArrayJavaProxy) ArrayJavaProxyCreator ajpc = new ArrayJavaProxyCreator(context.runtime); ajpc.setup(context, javaClass, args); return ajpc; } else { return Java.get_proxy_class(javaClass, Helpers.invoke(context, javaClass, "array_class")); } }
@JRubyMethod(name = "[]", meta = true, rest = true) public static IRubyObject op_aref(ThreadContext context, IRubyObject recv, IRubyObject[] args) { IRubyObject javaClass = Helpers.invoke(context, recv, "java_class"); if (args.length > 0) { // construct new array proxy (ArrayJavaProxy) ArrayJavaProxyCreator ajpc = new ArrayJavaProxyCreator(context.runtime); ajpc.setup(context, javaClass, args); return ajpc; } else { return Java.get_proxy_class(javaClass, Helpers.invoke(context, javaClass, "array_class")); } }