org.jruby
Class RubyNil

java.lang.Object
  extended by org.jruby.RubyBasicObject
      extended by org.jruby.RubyObject
          extended by org.jruby.RubyNil
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<IRubyObject>, InstanceVariables, InternalVariables, IRubyObject, CoreObjectType

public class RubyNil
extends RubyObject

Author:
jpetersen
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jruby.RubyObject
RubyObject.Data
 
Nested classes/interfaces inherited from class org.jruby.RubyBasicObject
RubyBasicObject.Finalizer
 
Field Summary
static ObjectAllocator NIL_ALLOCATOR
           
 
Fields inherited from class org.jruby.RubyObject
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, 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, USER8_F
 
Fields inherited from interface org.jruby.runtime.builtin.IRubyObject
NULL_ARRAY
 
Constructor Summary
RubyNil(Ruby runtime)
           
 
Method Summary
static RubyClass createNilClass(Ruby runtime)
           
 java.lang.Class<?> getJavaClass()
          Will return the Java interface that most closely can represent this object, when working through JAva integration translations.
 int getNativeTypeIndex()
          This is overridden in the other concrete Java builtins to provide a fast way to determine what type they are.
 RubyClass getSingletonClass()
          rb_singleton_class Note: this method is specialized for RubyFixnum, RubySymbol, RubyNil and RubyBoolean Will either return the existing singleton class for this object, or create a new one and return that.
 RubyFixnum id()
          rb_obj_id Return the internal id of an object.
static RubyString inspect(IRubyObject recv)
          nil_inspect
 boolean isImmediate()
          Is object immediate (def: Fixnum, Symbol, true, false, nil?).
 IRubyObject nil_p()
           
static RubyBoolean op_and(IRubyObject recv, IRubyObject obj)
          nil_and
static RubyBoolean op_or(IRubyObject recv, IRubyObject obj)
          nil_or
static RubyBoolean op_xor(IRubyObject recv, IRubyObject obj)
          nil_xor
static IRubyObject rationalize(ThreadContext context, IRubyObject recv, IRubyObject[] args)
          nilclass_rationalize
 IRubyObject taint(ThreadContext context)
          rb_obj_taint call-seq: obj.taint -> obj Marks obj as tainted---if the $SAFE level is set appropriately, many method calls which might alter the running programs environment will refuse to accept tainted strings.
static RubyArray to_a(IRubyObject recv)
          nil_to_a
static IRubyObject to_c(ThreadContext context, IRubyObject recv)
          nilclass_to_c
static RubyFloat to_f(IRubyObject recv)
          nil_to_f
static RubyFixnum to_i(IRubyObject recv)
          nil_to_i
static IRubyObject to_r(ThreadContext context, IRubyObject recv)
          nilclass_to_r
static RubyString to_s(IRubyObject recv)
          nil_to_s
 java.lang.Object toJava(java.lang.Class target)
          Convert the object to the specified Java class, if possible.
static RubyClass type(IRubyObject recv)
          nil_type
 
Methods inherited from class org.jruby.RubyObject
attachToObjectSpace, callInit, callInit, callInit, callInit, callInit, convertToType, createObjectClass, eqlInternal, equalInternal, equals, hashCode, initialize, op_eqq, puts, specificEval, toString
 
Methods inherited from class org.jruby.RubyBasicObject
addFinalizer, anyToString, asJavaString, asString, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkCallMethod, checkFrozen, checkStringType, checkStringType19, compareTo, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToInteger, convertToString, copyInstanceVariablesInto, copySpecialInstanceVariables, createBasicObjectClass, dataGetStruct, dataGetStructChecked, dataWrapStruct, display, dup, ensureInstanceVariablesSettable, eql_p, eql, equal_p, equal_p19, evalUnder, extend, fastGetInstanceVariable, fastGetInternalVariable, fastHasInstanceVariable, fastHasInternalVariable, fastSetInstanceVariable, fastSetInternalVariable, freeze, frozen_p, getFlag, getInstanceEvalClass, getInstanceVariable, getInstanceVariableList, getInstanceVariableNameList, getInstanceVariables, getInternalVariable, getInternalVariables, getMetaClass, getObjectId, getRuntime, getSingletonClassClone, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hash, hashyInspect, hasInstanceVariable, hasInternalVariable, hasVariables, id_deprecated, infectBy, initialize_copy, initialize19, initialize19, initialize19, initialize19, initialize19, initObjectId, inspect, 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, isModule, isNil, isTaint, isTrue, isUntrusted, kind_of_p, makeMetaClass, method_missing19, method, method19, methods, methods, methods19, nil_p, op_cmp, op_equal_19, op_equal, op_match, op_match19, op_not_equal, op_not_match, op_not, private_methods, private_methods19, protected_methods, protected_methods19, public_methods, public_methods19, rbClone, 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, send19, setFlag, setFrozen, setInstanceVariable, setInternalVariable, setMetaClass, setTaint, setUntrusted, setVariable, singleton_method_added19, singleton_method_removed19, singleton_method_undefined19, singleton_methods, singleton_methods19, specificEval, specificEval, specificEval, specificEval, syncVariables, syncVariables, taint, tainted_p, testFrozen, testFrozen, to_a, to_s, trust, type_deprecated, type, untaint, untrust, untrusted_p, 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
 

