Package org.jruby.javasupport.proxy
Class JavaProxyConstructor
java.lang.Object
org.jruby.RubyBasicObject
org.jruby.RubyObject
org.jruby.javasupport.proxy.JavaProxyReflectionObject
org.jruby.javasupport.proxy.JavaProxyConstructor
- All Implemented Interfaces:
Serializable,Cloneable,Comparable<IRubyObject>,ParameterTypes,InstanceVariables,InternalVariables,IRubyObject,CoreObjectType
- 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 Class<?>[]private final booleanprivate final JavaProxyClassprivate final booleanprivate final Constructor<?>Fields 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
ConstructorsConstructorDescriptionJavaProxyConstructor(Ruby runtime, JavaProxyClass proxyClass, Constructor<?> constructor) -
Method Summary
Modifier and TypeMethodDescriptionfinal RubyArrayarity()private Object[]convertArguments(RubyArray arguments) static RubyClasscreateJavaProxyConstructorClass(Ruby runtime, RubyModule Java) booleanThis override does not do a "checked" dispatch.final intgetArity()final Class<?>[]final Class<?>[]inthashCode()This override does not do "checked" dispatch since Object usually has #hash defined.inspect()rb_obj_inspect call-seq: obj.inspect => string Returns a string containing a human-readable representation of obj.final booleanfinal booleanstatic RaiseExceptionmapInstantiationException(Ruby runtime, Throwable e) new_instance(IRubyObject[] args, Block block) new_instance2(IRubyObject[] args, Block unusedBlock) final ObjectnewInstance(Object[] args, Ruby runtime, IRubyObject clazz) newInstance(IRubyObject self, Object[] args) final JavaObjectnewInstance(IRubyObject self, IRubyObject arg0) final JavaObjectnewInstance(IRubyObject self, IRubyObject[] args) (package private) final ObjectnewInstanceImpl(Object[] argsPlus1, Ruby runtime, IRubyObject clazz) For exportable objects, argsPlus1 is not plus onestatic RuntimeExceptiontoString()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, yieldUnder
-
Field Details
-
proxyConstructor
-
actualParameterTypes
-
actualVarArgs
private final boolean actualVarArgs -
exportable
private final boolean exportable -
declaringProxyClass
-
-
Constructor Details
-
JavaProxyConstructor
JavaProxyConstructor(Ruby runtime, JavaProxyClass proxyClass, Constructor<?> constructor)
-
-
Method Details
-
createJavaProxyConstructorClass
-
getParameterTypes
- Specified by:
getParameterTypesin interfaceParameterTypes
-
getExceptionTypes
- Specified by:
getExceptionTypesin interfaceParameterTypes
-
isExportable
public final boolean isExportable() -
isVarArgs
public final boolean isVarArgs()- Specified by:
isVarArgsin interfaceParameterTypes
-
getDeclaringClass
-
newInstance
public final Object newInstance(Object[] args, Ruby runtime, IRubyObject clazz) throws IllegalArgumentException, InstantiationException, IllegalAccessException, InvocationTargetException -
newInstanceImpl
final Object newInstanceImpl(Object[] argsPlus1, Ruby runtime, IRubyObject clazz) throws IllegalArgumentException, InstantiationException, IllegalAccessException, InvocationTargetException For exportable objects, argsPlus1 is not plus one- Parameters:
argsPlus1-handler-- Returns:
- Throws:
IllegalArgumentExceptionInstantiationExceptionIllegalAccessExceptionInvocationTargetException
-
arity
-
getArity
public final int getArity()- Specified by:
getArityin interfaceParameterTypes
-
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:
-
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
-
toString
Description copied from class:RubyObjectThe default toString method is just a wrapper that calls the Ruby "to_s" method.- Overrides:
toStringin classJavaProxyReflectionObject
-
argument_types
-
new_instance2
-
newInstance
- Throws:
RaiseException
-
newInstance
- Throws:
RaiseException
-
newInstance
- Throws:
RaiseException
-
mapInstantiationException
-
throwInstantiationExceptionCause
public static RuntimeException throwInstantiationExceptionCause(Ruby runtime, ReflectiveOperationException e) -
new_instance
-
convertArguments
-