Top Fields Constructors Methods
org.jruby.javasupport

public Class JavaMethod

extends JavaCallable
Class Inheritance
Imports
java.lang.annotation.Annotation, java.lang.reflect.AccessibleObject, .InvocationTargetException, .Method, .Modifier, .Type, org.jruby.Ruby, .RubyInstanceConfig, org.jruby.exceptions.RaiseException, org.jruby.java.util.ClassUtils, org.jruby.javasupport.proxy.ReifiedJavaProxy, .JavaProxyClass, .JavaProxyMethod, org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject

Field Summary

Modifier and TypeField and Description
private final Class<?>
private final boolean
private final Method
private final JavaUtil.JavaConverter
Inherited from org.jruby.javasupport.JavaCallable:
parameterTypes

Constructor Summary

AccessConstructor and Description
public
JavaMethod(Ruby runtime, Method method)

Method Summary

Modifier and TypeMethod and Description
public final AccessibleObject
private void
checkInstanceof(ThreadContext context, Object javaInvokee)

private IRubyObject
convertReturn(Ruby runtime, Object result)

public static JavaMethod
create(Ruby runtime, Method method)

public static JavaMethod
create(Ruby runtime, Class<?> javaClass, String methodName, Class<?>[] argumentTypes)
Deprecated

public static JavaMethod
createDeclared(Ruby runtime, Class<?> javaClass, String methodName, Class<?>[] argumentTypes)
Deprecated

public final boolean
equals(Object
the reference object with which to compare.
other
)

Implements abstract org.jruby.javasupport.JavaCallable.equals.

Indicates whether some other object is "equal to" this one.

public Class<?>[]
public Type[]
public Type[]
public static JavaMethod
getMatchingDeclaredMethod(Ruby runtime, Class<?> javaClass, String methodName, Class<?>[] argumentTypes)

public final int
public String
public Annotation[][]
public final Method
public final int
hashCode()

Implements abstract org.jruby.javasupport.JavaCallable.hashCode.

Returns a hash code value for this object.

public IRubyObject
invokeDirect(ThreadContext context, Object javaInvokee, Object[] args)

public IRubyObject
invokeDirect(ThreadContext context, Object javaInvokee)

public IRubyObject
invokeDirect(ThreadContext context, Object javaInvokee, Object arg0)

public IRubyObject
invokeDirect(ThreadContext context, Object javaInvokee, Object arg0, Object arg1)

public IRubyObject
invokeDirect(ThreadContext context, Object javaInvokee, Object arg0, Object arg1, Object arg2)

public IRubyObject
invokeDirect(ThreadContext context, Object javaInvokee, Object arg0, Object arg1, Object arg2, Object arg3)

public IRubyObject
invokeDirectSuperWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object... arguments)

public IRubyObject
invokeDirectWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object[] arguments)

private IRubyObject
private IRubyObject
private IRubyObject
invokeDirectWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object arg0, Object arg1)

private IRubyObject
invokeDirectWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object arg0, Object arg1, Object arg2)

private IRubyObject
invokeDirectWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object arg0, Object arg1, Object arg2, Object arg3)

public IRubyObject
public IRubyObject
public IRubyObject
public IRubyObject
public IRubyObject
public IRubyObject
invokeStaticDirect(ThreadContext context, Object arg0, Object arg1, Object arg2, Object arg3)

private IRubyObject
invokeWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object[] arguments)

public final boolean
private boolean
mightBeProxy(Object javaInvokee)

public static RaiseException
newArgSizeMismatchError(Ruby runtime, Class<T>... argTypes)

public static RaiseException
newMethodNotFoundError(Ruby runtime, Class<T> target, String prettyName, String simpleName)
Deprecated since 10.0.

public static RaiseException
newMethodNotFoundError(ThreadContext context, Class<T> target, String prettyName, String simpleName)

public String
private IRubyObject
tryProxyInvocation(ThreadContext context, Object javaInvokee, Object... args)

private IRubyObject
tryProxyInvocation(ThreadContext context, Object javaInvokee)

private IRubyObject
tryProxyInvocation(ThreadContext context, Object javaInvokee, Object arg0)

