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.DataNested classes/interfaces inherited from class org.jruby.RubyBasicObject
RubyBasicObject.Finalizer -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Methodprivate final Class[]private final JavaProxyClassprivate Objectprivate final MethodFields inherited from class org.jruby.RubyObject
IVAR_INSPECTING_OBJECT_ALLOCATOR, OBJECT_ALLOCATOR, REIFYING_OBJECT_ALLOCATORFields 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, UNTRUST_F, 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, varTableStampFields 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 TypeMethodDescriptionarity()static RubyClasscreateJavaProxyMethodClass(Ruby runtime, RubyModule Java) Deprecated.do_invoke(IRubyObject[] args) booleanThis override does not do a "checked" dispatch.final intgetArity()final JavaProxyClassfinal Class<?>[]private static RubyClassgetJavaProxyMethod(Ruby runtime) intgetName()final Class<?>[]final Class<?>getState()get state (cache target callable?) in the proxy methodinthashCode()This override does not do "checked" dispatch since Object usually has #hash defined.booleanis it possible to call the super method?inspect()rb_obj_inspect call-seq: obj.inspect => string Returns a string containing a human-readable representation of obj.final booleanfinal booleanname()voidstore state (cache target callable?) in the proxy methodsuper_p()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, aset, hash, is_java_proxy, java_class, java_type, length, op_eqq, op_equal, op_equal, registerRubyMethods, same, to_s, toClassArray, toRubyArrayMethods inherited from class org.jruby.RubyObject
attachToObjectSpace, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, convertToType, createObjectClass, dig, dig1, dig2, eqlInternal, equalInternal, getNativeClassIndex, inspect, puts, specificEval, toRubyStringMethods inherited from class org.jruby.RubyBasicObject
addFinalizer, anyToString, asJavaString, asString, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkCallMethod, checkCallMethod, checkFrozen, checkStringType, checkStringType19, compareTo, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToInteger, convertToString, copyInstanceVariablesInto, copySpecialInstanceVariables, createBasicObjectClass, dataGetStruct, dataGetStructChecked, dataWrapStruct, decode, display, dup, ensureInstanceVariablesSettable, eql, eql_p, equal_p, equal_p19, evalUnder, extend, fastGetInstanceVariable, fastGetInternalVariable, fastHasInstanceVariable, fastHasInternalVariable, fastSetInstanceVariable, fastSetInternalVariable, freeze, frozen_p, getFFIHandle, getFlag, getInstanceEvalClass, getInstanceVariable, getInstanceVariableList, getInstanceVariableNameList, getInstanceVariables, getInternalVariable, getInternalVariables, getJavaClass, getMetaClass, getMetaClass, getNativeHandle, getNativeTypeIndex, getObjectId, getRuntime, getSingletonClass, getSingletonClassClone, getSingletonClassCloneAndAttach, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hashyInspect, hasInstanceVariable, hasInstanceVariables, hasInternalVariable, hasVariables, id, infectBy, initialize, initialize_copy, initialize19, inspectHashCode, instance_eval, instance_eval, instance_eval, instance_eval, instance_eval19, instance_eval19, instance_eval19, instance_eval19, instance_exec, instance_exec19, instance_of_p, instance_variable_defined_p, instance_variable_get, instance_variable_set, instance_variables, instance_variables19, isBuiltin, isClass, isFalse, isFrozen, isImmediate, isModule, isNil, isSpecialConst, isSpecialObject, isTaint, isTrue, isUntrusted, kind_of_p, makeMetaClass, method, method_missing, method_missing19, method19, methods, methods, methods19, nil_p, nonFixnumHashCode, OBJ_INIT_COPY, objInitCopy, op_cmp, op_equal_19, op_match, op_match19, op_not, op_not_equal, op_not_match, private_methods, private_methods19, protected_methods, protected_methods19, public_methods, public_methods19, rbClone, rbClone, rbInspect, remove_instance_variable, removeFinalizers, removeInstanceVariable, removeInternalVariable, respond_to_p, respond_to_p, respond_to_p19, respond_to_p19, respondsTo, respondsToMissing, respondsToMissing, send, send, send, send, send, send19, send19, send19, send19, setFFIHandle, setFlag, setFrozen, setInstanceVariable, setInternalVariable, setMetaClass, setNativeHandle, setTaint, setUntrusted, setVariable, singleton_method, singleton_method_added, singleton_method_added19, singleton_method_removed, singleton_method_removed19, singleton_method_undefined, singleton_method_undefined19, singleton_methods, specificEval, specificEval, specificEval, specificEval, syncVariables, syncVariables, taint, taint, tainted_p, testFrozen, testFrozen, to_a, to_a, toJava, trust, type, type_deprecated, untaint, untrust, untrusted_p, validateInstanceVariable, validateInstanceVariable, validateInstanceVariable, variableTableContains, variableTableFastContains, variableTableFastFetch, variableTableFastStore, variableTableFetch, variableTableRemove, variableTableStore, variableTableSync, yieldUnder, yieldUnderMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.jruby.runtime.builtin.IRubyObject
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, eql, getInstanceVariables, getInternalVariables, getJavaClass, getMetaClass, getRuntime, getSingletonClass, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hasVariables, id, infectBy, isClass, isFrozen, isImmediate, isModule, isNil, isSpecialConst, isTaint, isTrue, isUntrusted, op_eqq, op_equal, rbClone, removeFinalizers, respondsTo, respondsToMissing, respondsToMissing, setFrozen, setTaint, setUntrusted, setVariable, syncVariables, syncVariables, toJava
-
Field Details
-
method
-
superMethod
-
parameterTypes
-
proxyClass
-
state
-
-
Constructor Details
-
ProxyMethodImpl
-
-
Method Details
-
createJavaProxyMethodClass
-
getJavaProxyMethod
-
equals
Description copied from class:RubyObjectThis override does not do a "checked" dispatch.- Overrides:
equalsin classJavaProxyReflectionObject- See Also:
-
hashCode
public int hashCode()Description copied from class:RubyObjectThis override does not do "checked" dispatch since Object usually has #hash defined.- Overrides:
hashCodein classJavaProxyReflectionObject- See Also:
-
getMethod
-
getSuperMethod
- Specified by:
getSuperMethodin interfaceJavaProxyMethod
-
getModifiers
public int getModifiers()- Specified by:
getModifiersin interfaceJavaProxyMethod
-
getName
- Specified by:
getNamein interfaceJavaProxyMethod
-
getExceptionTypes
- Specified by:
getExceptionTypesin interfaceParameterTypes
-
getParameterTypes
- Specified by:
getParameterTypesin interfaceParameterTypes
-
isVarArgs
public final boolean isVarArgs()- Specified by:
isVarArgsin interfaceParameterTypes
-
hasSuperImplementation
public boolean hasSuperImplementation()Description copied from interface:JavaProxyMethodis it possible to call the super method?- Specified by:
hasSuperImplementationin interfaceJavaProxyMethod
-
invoke
public Object invoke(Object proxy, Object[] args) throws IllegalArgumentException, IllegalAccessException, InvocationTargetException, NoSuchMethodException - Specified by:
invokein interfaceJavaProxyMethod- Returns:
- Throws:
IllegalArgumentExceptionIllegalAccessExceptionInvocationTargetExceptionNoSuchMethodException- if this ProxyMethod has no super implementation
-
getState
Description copied from interface:JavaProxyMethodget state (cache target callable?) in the proxy method- Specified by:
getStatein interfaceJavaProxyMethod
-
setState
Description copied from interface:JavaProxyMethodstore state (cache target callable?) in the proxy method- Specified by:
setStatein interfaceJavaProxyMethod
-
toString
Description copied from class:RubyObjectThe default toString method is just a wrapper that calls the Ruby "to_s" method.- Overrides:
toStringin classJavaProxyReflectionObject
-
defaultResult
Deprecated.- Specified by:
defaultResultin interfaceJavaProxyMethod
-
matches
-
getReturnType
- Specified by:
getReturnTypein interfaceJavaProxyMethod
-
name
-
getDeclaringClass
- Specified by:
getDeclaringClassin interfaceJavaProxyMethod
-
argument_types
-
super_p
-
arity
-
inspect
Description copied from class:RubyBasicObjectrb_obj_inspect call-seq: obj.inspect => string Returns a string containing a human-readable representation of obj. If not overridden, uses theto_smethod 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:
inspectin interfaceIRubyObject- Overrides:
inspectin classRubyBasicObject- Returns:
- String
-
do_invoke
-
getArity
public final int getArity()- Specified by:
getArityin interfaceParameterTypes
-