Package org.jruby.javasupport.proxy
Class JavaProxyClass.ProxyMethodImpl
java.lang.Object
org.jruby.RubyBasicObject
org.jruby.RubyObject
org.jruby.javasupport.proxy.JavaProxyReflectionObject
org.jruby.javasupport.proxy.JavaProxyClass.ProxyMethodImpl
- All Implemented Interfaces:
Serializable
,Cloneable
,Comparable<IRubyObject>
,ParameterTypes
,JavaProxyMethod
,InstanceVariables
,InternalVariables
,IRubyObject
,CoreObjectType
- Enclosing class:
JavaProxyClass
public static class JavaProxyClass.ProxyMethodImpl
extends JavaProxyReflectionObject
implements JavaProxyMethod
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.jruby.RubyObject
RubyObject.Data
Nested classes/interfaces inherited from class org.jruby.RubyBasicObject
RubyBasicObject.Finalizer
-
Field Summary
Fields inherited from class org.jruby.RubyObject
IVAR_INSPECTING_OBJECT_ALLOCATOR, OBJECT_ALLOCATOR, REIFYING_OBJECT_ALLOCATOR
Fields inherited from class org.jruby.RubyBasicObject
ALL_F, BASICOBJECT_ALLOCATOR, COMPARE_BY_IDENTITY_F, ERR_INSECURE_SET_INST_VAR, FALSE_F, FL_USHIFT, flags, FROZEN_F, IS_OVERLAID_F, metaClass, NEVER, NIL_F, REFINED_MODULE_F, STAMP_OFFSET, TAINTED_F, UNDEF, USER0_F, USER1_F, USER2_F, USER3_F, USER4_F, USER5_F, USER6_F, USER7_F, USER8_F, USER9_F, USERA_F, VAR_TABLE_OFFSET, varTable, varTableStamp
Fields inherited from interface org.jruby.runtime.builtin.IRubyObject
NULL_ARRAY
-
Constructor Summary
ConstructorsConstructorDescriptionProxyMethodImpl
(Ruby runtime, JavaProxyClass clazz, Method method, Method superMethod) -
Method Summary
Modifier and TypeMethodDescriptionDeprecated.argument_types
(ThreadContext context) arity()
Deprecated.arity
(ThreadContext context) static RubyClass
createJavaProxyMethodClass
(ThreadContext context, RubyClass Object, RubyModule Java) Deprecated.do_invoke
(IRubyObject[] args) Deprecated.do_invoke
(ThreadContext context, IRubyObject[] args) boolean
This override does not do a "checked" dispatch.final int
getArity()
final JavaProxyClass
final Class<?>[]
int
getName()
final Class<?>[]
final Class
<?> getState()
get state (cache target callable?) in the proxy methodint
hashCode()
This override does not do "checked" dispatch since Object usually has #hash defined.boolean
is it possible to call the super method?inspect()
Deprecated.inspect
(ThreadContext context) Returns a string containing a human-readable representation of obj.final boolean
final boolean
name()
Deprecated.void
store state (cache target callable?) in the proxy methodsuper_p()
Deprecated.super_p
(ThreadContext context) toString()
The default toString method is just a wrapper that calls the Ruby "to_s" method.Methods inherited from class org.jruby.javasupport.proxy.JavaProxyReflectionObject
aref, aref, aset, aset, hash, is_java_proxy, is_java_proxy, java_class, java_class, java_type, java_type, length, length, op_eqq, op_equal, op_equal, registerRubyMethods, same, to_s
Methods inherited from class org.jruby.RubyObject
attachToObjectSpace, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, convertToType, dig, dig1, dig2, eqlInternal, equalInternal, finishObjectClass, getNativeClassIndex, inspect, puts, specificEval, toRubyString
Methods inherited from class org.jruby.RubyBasicObject
addFinalizer, addFinalizer, anyToString, asJavaString, asString, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkCallMethod, checkCallMethod, checkFrozen, checkStringType, cloneSetup, compareTo, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToInteger, convertToString, copyInstanceVariablesInto, copySpecialInstanceVariables, dataGetStruct, dataGetStructChecked, dataWrapStruct, decode, display, dup, dupFinalizer, dupSetup, ensureInstanceVariablesSettable, eql, eql_p, eql_p, equal_p, evalUnder, extend, fastGetInstanceVariable, fastGetInternalVariable, fastHasInstanceVariable, fastHasInternalVariable, fastSetInstanceVariable, fastSetInternalVariable, finishBasicObjectClass, forEachInstanceVariable, forEachInstanceVariableName, freeze, frozen_p, getCurrentContext, getFFIHandle, getFlag, getInstanceEvalClass, getInstanceEvalClass, getInstanceVariable, getInstanceVariableList, getInstanceVariableNameList, getInstanceVariables, getInternalVariable, getInternalVariables, getJavaClass, getMarshalVariableList, getMetaClass, getMetaClass, getNativeHandle, getNativeTypeIndex, getObjectId, getRuntime, getSingletonClass, getSingletonClassClone, getSingletonClassCloneAndAttach, getSingletonClassCloneAndAttach, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hash, hashyInspect, hasInstanceVariable, hasInstanceVariables, hasInternalVariable, hasVariables, id, infectBy, initialize, initialize_copy, initialize_copy, inspectHashCode, instance_eval, instance_eval, instance_eval, instance_eval, instance_eval, instance_exec, instance_of_p, instance_variable_defined_p, instance_variable_get, instance_variable_set, instance_variables, isBuiltin, isClass, isFalse, isFrozen, isImmediate, isModule, isNil, isSpecialConst, isSpecialObject, isTaint, isTrue, isUntrusted, kind_of_p, makeMetaClass, makeMetaClass, makeMetaClassBootstrap, method, method, method, method_missing, methods, methods, nil_p, nonFixnumHashCode, nonFixnumHashCode, OBJ_INIT_COPY, objInitCopy, op_cmp, op_match, op_not, op_not_equal, op_not_match, private_methods, protected_methods, public_methods, rbClone, rbClone, rbInspect, remove_instance_variable, removeFinalizers, removeInstanceVariable, removeInternalVariable, respond_to_p, respond_to_p, respondsTo, respondsToMissing, respondsToMissing, send, send, send, send, send, setFFIHandle, setFlag, setFrozen, setInstanceVariable, setInternalVariable, setMetaClass, setNativeHandle, setTaint, setUntrusted, setVariable, singleton_method, singleton_method, singleton_method_added, singleton_method_removed, singleton_method_undefined, singleton_methods, singletonClass, specificEval, specificEval, specificEval, specificEval, syncVariables, syncVariables, taint, taint, tainted_p, testFrozen, testFrozen, to_a, to_a, to_s, toJava, trust, type, untaint, untrust, untrusted_p, validateInstanceVariable, validateInstanceVariable, validateInstanceVariable, variableTableContains, variableTableFastContains, variableTableFastFetch, variableTableFastStore, variableTableFetch, variableTableRemove, variableTableStore, variableTableSync, yieldUnder, yieldUnder
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.jruby.runtime.builtin.IRubyObject
addFinalizer, addFinalizer, anyToString, asJavaString, asString, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkCallMethod, checkCallMethod, checkStringType, checkStringType19, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToInteger, convertToString, copySpecialInstanceVariables, dataGetStruct, dataGetStructChecked, dataWrapStruct, dup, dup, eql, getInstanceVariables, getInternalVariables, getJavaClass, getMarshalVariableList, getMetaClass, getRuntime, getSingletonClass, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hasVariables, id, infectBy, isClass, isFrozen, isImmediate, isModule, isNil, isSpecialConst, isTaint, isTrue, isUntrusted, marshalLiveVariables, op_eqq, op_equal, rbClone, removeFinalizers, respondsTo, respondsToMissing, respondsToMissing, setFrozen, setTaint, setUntrusted, setVariable, singletonClass, syncVariables, syncVariables, toJava
-
Constructor Details
-
ProxyMethodImpl
-
-
Method Details
-
createJavaProxyMethodClass
public static RubyClass createJavaProxyMethodClass(ThreadContext context, RubyClass Object, RubyModule Java) -
equals
Description copied from class:RubyObject
This override does not do a "checked" dispatch.- Overrides:
equals
in classJavaProxyReflectionObject
- Parameters:
other
- object to compare- Returns:
- true if equals
- See Also:
-
hashCode
public int hashCode()Description copied from class:RubyObject
This override does not do "checked" dispatch since Object usually has #hash defined.- Overrides:
hashCode
in classJavaProxyReflectionObject
- Returns:
- the hash code
- See Also:
-
getMethod
-
getSuperMethod
- Specified by:
getSuperMethod
in interfaceJavaProxyMethod
-
getModifiers
public int getModifiers()- Specified by:
getModifiers
in interfaceJavaProxyMethod
-
getName
- Specified by:
getName
in interfaceJavaProxyMethod
-
getExceptionTypes
- Specified by:
getExceptionTypes
in interfaceParameterTypes
-
getParameterTypes
- Specified by:
getParameterTypes
in interfaceParameterTypes
-
isVarArgs
public final boolean isVarArgs()- Specified by:
isVarArgs
in interfaceParameterTypes
-
hasSuperImplementation
public boolean hasSuperImplementation()Description copied from interface:JavaProxyMethod
is it possible to call the super method?- Specified by:
hasSuperImplementation
in interfaceJavaProxyMethod
-
invoke
public Object invoke(Object proxy, Object[] args) throws IllegalArgumentException, IllegalAccessException, InvocationTargetException, NoSuchMethodException - Specified by:
invoke
in interfaceJavaProxyMethod
- Parameters:
proxy
-args
-- Returns:
- Throws:
IllegalArgumentException
IllegalAccessException
InvocationTargetException
NoSuchMethodException
- if this ProxyMethod has no super implementation
-
getState
Description copied from interface:JavaProxyMethod
get state (cache target callable?) in the proxy method- Specified by:
getState
in interfaceJavaProxyMethod
-
setState
Description copied from interface:JavaProxyMethod
store state (cache target callable?) in the proxy method- Specified by:
setState
in interfaceJavaProxyMethod
-
toString
Description copied from class:RubyObject
The default toString method is just a wrapper that calls the Ruby "to_s" method.- Overrides:
toString
in classJavaProxyReflectionObject
- Returns:
- string representation
-
defaultResult
Deprecated.- Specified by:
defaultResult
in interfaceJavaProxyMethod
-
matches
-
getReturnType
- Specified by:
getReturnType
in interfaceJavaProxyMethod
-
name
Deprecated. -
getDeclaringClass
- Specified by:
getDeclaringClass
in interfaceJavaProxyMethod
-
argument_types
Deprecated. -
argument_types
-
super_p
Deprecated. -
super_p
-
arity
Deprecated. -
arity
-
inspect
Deprecated.Description copied from interface:IRubyObject
RubyMethod inspect.- Specified by:
inspect
in interfaceIRubyObject
- Overrides:
inspect
in classRubyBasicObject
- Returns:
- String
-
inspect
Description copied from class:RubyBasicObject
Returns a string containing a human-readable representation of obj. If not overridden, uses theto_s
method to generate the string. [ 1, 2, 3..4, 'five' ].inspect #=> "[1, 2, 3..4, \"five\"]" Time.new.inspect #=> "Wed Apr 09 08:54:39 CDT 2003"- Specified by:
inspect
in interfaceIRubyObject
- Overrides:
inspect
in classRubyBasicObject
-
do_invoke
Deprecated.Usedo_invoke(ThreadContext, IRubyObject[])
instead.- Parameters:
args
-- Returns:
-
do_invoke
-
getArity
public final int getArity()- Specified by:
getArity
in interfaceParameterTypes
-
do_invoke(ThreadContext, IRubyObject[])
instead.