org.jruby.javasupport
Class JavaObject
java.lang.Object
org.jruby.RubyBasicObject
org.jruby.RubyObject
org.jruby.javasupport.JavaObject
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<IRubyObject>, InstanceVariables, InternalVariables, IRubyObject, CoreObjectType
- Direct Known Subclasses:
- JavaArray, JavaClass
public class JavaObject
- extends RubyObject
- Author:
- jpetersen
- See Also:
- Serialized Form
Fields inherited from class org.jruby.RubyBasicObject |
ALL_F, ERR_INSECURE_SET_INST_VAR, FALSE_F, FL_USHIFT, flags, FROZEN_F, metaClass, NEVER, NIL_F, TAINTED_F, UNDEF, UNTRUSTED_F, USER0_F, USER1_F, USER2_F, USER3_F, USER4_F, USER5_F, USER6_F, USER7_F |
Method Summary |
IRubyObject |
afill(IRubyObject beginIndex,
IRubyObject endIndex,
IRubyObject someValue)
|
IRubyObject |
aref(IRubyObject index)
|
IRubyObject |
aset(IRubyObject index,
IRubyObject someValue)
|
static RubyClass |
createJavaObjectClass(Ruby runtime,
RubyModule javaModule)
|
java.lang.Object |
dataGetStruct()
Our version of Data_Get_Struct. |
void |
dataWrapStruct(java.lang.Object object)
Our version of Data_Wrap_Struct. |
boolean |
equals(java.lang.Object other)
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. |
java.lang.Class<?> |
getJavaClass()
Will return the Java interface that most closely can represent
this object, when working through JAva integration
translations. |
java.lang.Object |
getValue()
|
RubyFixnum |
hash()
rb_obj_id
Will return the hash code of this object. |
int |
hashCode()
Override the Object#hashCode method to make sure that the Ruby
hash is actually used as the hashcode for Ruby objects. |
IRubyObject |
is_java_proxy()
|
IRubyObject |
java_class()
|
RubyString |
java_type()
|
RubyFixnum |
length()
|
IRubyObject |
marshal_dump()
|
IRubyObject |
marshal_load(ThreadContext context,
IRubyObject str)
|
IRubyObject |
op_equal(IRubyObject other)
|
protected static void |
registerRubyMethods(Ruby runtime,
RubyClass result)
|
IRubyObject |
ruby_synchronized(ThreadContext context,
Block block)
|
IRubyObject |
same(IRubyObject other)
|
IRubyObject |
to_s()
rb_any_to_s
call-seq:
obj.to_s => string
Returns a string representing obj. |
static JavaObject |
wrap(Ruby runtime,
java.lang.Object value)
|
Methods inherited from class org.jruby.RubyObject |
as, attachToObjectSpace, callInit, checkFrozen, convertToType, createObjectClass, display, dup, eql_p, eqlInternal, equal_p, equalInternal, evalUnder, evalUnder, extend, freeze, frozen_p, getNativeTypeIndex, id_deprecated, id, initialize_copy, initialize, 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, kind_of_p, method, methods, nil_p, op_eqq, op_equal, op_match, private_methods, protected_methods, public_methods, puts, rbClone, remove_instance_variable, respond_to_p, respond_to_p, send, send, send, send, send, singleton_methods, singleton_methods19, singletonMethods, specificEval, specificEval, specificEval, specificEval, specificEval, taint, tainted_p, to_a, to_java, toString, trust, type_deprecated, type, untaint, untrust, untrusted_p, validateInstanceVariable |
Methods inherited from class org.jruby.RubyBasicObject |
addFinalizer, anyToString, asJavaString, asString, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkStringType, compareTo, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToInteger, convertToString, copyInstanceVariablesInto, copySpecialInstanceVariables, createBasicObjectClass, ensureInstanceVariablesSettable, eql, fastGetInstanceVariable, fastGetInternalVariable, fastHasInstanceVariable, fastHasInternalVariable, fastSetInstanceVariable, fastSetInternalVariable, getFlag, getInstanceVariable, getInstanceVariableList, getInstanceVariableNameList, getInstanceVariables, getInternalVariable, getInternalVariables, getMetaClass, getRuntime, getSingletonClass, getSingletonClassClone, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hasInstanceVariable, hasInternalVariable, hasVariables, infectBy, isClass, isFalse, isFrozen, isImmediate, isModule, isNil, isTaint, isTrue, isUntrusted, makeMetaClass, op_not_equal, op_not, removeFinalizers, removeInstanceVariable, removeInternalVariable, respondsTo, setFlag, setFrozen, setInstanceVariable, setInternalVariable, setMetaClass, setTaint, setUntrusted, setVariable, syncVariables, taint, testFrozen, testFrozen, variableTableContains, variableTableFastContains, variableTableFastFetch, variableTableFastStore, variableTableFetch, variableTableGetSize, variableTableRemove, variableTableStore, variableTableSync |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
JavaObject
protected JavaObject(Ruby runtime,
RubyClass rubyClass,
java.lang.Object value)
JavaObject
protected JavaObject(Ruby runtime,
java.lang.Object value)
dataGetStruct
public java.lang.Object dataGetStruct()
- Description copied from interface:
IRubyObject
- Our version of Data_Get_Struct.
Returns a wrapped data value if there is one, otherwise returns null.
- Specified by:
dataGetStruct
in interface IRubyObject
- Overrides:
dataGetStruct
in class RubyBasicObject
- Returns:
- the object wrapped.
- See Also:
IRubyObject.dataGetStruct()
dataWrapStruct
public void dataWrapStruct(java.lang.Object object)
- Description copied from interface:
IRubyObject
- Our version of Data_Wrap_Struct.
This method will just set a private pointer to the object provided. This pointer is transient
and will not be accessible from Ruby.
- Specified by:
dataWrapStruct
in interface IRubyObject
- Overrides:
dataWrapStruct
in class RubyBasicObject
- Parameters:
object
- the object to wrap- See Also:
org.jruby.runtime.builtin.IRubyObject#dataWrapStruct()
wrap
public static JavaObject wrap(Ruby runtime,
java.lang.Object value)
getJavaClass
public java.lang.Class<?> getJavaClass()
- Description copied from class:
RubyBasicObject
- Will return the Java interface that most closely can represent
this object, when working through JAva integration
translations.
- Specified by:
getJavaClass
in interface IRubyObject
- Overrides:
getJavaClass
in class RubyBasicObject
- Returns:
- Class
getValue
public java.lang.Object getValue()
createJavaObjectClass
public static RubyClass createJavaObjectClass(Ruby runtime,
RubyModule javaModule)
registerRubyMethods
protected static void registerRubyMethods(Ruby runtime,
RubyClass result)
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 RubyObject
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 RubyObject
hash
public RubyFixnum hash()
- Description copied from class:
RubyObject
- rb_obj_id
Will return the hash code of this object. In comparison to MRI,
this method will use the Java identity hash code instead of
using rb_obj_id, since the usage of id in JRuby will incur the
cost of some. ObjectSpace maintenance.
- Overrides:
hash
in class RubyObject
to_s
public IRubyObject to_s()
- Description copied from class:
RubyObject
- rb_any_to_s
call-seq:
obj.to_s => string
Returns a string representing obj. The default
to_s
prints the object's class and an encoding of the
object id. As a special case, the top-level object that is the
initial execution context of Ruby programs returns ``main.''
- Overrides:
to_s
in class RubyObject
op_equal
public IRubyObject op_equal(IRubyObject other)
same
public IRubyObject same(IRubyObject other)
java_type
public RubyString java_type()
java_class
public IRubyObject java_class()
length
public RubyFixnum length()
aref
public IRubyObject aref(IRubyObject index)
aset
public IRubyObject aset(IRubyObject index,
IRubyObject someValue)
afill
public IRubyObject afill(IRubyObject beginIndex,
IRubyObject endIndex,
IRubyObject someValue)
is_java_proxy
public IRubyObject is_java_proxy()
ruby_synchronized
public IRubyObject ruby_synchronized(ThreadContext context,
Block block)
marshal_dump
public IRubyObject marshal_dump()
marshal_load
public IRubyObject marshal_load(ThreadContext context,
IRubyObject str)
Copyright © 2002-2007 JRuby Team. All Rights Reserved.