private IRubyObject
tryProxyInvocation(ThreadContext context, Object javaInvokee, Object arg0, Object arg1)

private IRubyObject
tryProxyInvocation(ThreadContext context, Object javaInvokee, Object arg0, Object arg1, Object arg2)

private IRubyObject
tryProxyInvocation(ThreadContext context, Object javaInvokee, Object arg0, Object arg1, Object arg2, Object arg3)

Inherited from org.jruby.javasupport.JavaCallable:
checkAritydumpArgTypesgetAritygetParameterTypeshandleIllegalAccessExhandleIllegalAccessExhandleInvocationTargetExhandlelIllegalArgumentExhandlelIllegalArgumentExhandlelIllegalArgumentExhandleThrowableinspectParameterTypestoString

Field Detail

boxedReturnTypeback to summary
private final Class<?> boxedReturnType
isFinalback to summary
private final boolean isFinal
methodback to summary
private final Method method
returnConverterback to summary
private final JavaUtil.JavaConverter returnConverter

Constructor Detail

JavaMethodback to summary
public JavaMethod(Ruby runtime, Method method)

Method Detail

accessibleObjectback to summary
public final AccessibleObject accessibleObject()

Implements abstract org.jruby.javasupport.JavaCallable.accessibleObject.

Annotations
@Override
checkInstanceofback to summary
private void checkInstanceof(ThreadContext context, Object javaInvokee) throws RaiseException
convertReturnback to summary
private IRubyObject convertReturn(Ruby runtime, Object result)
createback to summary
public static JavaMethod create(Ruby runtime, Method method)
createback to summary
public static JavaMethod create(Ruby runtime, Class<?> javaClass, String methodName, Class<?>[] argumentTypes)

Deprecated

Annotations
@Deprecated
createDeclaredback to summary
public static JavaMethod createDeclared(Ruby runtime, Class<?> javaClass, String methodName, Class<?>[] argumentTypes)

Deprecated

Annotations
@Deprecated
equalsback to summary
public final boolean equals(Object other)

Implements abstract org.jruby.javasupport.JavaCallable.equals.

Doc from java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
other:Object

the reference object with which to compare.

Returns:boolean

true if this object is the same as the obj argument; false otherwise.

Annotations
@Override
getExceptionTypesback to summary
public Class<?>[] getExceptionTypes()

Implements abstract org.jruby.javasupport.JavaCallable.getExceptionTypes.

Implements org.jruby.javasupport.ParameterTypes.getExceptionTypes.

Annotations
@Override
getGenericExceptionTypesback to summary
public Type[] getGenericExceptionTypes()

Implements abstract org.jruby.javasupport.JavaCallable.getGenericExceptionTypes.

Annotations
@Override
getGenericParameterTypesback to summary
public Type[] getGenericParameterTypes()

Implements abstract org.jruby.javasupport.JavaCallable.getGenericParameterTypes.

Annotations
@Override
getMatchingDeclaredMethodback to summary
public static JavaMethod getMatchingDeclaredMethod(Ruby runtime, Class<?> javaClass, String methodName, Class<?>[] argumentTypes)
getModifiersback to summary
public final int getModifiers()

Implements abstract org.jruby.javasupport.JavaCallable.getModifiers.

Annotations
@Override
getNameback to summary
public String getName()
getParameterAnnotationsback to summary
public Annotation[][] getParameterAnnotations()

Implements abstract org.jruby.javasupport.JavaCallable.getParameterAnnotations.

Annotations
@Override
getValueback to summary
public final Method getValue()
hashCodeback to summary
public final int hashCode()

Implements abstract org.jruby.javasupport.JavaCallable.hashCode.

Doc from java.lang.Object.hashCode.

Returns a hash code value for this object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Returns:int

a hash code value for this object

