private RubyArray toJavaMethods(final Method[] methods, final boolean isStatic) { final Ruby runtime = getRuntime(); final RubyArray result = runtime.newArray(methods.length); for ( int i = 0; i < methods.length; i++ ) { final Method method = methods[i]; if ( isStatic == Modifier.isStatic(method.getModifiers()) ) { result.append( new JavaMethod(runtime, method) ); } } return result; }
private RubyArray toJavaMethods(final Method[] methods, final boolean isStatic) { final Ruby runtime = getRuntime(); final RubyArray result = runtime.newArray(methods.length); for ( int i = 0; i < methods.length; i++ ) { final Method method = methods[i]; if ( isStatic == Modifier.isStatic(method.getModifiers()) ) { result.append( new JavaMethod(runtime, method) ); } } return result; }
@JRubyMethod(meta = true) public static IRubyObject java_send(ThreadContext context, IRubyObject recv, IRubyObject rubyName) { String name = rubyName.asJavaString(); final Ruby runtime = context.runtime; JavaMethod method = new JavaMethod(runtime, getMethodFromClass(context, recv, name)); return method.invokeStaticDirect(context); }
@JRubyMethod(meta = true) public static IRubyObject java_send(ThreadContext context, IRubyObject recv, IRubyObject rubyName) { String name = rubyName.asJavaString(); Ruby runtime = context.runtime; 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) { String name = rubyName.asJavaString(); final Ruby runtime = context.runtime; JavaMethod method = new JavaMethod(runtime, getMethodFromClass(context, recv, name)); return method.invokeStaticDirect(context); }
@JRubyMethod(meta = true) public static IRubyObject java_send(ThreadContext context, IRubyObject recv, IRubyObject rubyName, IRubyObject argTypes) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); final Ruby runtime = context.runtime; checkArgSizeMismatch(runtime, 0, argTypesAry); JavaMethod method = new JavaMethod(runtime, getMethodFromClass(context, recv, name)); return method.invokeStaticDirect(context); }
@JRubyMethod public IRubyObject enclosing_method() { Method meth = javaClass().getEnclosingMethod(); if (meth != null) { return new JavaMethod(getRuntime(), meth); } return getRuntime().getNil(); }
@JRubyMethod public IRubyObject enclosing_method() { Method meth = javaClass().getEnclosingMethod(); if (meth != null) { return new JavaMethod(getRuntime(), meth); } return getRuntime().getNil(); }
@JRubyMethod public IRubyObject java_send(ThreadContext context, IRubyObject rubyName, IRubyObject argTypes) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; checkArgSizeMismatch(runtime, 0, argTypesAry); JavaMethod method = new JavaMethod(runtime, getMethod(context, name)); return method.invokeDirect(context, getObject()); }
@JRubyMethod public IRubyObject java_send(ThreadContext context, IRubyObject rubyName, IRubyObject argTypes) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; checkArgSizeMismatch(runtime, 0, argTypesAry); JavaMethod method = new JavaMethod(runtime, getMethod(context, name)); return method.invokeDirect(context, 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(); final Ruby runtime = context.runtime; checkArgSizeMismatch(runtime, 1, argTypesAry); Class argTypeClass = (Class) argTypesAry.eltInternal(0).toJava(Class.class); JavaMethod method = new JavaMethod(runtime, getMethodFromClass(context, recv, name, argTypeClass)); return method.invokeStaticDirect(context, 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(); final Ruby runtime = context.runtime; checkArgSizeMismatch(runtime, 1, argTypesAry); Class argTypeClass = (Class) argTypesAry.eltInternal(0).toJava(Class.class); JavaMethod method = new JavaMethod(runtime, getMethodFromClass(context, recv, name, argTypeClass)); return method.invokeStaticDirect(context, arg0.toJava(argTypeClass)); }
@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, IRubyObject arg0) { String name = rubyName.asJavaString(); RubyArray argTypesAry = argTypes.convertToArray(); Ruby runtime = context.runtime; checkArgSizeMismatch(runtime, 1, argTypesAry); Class argTypeClass = (Class) argTypesAry.eltInternal(0).toJava(Class.class); JavaMethod method = new JavaMethod(runtime, getMethod(context, name, argTypeClass)); return method.invokeDirect(context, 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; checkArgSizeMismatch(runtime, 1, argTypesAry); Class argTypeClass = (Class) argTypesAry.eltInternal(0).toJava(Class.class); JavaMethod method = new JavaMethod(runtime, getMethod(context, name, argTypeClass)); return method.invokeDirect(context, getObject(), arg0.toJava(argTypeClass)); }
@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 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)); }