Field Detail

NIL_ALLOCATOR

public static final ObjectAllocator NIL_ALLOCATOR
Constructor Detail

RubyNil

public RubyNil(Ruby runtime)
Method Detail

createNilClass

public static RubyClass createNilClass(Ruby runtime)

getNativeTypeIndex

public int getNativeTypeIndex()
Description copied from class: RubyObject
This is overridden in the other concrete Java builtins to provide a fast way to determine what type they are. Will generally return a value from org.jruby.runtime.ClassIndex

Specified by:
getNativeTypeIndex in interface CoreObjectType
Overrides:
getNativeTypeIndex in class RubyObject
Returns:
the ClassIndex of the native type this object was constructed from
See Also:
org.jruby.runtime.ClassInde

isImmediate

public boolean isImmediate()
Description copied from class: RubyBasicObject
Is object immediate (def: Fixnum, Symbol, true, false, nil?).

Specified by:
isImmediate in interface IRubyObject
Overrides:
isImmediate in class RubyBasicObject
Returns:

getSingletonClass

public RubyClass getSingletonClass()
Description copied from class: RubyBasicObject
rb_singleton_class Note: this method is specialized for RubyFixnum, RubySymbol, RubyNil and RubyBoolean Will either return the existing singleton class for this object, or create a new one and return that.

Specified by:
getSingletonClass in interface IRubyObject
Overrides:
getSingletonClass in class RubyBasicObject
Returns:
RubyClass

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

to_i

public static RubyFixnum to_i(IRubyObject recv)
nil_to_i


to_f

public static RubyFloat to_f(IRubyObject recv)
nil_to_f


to_s

public static RubyString to_s(IRubyObject recv)
nil_to_s


to_a

public static RubyArray to_a(IRubyObject recv)
nil_to_a


inspect

public static RubyString inspect(IRubyObject recv)
nil_inspect


type

public static RubyClass type(IRubyObject recv)
nil_type


op_and

public static RubyBoolean op_and(IRubyObject recv,
                                 IRubyObject obj)
nil_and


op_or

public static RubyBoolean op_or(IRubyObject recv,
                                IRubyObject obj)
nil_or


op_xor

public static RubyBoolean op_xor(IRubyObject recv,
                                 IRubyObject obj)
nil_xor


nil_p

public IRubyObject nil_p()

id

public RubyFixnum id()
Description copied from class: RubyBasicObject
rb_obj_id Return the internal id of an object.

Specified by:
id in interface IRubyObject
Overrides:
id in class RubyBasicObject
Returns:

taint

public IRubyObject taint(ThreadContext context)
Description copied from class: RubyBasicObject
rb_obj_taint call-seq: obj.taint -> obj Marks obj as tainted---if the $SAFE level is set appropriately, many method calls which might alter the running programs environment will refuse to accept tainted strings.

Overrides:
taint in class RubyBasicObject

to_c

public static IRubyObject to_c(ThreadContext context,
                               IRubyObject recv)
nilclass_to_c


to_r

public static IRubyObject to_r(ThreadContext context,
                               IRubyObject recv)
nilclass_to_r


rationalize

public static IRubyObject rationalize(ThreadContext context,
                                      IRubyObject recv,
                                      IRubyObject[] args)
nilclass_rationalize


toJava

public java.lang.Object toJava(java.lang.Class target)
Description copied from interface: IRubyObject
Convert the object to the specified Java class, if possible.

Specified by:
toJava in interface IRubyObject
Overrides:
toJava in class RubyBasicObject
Parameters:
target - The target type to which the object should be converted.
See Also:
IRubyObject.toJava


Copyright © 2002-2009 JRuby Team. All Rights Reserved.