org.jruby.javasupport.proxy
Class JavaProxyClass.ProxyMethodImpl
java.lang.Object
org.jruby.RubyObject
org.jruby.javasupport.proxy.JavaProxyReflectionObject
org.jruby.javasupport.proxy.JavaProxyClass.ProxyMethodImpl
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, ParameterTypes, JavaProxyMethod, InstanceVariables, InternalVariables, IRubyObject, CoreObjectType
- Enclosing class:
- JavaProxyClass
public static class JavaProxyClass.ProxyMethodImpl
- extends JavaProxyReflectionObject
- implements JavaProxyMethod
- See Also:
- Serialized Form
Fields inherited from class org.jruby.RubyObject |
ALL_F, ERR_INSECURE_SET_INST_VAR, FALSE_F, FL_USHIFT, flags, FROZEN_F, metaClass, NEVER, NIL_F, OBJECT_ALLOCATOR, TAINTED_F, UNDEF, USER0_F, USER1_F, USER2_F, USER3_F, USER4_F, USER5_F, USER6_F, USER7_F, VARIABLE_TABLE_DEFAULT_CAPACITY, VARIABLE_TABLE_EMPTY_TABLE, VARIABLE_TABLE_LOAD_FACTOR, VARIABLE_TABLE_MAXIMUM_CAPACITY, variableTable, variableTableSize, variableTableThreshold |
Methods inherited from class org.jruby.javasupport.proxy.JavaProxyReflectionObject |
aref, aset, buildRubyArray, buildRubyArray, hash, is_java_proxy, java_class, java_type, length, op_equal, registerRubyMethods, same, to_s |
Methods inherited from class org.jruby.RubyObject |
addFinalizer, anyToString, as, asJavaString, asString, attachToObjectSpace, callInit, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkFrozen, checkStringType, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToString, convertToType, copySpecialInstanceVariables, createObjectClass, dataGetStruct, dataWrapStruct, display, dup, ensureInstanceVariablesSettable, eql_p, eql, eqlInternal, equal_p, equalInternal, evalUnder, evalUnder, extend, fastGetInstanceVariable, fastGetInternalVariable, fastHasInstanceVariable, fastHasInternalVariable, fastSetInstanceVariable, fastSetInternalVariable, freeze, frozen_p, getFlag, getInstanceVariable, getInstanceVariableList, getInstanceVariableNameList, getInstanceVariables, getInternalVariable, getInternalVariableList, getInternalVariables, getJavaClass, getMetaClass, getNativeTypeIndex, getRuntime, getSingletonClass, getSingletonClassClone, getType, getVariableCount, getVariableList, getVariableMap, getVariableNameList, hasInstanceVariable, hasInternalVariable, hasVariables, id_deprecated, id, infectBy, initialize_copy, initialize, 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, isClass, isFalse, isFrozen, isImmediate, isModule, isNil, isRubyVariable, isTaint, isTrue, kind_of_p, makeMetaClass, method, methods, nil_p, op_eqq, op_equal, op_match, private_methods, protected_methods, public_methods, puts, rbClone, remove_instance_variable, removeFinalizers, removeInstanceVariable, removeInternalVariable, respond_to_p, respond_to_p, respondsTo, send, setFlag, setFrozen, setInstanceVariable, setInternalVariable, setMetaClass, setTaint, singleton_methods, specificEval, specificEval, specificEval, specificEval, specificEval, syncVariables, taint, tainted_p, testFrozen, to_a, to_java, type_deprecated, type, untaint, validateInstanceVariable, variableTableContains, variableTableFastContains, variableTableFastFetch, variableTableFastStore, variableTableFetch, variableTableGetMap, variableTableGetMap, variableTableGetSize, variableTableGetTable, variableTableReadLocked, variableTableRehash, variableTableRemove, variableTableStore, variableTableSync |
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, anyToString, asJavaString, asString, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkStringType, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToString, dataGetStruct, dataWrapStruct, dup, eql, getInstanceVariables, getInternalVariables, getJavaClass, getMetaClass, getRuntime, getSingletonClass, getType, getVariableCount, getVariableList, getVariableNameList, hasVariables, id, infectBy, isClass, isFrozen, isImmediate, isModule, isNil, isTaint, isTrue, op_eqq, op_equal, rbClone, removeFinalizers, respondsTo, setFrozen, setTaint, syncVariables |
JavaProxyClass.ProxyMethodImpl
public JavaProxyClass.ProxyMethodImpl(Ruby runtime,
JavaProxyClass clazz,
java.lang.reflect.Method m,
java.lang.reflect.Method sm)
equals
public boolean equals(java.lang.Object other)
- Description copied from class:
RubyObject
- This method is just a wrapper around the Ruby "==" method,
provided so that RubyObjects can be used as keys in the Java
HashMap object underlying RubyHash.
- Overrides:
equals
in class JavaProxyReflectionObject
hashCode
public int hashCode()
- Description copied from class:
RubyObject
- Override the Object#hashCode method to make sure that the Ruby
hash is actually used as the hashcode for Ruby objects. If the
Ruby "hash" method doesn't return a number, the Object#hashCode
implementation will be used instead.
- Overrides:
hashCode
in class JavaProxyReflectionObject
getMethod
public java.lang.reflect.Method getMethod()
getSuperMethod
public java.lang.reflect.Method getSuperMethod()
- Specified by:
getSuperMethod
in interface JavaProxyMethod
getModifiers
public int getModifiers()
- Specified by:
getModifiers
in interface JavaProxyMethod
getName
public java.lang.String getName()
- Specified by:
getName
in interface JavaProxyMethod
getExceptionTypes
public java.lang.Class<?>[] getExceptionTypes()
- Specified by:
getExceptionTypes
in interface ParameterTypes
getParameterTypes
public java.lang.Class<?>[] getParameterTypes()
- Specified by:
getParameterTypes
in interface ParameterTypes
isVarArgs
public boolean isVarArgs()
- Specified by:
isVarArgs
in interface ParameterTypes
getState
public java.lang.Object getState()
- Description copied from interface:
JavaProxyMethod
- get state (cache target callable?) in the proxy method
- Specified by:
getState
in interface JavaProxyMethod
hasSuperImplementation
public boolean hasSuperImplementation()
- Description copied from interface:
JavaProxyMethod
- is it possible to call the super method?
- Specified by:
hasSuperImplementation
in interface JavaProxyMethod
invoke
public java.lang.Object invoke(java.lang.Object proxy,
java.lang.Object[] args)
throws java.lang.IllegalArgumentException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException,
java.lang.NoSuchMethodException
- Specified by:
invoke
in interface JavaProxyMethod
- Returns:
-
- Throws:
java.lang.IllegalArgumentException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
java.lang.NoSuchMethodException
- if this ProxyMethod has no super implementation
setState
public void setState(java.lang.Object state)
- Description copied from interface:
JavaProxyMethod
- store state (cache target callable?) in the proxy method
- Specified by:
setState
in interface JavaProxyMethod
toString
public java.lang.String toString()
- Description copied from class:
RubyObject
- The default toString method is just a wrapper that calls the
Ruby "to_s" method.
- Overrides:
toString
in class JavaProxyReflectionObject
defaultResult
public java.lang.Object defaultResult()
- Specified by:
defaultResult
in interface JavaProxyMethod
matches
public boolean matches(java.lang.String name,
java.lang.Class[] parameterTypes)
getReturnType
public java.lang.Class getReturnType()
- Specified by:
getReturnType
in interface JavaProxyMethod
createJavaProxyMethodClass
public static RubyClass createJavaProxyMethodClass(Ruby runtime,
RubyModule javaProxyModule)
name
public RubyObject name()
getDeclaringClass
public JavaProxyClass getDeclaringClass()
- Specified by:
getDeclaringClass
in interface JavaProxyMethod
argument_types
public RubyArray argument_types()
super_p
public IRubyObject super_p()
arity
public RubyFixnum arity()
nameOnInspection
protected java.lang.String nameOnInspection()
inspect
public IRubyObject inspect()
- Description copied from class:
RubyObject
- rb_obj_inspect
call-seq:
obj.inspect => string
Returns a string containing a human-readable representation of
obj. If not overridden, uses the
to_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 interface IRubyObject
- Overrides:
inspect
in class RubyObject
- Returns:
- String
do_invoke
public IRubyObject do_invoke(IRubyObject[] nargs)
Copyright © 2002-2007 JRuby Team. All Rights Reserved.