Annotations
@Override
invokeDirectback to summary
public IRubyObject invokeDirect(ThreadContext context, Object javaInvokee, Object[] args)
invokeDirectback to summary
public IRubyObject invokeDirect(ThreadContext context, Object javaInvokee)
invokeDirectback to summary
public IRubyObject invokeDirect(ThreadContext context, Object javaInvokee, Object arg0)
invokeDirectback to summary
public IRubyObject invokeDirect(ThreadContext context, Object javaInvokee, Object arg0, Object arg1)
invokeDirectback to summary
public IRubyObject invokeDirect(ThreadContext context, Object javaInvokee, Object arg0, Object arg1, Object arg2)
invokeDirectback to summary
public IRubyObject invokeDirect(ThreadContext context, Object javaInvokee, Object arg0, Object arg1, Object arg2, Object arg3)
invokeDirectSuperWithExceptionHandlingback to summary
public IRubyObject invokeDirectSuperWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object... arguments)
invokeDirectWithExceptionHandlingback to summary
public IRubyObject invokeDirectWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object[] arguments)
invokeDirectWithExceptionHandlingback to summary
private IRubyObject invokeDirectWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee)
invokeDirectWithExceptionHandlingback to summary
private IRubyObject invokeDirectWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object arg0)
invokeDirectWithExceptionHandlingback to summary
private IRubyObject invokeDirectWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object arg0, Object arg1)
invokeDirectWithExceptionHandlingback to summary
private IRubyObject invokeDirectWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object arg0, Object arg1, Object arg2)
invokeDirectWithExceptionHandlingback to summary
private IRubyObject invokeDirectWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object arg0, Object arg1, Object arg2, Object arg3)
invokeStaticDirectback to summary
public IRubyObject invokeStaticDirect(ThreadContext context, Object[] args)
invokeStaticDirectback to summary
public IRubyObject invokeStaticDirect(ThreadContext context)
invokeStaticDirectback to summary
public IRubyObject invokeStaticDirect(ThreadContext context, Object arg0)
invokeStaticDirectback to summary
public IRubyObject invokeStaticDirect(ThreadContext context, Object arg0, Object arg1)
invokeStaticDirectback to summary
public IRubyObject invokeStaticDirect(ThreadContext context, Object arg0, Object arg1, Object arg2)
invokeStaticDirectback to summary
public IRubyObject invokeStaticDirect(ThreadContext context, Object arg0, Object arg1, Object arg2, Object arg3)
invokeWithExceptionHandlingback to summary
private IRubyObject invokeWithExceptionHandling(ThreadContext context, Method method, Object javaInvokee, Object[] arguments)
isVarArgsback to summary
public final boolean isVarArgs()

Implements abstract org.jruby.javasupport.JavaCallable.isVarArgs.

Implements org.jruby.javasupport.ParameterTypes.isVarArgs.

Annotations
@Override
mightBeProxyback to summary
private boolean mightBeProxy(Object javaInvokee)
newArgSizeMismatchErrorback to summary
public static RaiseException newArgSizeMismatchError(Ruby runtime, Class<T>... argTypes)
newMethodNotFoundErrorback to summary
public static RaiseException newMethodNotFoundError(Ruby runtime, Class<T> target, String prettyName, String simpleName)

Deprecated

since 10.0.

Annotations
@Deprecated
since:10.0
newMethodNotFoundErrorback to summary
public static RaiseException newMethodNotFoundError(ThreadContext context, Class<T> target, String prettyName, String simpleName)
toGenericStringback to summary
public String toGenericString()

Implements abstract org.jruby.javasupport.JavaCallable.toGenericString.

Annotations
@Override
tryProxyInvocationback to summary
private IRubyObject tryProxyInvocation(ThreadContext context, Object javaInvokee, Object... args)
tryProxyInvocationback to summary
private IRubyObject tryProxyInvocation(ThreadContext context, Object javaInvokee)
tryProxyInvocationback to summary
private IRubyObject tryProxyInvocation(ThreadContext context, Object javaInvokee, Object arg0)
tryProxyInvocationback to summary
private IRubyObject tryProxyInvocation(ThreadContext context, Object javaInvokee, Object arg0, Object arg1)
tryProxyInvocationback to summary
private IRubyObject tryProxyInvocation(ThreadContext context, Object javaInvokee, Object arg0, Object arg1, Object arg2)
tryProxyInvocationback to summary
private IRubyObject tryProxyInvocation(ThreadContext context, Object javaInvokee, Object arg0, Object arg1, Object arg2, Object arg3)