private static void checkArgSizeMismatch(final Ruby runtime, final int expected, final RubyArray argTypes) { if ( argTypes.size() != expected ) { Class[] argTypesClasses = (Class[]) argTypes.toArray(new Class[argTypes.size()]); throw JavaMethod.newArgSizeMismatchError(runtime, argTypesClasses); } }
private static void checkArgSizeMismatch(final Ruby runtime, final int expected, final RubyArray argTypes) { if ( argTypes.size() != expected ) { Class[] argTypesClasses = (Class[]) argTypes.toArray(new Class[argTypes.size()]); throw JavaMethod.newArgSizeMismatchError(runtime, argTypesClasses); } }
@JRubyMethod(meta = true) public static IRubyObject java_send(ThreadContext context, IRubyObject recv, IRubyObject rubyName, IRubyObject argTypes) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; if (argTypesAry.size() != 0) { Class[] argTypesClasses = (Class[]) argTypesAry.toArray(new Class[argTypesAry.size()]); throw JavaMethod.newArgSizeMismatchError(runtime, argTypesClasses); } JavaMethod method = new JavaMethod(runtime, getMethodFromClass(runtime, recv, name)); return method.invokeStaticDirect(); }
@JRubyMethod(meta = true) public static IRubyObject java_send(ThreadContext context, IRubyObject recv, IRubyObject rubyName, IRubyObject argTypes) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; if (argTypesAry.size() != 0) { Class[] argTypesClasses = (Class[]) argTypesAry.toArray(new Class[argTypesAry.size()]); throw JavaMethod.newArgSizeMismatchError(runtime, argTypesClasses); } JavaMethod method = new JavaMethod(runtime, getMethodFromClass(runtime, recv, name)); return method.invokeStaticDirect(); }
@JRubyMethod public IRubyObject java_send(ThreadContext context, IRubyObject rubyName, IRubyObject argTypes) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; if (argTypesAry.size() != 0) { Class[] argTypesClasses = (Class[])argTypesAry.toArray(new Class[argTypesAry.size()]); throw JavaMethod.newArgSizeMismatchError(runtime, argTypesClasses); } JavaMethod method = new JavaMethod(runtime, getMethod(name)); return method.invokeDirect(getObject()); }
@JRubyMethod public IRubyObject java_send(ThreadContext context, IRubyObject rubyName, IRubyObject argTypes) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; if (argTypesAry.size() != 0) { Class[] argTypesClasses = (Class[])argTypesAry.toArray(new Class[argTypesAry.size()]); throw JavaMethod.newArgSizeMismatchError(runtime, argTypesClasses); } JavaMethod method = new JavaMethod(runtime, getMethod(name)); return method.invokeDirect(getObject()); }
@JRubyMethod(meta = true) public static IRubyObject java_send(ThreadContext context, IRubyObject recv, IRubyObject rubyName, IRubyObject argTypes, IRubyObject arg0) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; if (argTypesAry.size() != 1) { throw JavaMethod.newArgSizeMismatchError(runtime, (Class) argTypesAry.eltInternal(0).toJava(Class.class)); } Class argTypeClass = (Class) argTypesAry.eltInternal(0).toJava(Class.class); JavaMethod method = new JavaMethod(runtime, getMethodFromClass(runtime, recv, name, argTypeClass)); return method.invokeStaticDirect(arg0.toJava(argTypeClass)); }
@JRubyMethod(meta = true) public static IRubyObject java_send(ThreadContext context, IRubyObject recv, IRubyObject rubyName, IRubyObject argTypes, IRubyObject arg0) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; if (argTypesAry.size() != 1) { throw JavaMethod.newArgSizeMismatchError(runtime, (Class) argTypesAry.eltInternal(0).toJava(Class.class)); } Class argTypeClass = (Class) argTypesAry.eltInternal(0).toJava(Class.class); JavaMethod method = new JavaMethod(runtime, getMethodFromClass(runtime, recv, name, argTypeClass)); return method.invokeStaticDirect(arg0.toJava(argTypeClass)); }
@JRubyMethod(required = 4, rest = true, meta = true) public static IRubyObject java_send(ThreadContext context, IRubyObject recv, IRubyObject[] args) { Ruby runtime = context.runtime; String name = args[0].asJavaString(); RubyArray argTypesAry = args[1].convertToArray(); int argsLen = args.length - 2; if (argTypesAry.size() != argsLen) { throw JavaMethod.newArgSizeMismatchError(runtime, (Class[]) argTypesAry.toArray(new Class[argTypesAry.size()])); } Class[] argTypesClasses = (Class[]) argTypesAry.toArray(new Class[argsLen]); Object[] argsAry = new Object[argsLen]; for (int i = 0; i < argsLen; i++) { argsAry[i] = args[i + 2].toJava(argTypesClasses[i]); } JavaMethod method = new JavaMethod(runtime, getMethodFromClass(runtime, recv, name, argTypesClasses)); return method.invokeStaticDirect(argsAry); }
@JRubyMethod(required = 4, rest = true, meta = true) public static IRubyObject java_send(ThreadContext context, IRubyObject recv, IRubyObject[] args) { Ruby runtime = context.runtime; String name = args[0].asJavaString(); RubyArray argTypesAry = args[1].convertToArray(); int argsLen = args.length - 2; if (argTypesAry.size() != argsLen) { throw JavaMethod.newArgSizeMismatchError(runtime, (Class[]) argTypesAry.toArray(new Class[argTypesAry.size()])); } Class[] argTypesClasses = (Class[]) argTypesAry.toArray(new Class[argsLen]); Object[] argsAry = new Object[argsLen]; for (int i = 0; i < argsLen; i++) { argsAry[i] = args[i + 2].toJava(argTypesClasses[i]); } JavaMethod method = new JavaMethod(runtime, getMethodFromClass(runtime, recv, name, argTypesClasses)); return method.invokeStaticDirect(argsAry); }
@JRubyMethod public IRubyObject java_send(ThreadContext context, IRubyObject rubyName, IRubyObject argTypes, IRubyObject arg0) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; if (argTypesAry.size() != 1) { Class[] argTypesClasses = (Class[])argTypesAry.toArray(new Class[argTypesAry.size()]); throw JavaMethod.newArgSizeMismatchError(runtime, argTypesClasses); } Class argTypeClass = (Class)argTypesAry.eltInternal(0).toJava(Class.class); JavaMethod method = new JavaMethod(runtime, getMethod(name, argTypeClass)); return method.invokeDirect(getObject(), arg0.toJava(argTypeClass)); }
@JRubyMethod public IRubyObject java_send(ThreadContext context, IRubyObject rubyName, IRubyObject argTypes, IRubyObject arg0) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; if (argTypesAry.size() != 1) { Class[] argTypesClasses = (Class[])argTypesAry.toArray(new Class[argTypesAry.size()]); throw JavaMethod.newArgSizeMismatchError(runtime, argTypesClasses); } Class argTypeClass = (Class)argTypesAry.eltInternal(0).toJava(Class.class); JavaMethod method = new JavaMethod(runtime, getMethod(name, argTypeClass)); return method.invokeDirect(getObject(), arg0.toJava(argTypeClass)); }
@JRubyMethod(required = 4, rest = true) public IRubyObject java_send(ThreadContext context, IRubyObject[] args) { Ruby runtime = context.runtime; String name = args[0].asJavaString(); RubyArray argTypesAry = args[1].convertToArray(); int argsLen = args.length - 2; if (argTypesAry.size() != argsLen) { Class[] argTypesClasses = (Class[])argTypesAry.toArray(new Class[argTypesAry.size()]); throw JavaMethod.newArgSizeMismatchError(runtime, argTypesClasses); } Class[] argTypesClasses = (Class[])argTypesAry.toArray(new Class[argsLen]); Object[] argsAry = new Object[argsLen]; for (int i = 0; i < argsLen; i++) { argsAry[i] = args[i + 2].toJava(argTypesClasses[i]); } JavaMethod method = new JavaMethod(runtime, getMethod(name, argTypesClasses)); return method.invokeDirect(getObject(), argsAry); }
@JRubyMethod(required = 4, rest = true) public IRubyObject java_send(ThreadContext context, IRubyObject[] args) { Ruby runtime = context.runtime; String name = args[0].asJavaString(); RubyArray argTypesAry = args[1].convertToArray(); int argsLen = args.length - 2; if (argTypesAry.size() != argsLen) { Class[] argTypesClasses = (Class[])argTypesAry.toArray(new Class[argTypesAry.size()]); throw JavaMethod.newArgSizeMismatchError(runtime, argTypesClasses); } Class[] argTypesClasses = (Class[])argTypesAry.toArray(new Class[argsLen]); Object[] argsAry = new Object[argsLen]; for (int i = 0; i < argsLen; i++) { argsAry[i] = args[i + 2].toJava(argTypesClasses[i]); } JavaMethod method = new JavaMethod(runtime, getMethod(name, argTypesClasses)); return method.invokeDirect(getObject(), argsAry); }