Package org.jruby.java.proxies
Class ConcreteJavaProxy
java.lang.Object
org.jruby.RubyBasicObject
org.jruby.RubyObject
org.jruby.java.proxies.JavaProxy
org.jruby.java.proxies.ConcreteJavaProxy
- All Implemented Interfaces:
Serializable
,Cloneable
,Comparable<IRubyObject>
,InstanceVariables
,InternalVariables
,IRubyObject
,CoreObjectType
- Direct Known Subclasses:
MapJavaProxy
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
static final class
Used by reified classes, this class is tightly coupled with RealClassGenerator, splitInitialize, & finishInitialize Do not refactor without looking at RCGstatic class
Manually added as an override of `new` for Concrete ExtensionNested classes/interfaces inherited from class org.jruby.java.proxies.JavaProxy
JavaProxy.ClassMethods
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
ConstructorsConstructorDescriptionConcreteJavaProxy
(Ruby runtime, RubyClass klazz) ConcreteJavaProxy
(Ruby runtime, RubyClass klazz, Object object) -
Method Summary
Modifier and TypeMethodDescriptionstatic RubyClass
createConcreteJavaProxy
(ThreadContext context, RubyClass JavaProxy) void
ensureThis
(Object self) static int
findSuperLine
(Ruby runtime, DynamicMethod dm, int start) void
Used by reified classes, this method is tightly coupled with RealClassGenerator, splitInitialize Do not refactor without looking at RCGid()
Because we can't physically associate an ID with a Java object, we can only use the identity hashcode here.protected static void
initialize
(RubyClass concreteJavaProxy) Deprecated.protected static void
initialize
(ThreadContext context, RubyClass concreteJavaProxy) splitInitialized
(RubyClass base, IRubyObject[] args, Block block, Java.JCtorCache jcc) Used by reified classes, this method is tightly coupled with RealClassGenerator, finishInitialize Do not refactor without looking at RCG<T> T
Convert the object to the specified Java class, if possible.Methods inherited from class org.jruby.java.proxies.JavaProxy
asJavaObject, checkVariablesOnProxy, cloneObject, createJavaProxy, dataGetStruct, dataWrapStruct, equal_p, field_accessor, field_reader, field_writer, getJavaClass, getJavaClass, getObject, getVariable, inherited, initialize_copy, inspectHashCode, installField, java_class, java_method, java_method, java_send, java_send, java_send, java_send, marshal_dump, marshal_dump, marshal_load, new_array, op_aref, persistent, persistent, setJavaClass, setJavaClass, setJavaClass, setObject, setVariable, singleton_class, singleton_class, singletonClass, unwrap, wrap
Methods inherited from class org.jruby.RubyObject
attachToObjectSpace, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, convertToType, dig, dig1, dig2, eqlInternal, equalInternal, equals, finishObjectClass, getNativeClassIndex, hashCode, inspect, op_eqq, puts, specificEval, toRubyString, toString
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, dataGetStructChecked, decode, display, dup, dupFinalizer, dupSetup, ensureInstanceVariablesSettable, eql, eql_p, eql_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, getMarshalVariableList, getMetaClass, getMetaClass, getNativeHandle, getNativeTypeIndex, getObjectId, getRuntime, getSingletonClass, getSingletonClassClone, getSingletonClassCloneAndAttach, getSingletonClassCloneAndAttach, getType, getVariableCount, getVariableList, getVariableNameList, hash, hash, hashyInspect, hasInstanceVariable, hasInstanceVariables, hasInternalVariable, hasVariables, infectBy, initialize, initialize_copy, inspect, inspect, 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_equal, 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, singleton_method, singleton_method, singleton_method_added, singleton_method_removed, singleton_method_undefined, singleton_methods, specificEval, specificEval, specificEval, specificEval, syncVariables, syncVariables, taint, taint, tainted_p, testFrozen, testFrozen, to_a, to_a, to_s, to_s, 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
checkStringType19, dup, marshalLiveVariables
-
Constructor Details
-
ConcreteJavaProxy
-
ConcreteJavaProxy
-
-
Method Details
-
createConcreteJavaProxy
-
findSuperLine
-
splitInitialized
public ConcreteJavaProxy.SplitCtorData splitInitialized(RubyClass base, IRubyObject[] args, Block block, Java.JCtorCache jcc) Used by reified classes, this method is tightly coupled with RealClassGenerator, finishInitialize Do not refactor without looking at RCG- Returns:
- An object used by reified code and the finishInitialize method
-
finishInitialize
Used by reified classes, this method is tightly coupled with RealClassGenerator, splitInitialize Do not refactor without looking at RCGNote: invoked from generated byte-code
-
ensureThis
-
initialize
Deprecated. -
initialize
-
id
Because we can't physically associate an ID with a Java object, we can only use the identity hashcode here.- Specified by:
id
in interfaceIRubyObject
- Overrides:
id
in classRubyBasicObject
- Returns:
- The identity hashcode for the Java object.
-
toJava
Description copied from interface:IRubyObject
Convert the object to the specified Java class, if possible.- Specified by:
toJava
in interfaceIRubyObject
- Overrides:
toJava
in classJavaProxy
- Type Parameters:
T
- type- Parameters:
type
- The target type to which the object should be converted.- Returns:
- java type
- See Also:
-