org.jruby.javasupport
Class JavaObject
java.lang.Object
org.jruby.RubyObject
org.jruby.javasupport.JavaObject
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, 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.RubyObject |
ALL_F, ERR_INSECURE_SET_INST_VAR, FALSE_F, FL_USHIFT, flags, FROZEN_F, metaClass, metaClassName, 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.RubyObject |
addFinalizer, anyToString, 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, extend, fastGetInstanceVariable, fastGetInternalVariable, fastHasInstanceVariable, fastHasInternalVariable, fastSetInstanceVariable, fastSetInternalVariable, freeze, frozen_p, getFlag, getInstanceVariable, getInstanceVariableList, getInstanceVariableNameList, getInstanceVariables, getInternalVariable, getInternalVariableList, getInternalVariables, getMetaClass, getNativeTypeIndex, getRuntime, getSingletonClass, getSingletonClassClone, getType, getVariableCount, getVariableList, getVariableMap, getVariableNameList, hasInstanceVariable, hasInternalVariable, hasVariables, id_deprecated, id, infectBy, initialize_copy, initialize, inspect, 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, syncVariables, taint, tainted_p, testFrozen, to_a, toString, 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 |
JavaObject
protected JavaObject(Ruby runtime,
RubyClass rubyClass,
java.lang.Object value)
JavaObject
protected JavaObject(Ruby runtime,
java.lang.Object value)
wrap
public static JavaObject wrap(Ruby runtime,
java.lang.Object value)
getJavaClass
public java.lang.Class<?> getJavaClass()
- Description copied from class:
RubyObject
- 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 RubyObject
- 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 maintainence.
- 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)
Copyright © 2002-2007 JRuby Team. All Rights Reserved.