|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jruby.RubyBasicObject
public class RubyBasicObject
Nested Class Summary | |
---|---|
static class |
RubyBasicObject.Finalizer
Class that keeps track of the finalizers for the object under operation. |
Field Summary | |
---|---|
static int |
ALL_F
|
static ObjectAllocator |
BASICOBJECT_ALLOCATOR
Default allocator instance for all Ruby objects. |
static int |
COMPARE_BY_IDENTITY_F
|
protected static java.lang.String |
ERR_INSECURE_SET_INST_VAR
The error message used when some one tries to modify an instance variable in a high security setting. |
static int |
FALSE_F
|
static int |
FL_USHIFT
|
protected int |
flags
|
static int |
FROZEN_F
|
protected RubyClass |
metaClass
|
static IRubyObject |
NEVER
A value that is used as a null sentinel in among other places the RubyArray implementation. |
static int |
NIL_F
This flag is a bit funny. |
static int |
TAINTED_F
|
static IRubyObject |
UNDEF
A value that specifies an undefined value. |
static int |
UNTRUSTED_F
|
static int |
USER0_F
|
static int |
USER1_F
|
static int |
USER2_F
|
static int |
USER3_F
|
static int |
USER4_F
|
static int |
USER5_F
|
static int |
USER6_F
|
static int |
USER7_F
|
static int |
USER8_F
|
Fields inherited from interface org.jruby.runtime.builtin.IRubyObject |
---|
NULL_ARRAY |
Constructor Summary | |
---|---|
|
RubyBasicObject(RubyClass metaClass)
Path for objects that don't taint and don't enter objectspace. |
|
RubyBasicObject(Ruby runtime,
RubyClass metaClass)
Standard path for object creation. |
protected |
RubyBasicObject(Ruby runtime,
RubyClass metaClass,
boolean useObjectSpace)
|
protected |
RubyBasicObject(Ruby runtime,
RubyClass metaClass,
boolean useObjectSpace,
boolean canBeTainted)
Path for objects who want to decide whether they don't want to be in ObjectSpace even when it is on. |
Method Summary | |
---|---|
void |
addFinalizer(IRubyObject f)
Adds the specified object as a finalizer for this object. |
IRubyObject |
anyToString()
Internal method that helps to convert any object into the format of a class name and a hex string inside of #<>. |
java.lang.String |
asJavaString()
rb_to_id Will try to convert this object to a String using the Ruby "to_str" if the object isn't already a String. |
RubyString |
asString()
rb_obj_as_string First converts this object into a String using the "to_s" method, infects it with the current taint and returns it. |
IRubyObject |
callMethod(java.lang.String name)
|
IRubyObject |
callMethod(java.lang.String name,
IRubyObject... args)
|
IRubyObject |
callMethod(ThreadContext context,
int methodIndex,
java.lang.String name)
Deprecated. |
IRubyObject |
callMethod(ThreadContext context,
int methodIndex,
java.lang.String name,
IRubyObject arg)
Deprecated. |
IRubyObject |
callMethod(ThreadContext context,
java.lang.String name)
Will invoke a named method with no arguments and no block. |
IRubyObject |
callMethod(ThreadContext context,
java.lang.String name,
IRubyObject arg)
Will invoke a named method with one argument and no block with functional invocation. |
IRubyObject |
callMethod(ThreadContext context,
java.lang.String name,
IRubyObject[] args)
Will invoke a named method with the supplied arguments and no block with functional invocation. |
IRubyObject |
callMethod(ThreadContext context,
java.lang.String name,
IRubyObject[] args,
Block block)
Will invoke a named method with the supplied arguments and supplied block with functional invocation. |
IRubyObject |
callSuper(ThreadContext context,
IRubyObject[] args,
Block block)
Deprecated. |
IRubyObject |
checkArrayType()
rb_check_array_type Returns the result of trying to convert this object to an Array with "to_ary". |
IRubyObject |
checkCallMethod(ThreadContext context,
java.lang.String name)
Will invoke a named method with no arguments and no block if that method or a custom method missing exists. |
protected void |
checkFrozen()
The actual method that checks frozen with the default frozen message from MRI. |
IRubyObject |
checkStringType()
rb_check_string_type Tries to return a coerced string representation of this object, using "to_str". |
IRubyObject |
checkStringType19()
rb_check_string_type Tries to return a coerced string representation of this object, using "to_str". |
int |
compareTo(IRubyObject other)
|
RubyArray |
convertToArray()
Tries to convert this object to a Ruby Array using the "to_ary" method. |
RubyFloat |
convertToFloat()
Tries to convert this object to a Ruby Float using the "to_f" method. |
RubyHash |
convertToHash()
Tries to convert this object to a Ruby Hash using the "to_hash" method. |
RubyInteger |
convertToInteger()
Tries to convert this object to a Ruby Integer using the "to_int" method. |
RubyInteger |
convertToInteger(int methodIndex,
java.lang.String convertMethod)
Deprecated. |
RubyInteger |
convertToInteger(java.lang.String convertMethod)
Tries to convert this object to a Ruby Integer using the supplied conversion method. |
RubyString |
convertToString()
Tries to convert this object to a Ruby String using the "to_str" method. |
void |
copyInstanceVariablesInto(InstanceVariables other)
Copies all instance variables from the given object into the receiver |
void |
copySpecialInstanceVariables(IRubyObject clone)
Lots of MRI objects keep their state in non-lookupable ivars (e:g. |
static RubyClass |
createBasicObjectClass(Ruby runtime,
RubyClass objectClass)
Will create the Ruby class Object in the runtime specified. |
java.lang.Object |
dataGetStruct()
Our version of Data_Get_Struct. |
java.lang.Object |
dataGetStructChecked()
|
void |
dataWrapStruct(java.lang.Object obj)
Our version of Data_Wrap_Struct. |
IRubyObject |
display(ThreadContext context,
IRubyObject[] args)
rb_obj_display call-seq: obj.display(port=$>) => nil Prints obj on the given port (default $> ). |
IRubyObject |
dup()
RubyMethod dup. |
protected void |
ensureInstanceVariablesSettable()
Makes sure that instance variables can be set on this object, including information about whether this object is frozen, or tainted. |
IRubyObject |
eql_p(IRubyObject obj)
rb_obj_equal Just like "==" and "equal?", "eql?" will use identity equality for Object. |
boolean |
eql(IRubyObject other)
method used for Hash key comparison (specialized for String, Symbol and Fixnum) Will by default just call the Ruby method "eql?" |
IRubyObject |
equal_p(ThreadContext context,
IRubyObject obj)
rb_obj_equal Will use Java identity equality. |
IRubyObject |
equal_p19(ThreadContext context,
IRubyObject other)
|
protected static boolean |
equalInternal(ThreadContext context,
IRubyObject that,
IRubyObject other)
Helper method for checking equality, first using Java identity equality, and then calling the "==" method. |
IRubyObject |
evalUnder(ThreadContext context,
RubyModule under,
RubyString src,
java.lang.String file,
int line)
Evaluates the string src with self set to the current object, using the module under as the context. |
IRubyObject |
extend(IRubyObject[] args)
rb_obj_extend call-seq: obj.extend(module, ...) => obj Adds to _obj_ the instance methods from each module given as a parameter. |
IRubyObject |
fastGetInstanceVariable(java.lang.String internedName)
Returns the named instance variable if present, else null. |
java.lang.Object |
fastGetInternalVariable(java.lang.String internedName)
Returns the named internal variable if present, else null. |
boolean |
fastHasInstanceVariable(java.lang.String internedName)
Returns true if object has the named instance variable. |
boolean |
fastHasInternalVariable(java.lang.String internedName)
Returns true if object has the named internal variable. |
IRubyObject |
fastSetInstanceVariable(java.lang.String internedName,
IRubyObject value)
Sets the named instance variable to the specified value. |
void |
fastSetInternalVariable(java.lang.String internedName,
java.lang.Object value)
Sets the named internal variable to the specified value. |
IRubyObject |
freeze(ThreadContext context)
rb_obj_freeze call-seq: obj.freeze => obj Prevents further modifications to obj. |
RubyBoolean |
frozen_p(ThreadContext context)
rb_obj_frozen_p call-seq: obj.frozen? => true or false Returns the freeze status of obj. |
boolean |
getFlag(int flag)
Get the value of a custom flag on this object. |
protected RubyModule |
getInstanceEvalClass()
|
IRubyObject |
getInstanceVariable(java.lang.String name)
Returns the named instance variable if present, else null. |
java.util.List<Variable<IRubyObject>> |
getInstanceVariableList()
Gets a list of all variables in this object. |
java.util.List<java.lang.String> |
getInstanceVariableNameList()
Gets a name list of all variables in this object. |
InstanceVariables |
getInstanceVariables()
Dummy method to avoid a cast, and to avoid polluting the IRubyObject interface with all the instance variable management methods. |
java.lang.Object |
getInternalVariable(java.lang.String name)
Returns the named internal variable if present, else null. |
InternalVariables |
getInternalVariables()
Dummy method to avoid a cast, and to avoid polluting the IRubyObject interface with all the instance variable management methods. |
java.lang.Class |
getJavaClass()
Will return the Java interface that most closely can represent this object, when working through JAva integration translations. |
RubyClass |
getMetaClass()
if exist return the meta-class else return the type of the object. |
int |
getNativeTypeIndex()
Return the ClassIndex value for the native type this object was constructed from. |
protected long |
getObjectId()
The logic here is to use the special objectId accessor slot from the parent as a lazy store for an object ID. |
Ruby |
getRuntime()
Will return the runtime that this object is associated with. |
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. |
protected RubyClass |
getSingletonClassClone()
rb_singleton_class_clone Will make sure that if the current objects class is a singleton, it will get cloned. |
RubyClass |
getType()
RubyMethod getType. |
java.lang.Object |
getVariable(int index)
|
int |
getVariableCount()
Deprecated. |
java.util.List<Variable<java.lang.Object>> |
getVariableList()
Gets a list of all variables in this object. |
java.util.List<java.lang.String> |
getVariableNameList()
Gets a name list of all variables in this object. |
RubyFixnum |
hash()
rb_obj_id Will return the hash code of this object. |
IRubyObject |
hashyInspect()
|
boolean |
hasInstanceVariable(java.lang.String name)
Returns true if object has the named instance variable. |
boolean |
hasInternalVariable(java.lang.String name)
Returns true if object has the named internal variable. |
boolean |
hasVariables()
Returns true if object has any variables, defined as: instance variables class variables constants internal variables, such as those used when marshaling Ranges and Exceptions |
IRubyObject |
id_deprecated()
rb_obj_id_obsolete Old id version. |
IRubyObject |
id()
rb_obj_id Return the internal id of an object. |
IRubyObject |
infectBy(IRubyObject obj)
OBJ_INFECT Infects this object with traits from the argument obj. |
IRubyObject |
initialize_copy(IRubyObject original)
rb_obj_init_copy Initializes this object as a copy of the original, that is the parameter to this object. |
IRubyObject |
initialize()
|
IRubyObject |
initialize19()
|
IRubyObject |
initialize19(IRubyObject arg0)
|
IRubyObject |
initialize19(IRubyObject[] args)
|
IRubyObject |
initialize19(IRubyObject arg0,
IRubyObject arg1)
|
IRubyObject |
initialize19(IRubyObject arg0,
IRubyObject arg1,
IRubyObject arg2)
|
protected long |
initObjectId(RubyClass.VariableAccessor objectIdAccessor)
We lazily stand up the object ID since it forces us to stand up per-object state for a given object. |
IRubyObject |
inspect()
rb_obj_inspect call-seq: obj.inspect => string Returns a string containing a human-readable representation of obj. |
protected int |
inspectHashCode()
For most objects, the hash used in the default #inspect is just the identity hashcode of the actual object. |
IRubyObject |
instance_eval(ThreadContext context,
Block block)
rb_obj_instance_eval call-seq: obj.instance_eval(string [, filename [, lineno]] ) => obj obj.instance_eval {| | block } => obj Evaluates a string containing Ruby source code, or the given block, within the context of the receiver (_obj_). |
IRubyObject |
instance_eval(ThreadContext context,
IRubyObject arg0,
Block block)
|
IRubyObject |
instance_eval(ThreadContext context,
IRubyObject arg0,
IRubyObject arg1,
Block block)
|
IRubyObject |
instance_eval(ThreadContext context,
IRubyObject arg0,
IRubyObject arg1,
IRubyObject arg2,
Block block)
|
IRubyObject |
instance_eval19(ThreadContext context,
Block block)
|
IRubyObject |
instance_eval19(ThreadContext context,
IRubyObject arg0,
Block block)
|
IRubyObject |
instance_eval19(ThreadContext context,
IRubyObject arg0,
IRubyObject arg1,
Block block)
|
IRubyObject |
instance_eval19(ThreadContext context,
IRubyObject arg0,
IRubyObject arg1,
IRubyObject arg2,
Block block)
|
IRubyObject |
instance_exec(ThreadContext context,
IRubyObject[] args,
Block block)
rb_obj_instance_exec call-seq: obj.instance_exec(arg...) {|var...| block } => obj Executes the given block within the context of the receiver (_obj_). |
IRubyObject |
instance_exec19(ThreadContext context,
IRubyObject[] args,
Block block)
|
RubyBoolean |
instance_of_p(ThreadContext context,
IRubyObject type)
rb_obj_is_instance_of call-seq: obj.instance_of?(class) => true or false Returns true if obj is an instance of the given
class. |
IRubyObject |
instance_variable_defined_p(ThreadContext context,
IRubyObject name)
rb_obj_ivar_defined call-seq: obj.instance_variable_defined?(symbol) => true or false Returns true if the given instance variable is
defined in obj. |
IRubyObject |
instance_variable_get(ThreadContext context,
IRubyObject name)
rb_obj_ivar_get call-seq: obj.instance_variable_get(symbol) => obj Returns the value of the given instance variable, or nil if the instance variable is not set. |
IRubyObject |
instance_variable_set(IRubyObject name,
IRubyObject value)
rb_obj_ivar_set call-seq: obj.instance_variable_set(symbol, obj) => obj Sets the instance variable names by symbol to object, thereby frustrating the efforts of the class's author to attempt to provide proper encapsulation. |
RubyArray |
instance_variables(ThreadContext context)
rb_obj_instance_variables call-seq: obj.instance_variables => array Returns an array of instance variable names for the receiver. |
RubyArray |
instance_variables19(ThreadContext context)
|
boolean |
isBuiltin(java.lang.String methodName)
A method to determine whether the method named by methodName is a builtin method. |
boolean |
isClass()
Specifically polymorphic method that are meant to be overridden by classes to specify that they are classes in an easy way. |
boolean |
isFalse()
Is this value a false value or not? Based on the FALSE_F flag. |
boolean |
isFrozen()
Is this value frozen or not? Shortcut for doing getFlag(FROZEN_F). |
boolean |
isImmediate()
Is object immediate (def: Fixnum, Symbol, true, false, nil?). |
boolean |
isModule()
Specifically polymorphic method that are meant to be overridden by modules to specify that they are modules in an easy way. |
boolean |
isNil()
Does this object represent nil? See the docs for the NIL_F flag for more information. |
boolean |
isTaint()
Gets the taint. |
boolean |
isTrue()
Is this value a true value or not? Based on the FALSE_F flag. |
boolean |
isUntrusted()
Is this value untrusted or not? Shortcut for doing getFlag(UNTRUSTED_F). |
RubyBoolean |
kind_of_p(ThreadContext context,
IRubyObject type)
rb_obj_is_kind_of call-seq: obj.is_a?(class) => true or false obj.kind_of?(class) => true or false Returns true if class is the class of
obj, or if class is one of the superclasses of
obj or modules included in obj. |
RubyClass |
makeMetaClass(RubyClass superClass)
rb_make_metaclass Will create a new meta class, insert this in the chain of classes for this specific object, and return the generated meta class. |
static IRubyObject |
method_missing19(ThreadContext context,
IRubyObject recv,
IRubyObject[] args,
Block block)
|
IRubyObject |
method(IRubyObject symbol)
rb_obj_method call-seq: obj.method(sym) => method Looks up the named method as a receiver in obj, returning a Method object (or raising NameError ). |
IRubyObject |
method19(IRubyObject symbol)
|
IRubyObject |
methods(ThreadContext context,
IRubyObject[] args)
rb_obj_methods call-seq: obj.methods => array Returns a list of the names of methods publicly accessible in obj. |
IRubyObject |
methods(ThreadContext context,
IRubyObject[] args,
boolean useSymbols)
|
IRubyObject |
methods19(ThreadContext context,
IRubyObject[] args)
|
IRubyObject |
nil_p(ThreadContext context)
rb_false call_seq: nil.nil? => true true to nil? . |
IRubyObject |
op_cmp(ThreadContext context,
IRubyObject other)
|
IRubyObject |
op_eqq(ThreadContext context,
IRubyObject other)
|
IRubyObject |
op_equal_19(ThreadContext context,
IRubyObject obj)
rb_obj_equal Will by default use identity equality to compare objects. |
IRubyObject |
op_equal(ThreadContext context,
IRubyObject obj)
|
IRubyObject |
op_match(ThreadContext context,
IRubyObject arg)
rb_obj_pattern_match call-seq: obj =~ other => false Pattern Match---Overridden by descendents (notably Regexp and String ) to provide meaningful
pattern-match semantics. |
IRubyObject |
op_match19(ThreadContext context,
IRubyObject arg)
|
IRubyObject |
op_not_equal(ThreadContext context,
IRubyObject other)
|
IRubyObject |
op_not_match(ThreadContext context,
IRubyObject arg)
|
IRubyObject |
op_not(ThreadContext context)
|
IRubyObject |
private_methods(ThreadContext context,
IRubyObject[] args)
rb_obj_private_methods call-seq: obj.private_methods(all=true) => array Returns the list of private methods accessible to obj. |
IRubyObject |
private_methods19(ThreadContext context,
IRubyObject[] args)
|
IRubyObject |
protected_methods(ThreadContext context,
IRubyObject[] args)
rb_obj_protected_methods call-seq: obj.protected_methods(all=true) => array Returns the list of protected methods accessible to obj. |
IRubyObject |
protected_methods19(ThreadContext context,
IRubyObject[] args)
|
IRubyObject |
public_methods(ThreadContext context,
IRubyObject[] args)
rb_obj_public_methods call-seq: obj.public_methods(all=true) => array Returns the list of public methods accessible to obj. |
IRubyObject |
public_methods19(ThreadContext context,
IRubyObject[] args)
|
IRubyObject |
rbClone()
RubyMethod rbClone. |
IRubyObject |
remove_instance_variable(ThreadContext context,
IRubyObject name,
Block block)
rb_obj_remove_instance_variable call-seq: obj.remove_instance_variable(symbol) => obj Removes the named instance variable from obj, returning that variable's value. |
void |
removeFinalizers()
Remove all the finalizers for this object. |
IRubyObject |
removeInstanceVariable(java.lang.String name)
Removes the named instance variable, if present, returning its value. |
java.lang.Object |
removeInternalVariable(java.lang.String name)
Removes the named internal variable, if present, returning its value. |
RubyBoolean |
respond_to_p(IRubyObject mname)
obj_respond_to respond_to?( aSymbol, includePriv=false ) -> true or false Returns true if this object responds to the given method. |
RubyBoolean |
respond_to_p(IRubyObject mname,
IRubyObject includePrivate)
obj_respond_to respond_to?( aSymbol, includePriv=false ) -> true or false Returns true if this object responds to the given method. |
IRubyObject |
respond_to_p19(IRubyObject mname)
|
IRubyObject |
respond_to_p19(IRubyObject mname,
IRubyObject includePrivate)
|
boolean |
respondsTo(java.lang.String name)
Does this object respond to the specified message? Uses a shortcut if it can be proved that respond_to? haven't been overridden. |
boolean |
respondsToMissing(java.lang.String name)
Does this object respond to the specified message via "method_missing?" |
boolean |
respondsToMissing(java.lang.String name,
boolean priv)
Does this object respond to the specified message via "method_missing?" |
IRubyObject |
send(ThreadContext context,
Block block)
rb_f_send send( aSymbol [, args ]* ) -> anObject Invokes the method identified by aSymbol, passing it any arguments specified. |
IRubyObject |
send(ThreadContext context,
IRubyObject[] args,
Block block)
|
IRubyObject |
send(ThreadContext context,
IRubyObject arg0,
Block block)
|
IRubyObject |
send(ThreadContext context,
IRubyObject arg0,
IRubyObject arg1,
Block block)
|
IRubyObject |
send(ThreadContext context,
IRubyObject arg0,
IRubyObject arg1,
IRubyObject arg2,
Block block)
|
IRubyObject |
send19(ThreadContext context,
Block block)
|
IRubyObject |
send19(ThreadContext context,
IRubyObject[] args,
Block block)
|
IRubyObject |
send19(ThreadContext context,
IRubyObject arg0,
Block block)
|
IRubyObject |
send19(ThreadContext context,
IRubyObject arg0,
IRubyObject arg1,
Block block)
|
IRubyObject |
send19(ThreadContext context,
IRubyObject arg0,
IRubyObject arg1,
IRubyObject arg2,
Block block)
|
void |
setFlag(int flag,
boolean set)
Sets or unsets a flag on this object. |
void |
setFrozen(boolean frozen)
Sets whether this object is frozen or not. |
IRubyObject |
setInstanceVariable(java.lang.String name,
IRubyObject value)
rb_iv_set / rb_ivar_set |
void |
setInternalVariable(java.lang.String name,
java.lang.Object value)
Sets the named internal variable to the specified value. |
void |
setMetaClass(RubyClass metaClass)
Makes it possible to change the metaclass of an object. |
void |
setTaint(boolean taint)
Sets the taint flag. |
void |
setUntrusted(boolean untrusted)
Sets whether this object is frozen or not. |
void |
setVariable(int index,
java.lang.Object value)
|
static IRubyObject |
singleton_method_added19(ThreadContext context,
IRubyObject recv,
IRubyObject symbolId,
Block block)
|
static IRubyObject |
singleton_method_removed19(ThreadContext context,
IRubyObject recv,
IRubyObject symbolId,
Block block)
|
static IRubyObject |
singleton_method_undefined19(ThreadContext context,
IRubyObject recv,
IRubyObject symbolId,
Block block)
|
RubyArray |
singleton_methods(ThreadContext context,
IRubyObject[] args)
rb_obj_singleton_methods call-seq: obj.singleton_methods(all=true) => array Returns an array of the names of singleton methods for obj. |
RubyArray |
singleton_methods19(ThreadContext context,
IRubyObject[] args)
|
IRubyObject |
specificEval(ThreadContext context,
RubyModule mod,
Block block)
specific_eval Evaluates the block or string inside of the context of this object, using the supplied arguments. |
IRubyObject |
specificEval(ThreadContext context,
RubyModule mod,
IRubyObject arg,
Block block)
specific_eval Evaluates the block or string inside of the context of this object, using the supplied arguments. |
IRubyObject |
specificEval(ThreadContext context,
RubyModule mod,
IRubyObject arg0,
IRubyObject arg1,
Block block)
specific_eval Evaluates the block or string inside of the context of this object, using the supplied arguments. |
IRubyObject |
specificEval(ThreadContext context,
RubyModule mod,
IRubyObject arg0,
IRubyObject arg1,
IRubyObject arg2,
Block block)
specific_eval Evaluates the block or string inside of the context of this object, using the supplied arguments. |
void |
syncVariables(IRubyObject other)
Sync one this object's variables with other's - this is used to make rbClone work correctly. |
void |
syncVariables(java.util.List<Variable<java.lang.Object>> variables)
Deprecated. |
protected void |
taint(Ruby runtime)
|
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. |
RubyBoolean |
tainted_p(ThreadContext context)
rb_obj_tainted call-seq: obj.tainted? => true or false Returns true if the object is tainted. |
protected void |
testFrozen()
rb_frozen_class_p Helper to test whether this object is frozen, and if it is will throw an exception based on the message. |
protected void |
testFrozen(java.lang.String message)
rb_frozen_class_p Helper to test whether this object is frozen, and if it is will throw an exception based on the message. |
RubyArray |
to_a()
rb_any_to_a call-seq: obj.to_a -> anArray Returns an array representation of obj. |
IRubyObject |
to_s()
rb_any_to_s call-seq: obj.to_s => string Returns a string representing obj. |
java.lang.Object |
toJava(java.lang.Class target)
Convert the object to the specified Java class, if possible. |
IRubyObject |
trust(ThreadContext context)
rb_obj_trust call-seq: obj.trust => obj Removes the untrusted mark from obj. |
RubyClass |
type_deprecated()
rb_obj_type The deprecated version of type, that emits a deprecation warning. |
RubyClass |
type()
rb_obj_class Returns the real class of this object, excluding any singleton/meta class in the inheritance chain. |
IRubyObject |
untaint(ThreadContext context)
rb_obj_untaint call-seq: obj.untaint => obj Removes the taint from obj. |
IRubyObject |
untrust(ThreadContext context)
rb_obj_untrust call-seq: obj.untrust -> obj Marks obj as untrusted. |
RubyBoolean |
untrusted_p(ThreadContext context)
rb_obj_untrusted call-seq: obj.untrusted? => true or false Returns true if the object is untrusted. |
protected java.lang.String |
validateInstanceVariable(java.lang.String name)
Checks if the name parameter represents a legal instance variable name, and otherwise throws a Ruby NameError |
protected boolean |
variableTableContains(java.lang.String name)
Checks if the variable table contains a variable of the specified name. |
protected boolean |
variableTableFastContains(java.lang.String internedName)
Checks if the variable table contains the the variable of the specified name, where the precondition is that the name must be an interned Java String. |
protected java.lang.Object |
variableTableFastFetch(java.lang.String internedName)
Fetch an object from the variable table based on the name, where the name must be an interned Java String. |
protected java.lang.Object |
variableTableFastStore(java.lang.String internedName,
java.lang.Object value)
Will store the value under the specified name, where the name needs to be an interned Java String. |
protected java.lang.Object |
variableTableFetch(java.lang.String name)
Fetch an object from the variable table based on the name. |
protected java.lang.Object |
variableTableRemove(java.lang.String name)
Removes the entry with the specified name from the variable table, and returning the removed value. |
protected java.lang.Object |
variableTableStore(java.lang.String name,
java.lang.Object value)
Store a value in the variable store under the specific name. |
protected void |
variableTableSync(java.util.List<Variable<java.lang.Object>> vars)
Synchronize the variable table with the argument. |
protected IRubyObject |
yieldUnder(ThreadContext context,
RubyModule under,
Block block)
Will yield to the specific block changing the self to be the current object instead of the self that is part of the frame saved in the block frame. |
protected IRubyObject |
yieldUnder(ThreadContext context,
RubyModule under,
IRubyObject[] args,
Block block)
Will yield to the specific block changing the self to be the current object instead of the self that is part of the frame saved in the block frame. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected transient RubyClass metaClass
protected int flags
protected static final java.lang.String ERR_INSECURE_SET_INST_VAR
public static final int ALL_F
public static final int FALSE_F
public static final int NIL_F
isNil()
method is called extremely often. So often
that it gives a good speed boost to make it monomorphic and
final. It turns out using a flag for this actually gives us
better performance than having a polymorphic isNil()
method.
public static final int FROZEN_F
public static final int TAINTED_F
public static final int UNTRUSTED_F
public static final int FL_USHIFT
public static final int USER0_F
public static final int USER1_F
public static final int USER2_F
public static final int USER3_F
public static final int USER4_F
public static final int USER5_F
public static final int USER6_F
public static final int USER7_F
public static final int USER8_F
public static final int COMPARE_BY_IDENTITY_F
public static final IRubyObject NEVER
public static final IRubyObject UNDEF
public static final ObjectAllocator BASICOBJECT_ALLOCATOR
ObjectAllocator
Constructor Detail |
---|
public RubyBasicObject(Ruby runtime, RubyClass metaClass)
public RubyBasicObject(RubyClass metaClass)
protected RubyBasicObject(Ruby runtime, RubyClass metaClass, boolean useObjectSpace, boolean canBeTainted)
protected RubyBasicObject(Ruby runtime, RubyClass metaClass, boolean useObjectSpace)
Method Detail |
---|
public static RubyClass createBasicObjectClass(Ruby runtime, RubyClass objectClass)
public IRubyObject initialize()
public IRubyObject initialize19()
public IRubyObject initialize19(IRubyObject arg0)
public IRubyObject initialize19(IRubyObject arg0, IRubyObject arg1)
public IRubyObject initialize19(IRubyObject arg0, IRubyObject arg1, IRubyObject arg2)
public IRubyObject initialize19(IRubyObject[] args)
protected void taint(Ruby runtime)
protected final void testFrozen(java.lang.String message)
protected final void testFrozen()
public final void setFlag(int flag, boolean set)
FALSE_F
NIL_F
FROZEN_F
TAINTED_F
USER0_F
USER1_F
USER2_F
USER3_F
USER4_F
USER5_F
USER6_F
USER7_F
flag
- the actual flag to set or unset.set
- if true, the flag will be set, if false, the flag will be unset.public final boolean getFlag(int flag)
FALSE_F
NIL_F
FROZEN_F
TAINTED_F
USER0_F
USER1_F
USER2_F
USER3_F
USER4_F
USER5_F
USER6_F
USER7_F
flag
- the flag to get
@Deprecated public IRubyObject callSuper(ThreadContext context, IRubyObject[] args, Block block)
callSuper
in interface IRubyObject
public final IRubyObject checkCallMethod(ThreadContext context, java.lang.String name)
checkCallMethod
in interface IRubyObject
public final IRubyObject callMethod(ThreadContext context, java.lang.String name)
callMethod
in interface IRubyObject
public final IRubyObject callMethod(ThreadContext context, java.lang.String name, IRubyObject arg)
callMethod
in interface IRubyObject
public final IRubyObject callMethod(ThreadContext context, java.lang.String name, IRubyObject[] args)
callMethod
in interface IRubyObject
public final IRubyObject callMethod(java.lang.String name, IRubyObject... args)
public final IRubyObject callMethod(java.lang.String name)
public final IRubyObject callMethod(ThreadContext context, java.lang.String name, IRubyObject[] args, Block block)
callMethod
in interface IRubyObject
@Deprecated public final IRubyObject callMethod(ThreadContext context, int methodIndex, java.lang.String name)
callMethod
in interface IRubyObject
@Deprecated public final IRubyObject callMethod(ThreadContext context, int methodIndex, java.lang.String name, IRubyObject arg)
callMethod
in interface IRubyObject
public final boolean isNil()
NIL_F
flag for more information.
isNil
in interface IRubyObject
public final boolean isTrue()
FALSE_F
flag.
isTrue
in interface IRubyObject
public final boolean isFalse()
FALSE_F
flag.
public boolean isTaint()
isTaint
in interface IRubyObject
public void setTaint(boolean taint)
setTaint
in interface IRubyObject
taint
- should this object be tainted or not?public IRubyObject infectBy(IRubyObject obj)
infectBy
in interface IRubyObject
public boolean isFrozen()
isFrozen
in interface IRubyObject
public void setFrozen(boolean frozen)
setFrozen
in interface IRubyObject
frozen
- should this object be frozen?public boolean isUntrusted()
isUntrusted
in interface IRubyObject
public void setUntrusted(boolean untrusted)
setUntrusted
in interface IRubyObject
frozen
- should this object be frozen?public boolean isImmediate()
isImmediate
in interface IRubyObject
public final RubyClass getMetaClass()
getMetaClass
in interface IRubyObject
public RubyClass getSingletonClass()
getSingletonClass
in interface IRubyObject
public RubyClass makeMetaClass(RubyClass superClass)
public void setMetaClass(RubyClass metaClass)
public RubyClass getType()
IRubyObject
getType
in interface IRubyObject
IRubyObject.getType()
public final boolean respondsTo(java.lang.String name)
respondsTo
in interface IRubyObject
public final boolean respondsToMissing(java.lang.String name)
respondsToMissing
in interface IRubyObject
public final boolean respondsToMissing(java.lang.String name, boolean priv)
respondsToMissing
in interface IRubyObject
public final Ruby getRuntime()
getRuntime
in interface IRubyObject
public java.lang.Class getJavaClass()
getJavaClass
in interface IRubyObject
public java.lang.String asJavaString()
asJavaString
in interface IRubyObject
public RubyString asString()
anyToString()
is used
instead.
asString
in interface IRubyObject
public RubyArray convertToArray()
convertToArray
in interface IRubyObject
public RubyHash convertToHash()
convertToHash
in interface IRubyObject
public RubyFloat convertToFloat()
convertToFloat
in interface IRubyObject
public RubyInteger convertToInteger()
convertToInteger
in interface IRubyObject
@Deprecated public RubyInteger convertToInteger(int methodIndex, java.lang.String convertMethod)
convertToInteger
in interface IRubyObject
public RubyInteger convertToInteger(java.lang.String convertMethod)
convertToInteger
in interface IRubyObject
public RubyString convertToString()
convertToString
in interface IRubyObject
public IRubyObject anyToString()
anyToString
in interface IRubyObject
public IRubyObject checkStringType()
checkStringType
in interface IRubyObject
public IRubyObject checkStringType19()
checkStringType19
in interface IRubyObject
public IRubyObject checkArrayType()
checkArrayType
in interface IRubyObject
public java.lang.Object toJava(java.lang.Class target)
IRubyObject
toJava
in interface IRubyObject
target
- The target type to which the object should be converted.IRubyObject.toJava
public IRubyObject dup()
IRubyObject
dup
in interface IRubyObject
public void copySpecialInstanceVariables(IRubyObject clone)
copySpecialInstanceVariables
in interface IRubyObject
public IRubyObject rbClone()
IRubyObject
rbClone
in interface IRubyObject
protected RubyClass getSingletonClassClone()
public boolean isModule()
isModule
in interface IRubyObject
(someObject instanceof RubyModule)
instead.public boolean isClass()
isClass
in interface IRubyObject
(someObject instanceof RubyClass/MetaClass)
instead.public void dataWrapStruct(java.lang.Object obj)
IRubyObject
dataWrapStruct
in interface IRubyObject
obj
- the object to wraporg.jruby.runtime.builtin.IRubyObject#dataWrapStruct()
public java.lang.Object dataGetStruct()
IRubyObject
dataGetStruct
in interface IRubyObject
IRubyObject.dataGetStruct()
public java.lang.Object dataGetStructChecked()
dataGetStructChecked
in interface IRubyObject
public IRubyObject id()
id
in interface IRubyObject
protected long getObjectId()
protected long initObjectId(RubyClass.VariableAccessor objectIdAccessor)
objectIdAccessor
- The variable accessor to use for storing the
generated object ID
public IRubyObject inspect()
to_s
method 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"
inspect
in interface IRubyObject
public IRubyObject hashyInspect()
protected int inspectHashCode()
public IRubyObject op_not(ThreadContext context)
public IRubyObject op_not_equal(ThreadContext context, IRubyObject other)
public int compareTo(IRubyObject other)
compareTo
in interface java.lang.Comparable<IRubyObject>
public IRubyObject op_equal(ThreadContext context, IRubyObject obj)
op_equal
in interface IRubyObject
public IRubyObject op_equal_19(ThreadContext context, IRubyObject obj)
public IRubyObject op_eqq(ThreadContext context, IRubyObject other)
op_eqq
in interface IRubyObject
public IRubyObject equal_p19(ThreadContext context, IRubyObject other)
protected static boolean equalInternal(ThreadContext context, IRubyObject that, IRubyObject other)
public boolean eql(IRubyObject other)
eql
in interface IRubyObject
public void addFinalizer(IRubyObject f)
addFinalizer
in interface IRubyObject
public void removeFinalizers()
removeFinalizers
in interface IRubyObject
public java.lang.Object getVariable(int index)
getVariable
in interface IRubyObject
public void setVariable(int index, java.lang.Object value)
setVariable
in interface IRubyObject
public boolean hasVariables()
hasVariables
in interface IRubyObject
@Deprecated public int getVariableCount()
getVariableCount
in interface IRubyObject
public java.util.List<Variable<java.lang.Object>> getVariableList()
getVariableList
in interface IRubyObject
public java.util.List<java.lang.String> getVariableNameList()
getVariableNameList
in interface IRubyObject
protected boolean variableTableContains(java.lang.String name)
protected boolean variableTableFastContains(java.lang.String internedName)
protected java.lang.Object variableTableFetch(java.lang.String name)
protected java.lang.Object variableTableFastFetch(java.lang.String internedName)
protected java.lang.Object variableTableStore(java.lang.String name, java.lang.Object value)
protected java.lang.Object variableTableFastStore(java.lang.String internedName, java.lang.Object value)
protected java.lang.Object variableTableRemove(java.lang.String name)
protected void variableTableSync(java.util.List<Variable<java.lang.Object>> vars)
public InternalVariables getInternalVariables()
getInternalVariables
in interface IRubyObject
public boolean hasInternalVariable(java.lang.String name)
InternalVariables
hasInternalVariable
in interface InternalVariables
name
- the name of an internal variable
InternalVariables.hasInternalVariable(java.lang.String)
public boolean fastHasInternalVariable(java.lang.String internedName)
InternalVariables
fastHasInternalVariable
in interface InternalVariables
internedName
- the interned name of an internal variable
InternalVariables.fastHasInternalVariable(java.lang.String)
public java.lang.Object getInternalVariable(java.lang.String name)
InternalVariables
getInternalVariable
in interface InternalVariables
name
- the name of an internal variable
InternalVariables.getInternalVariable(java.lang.String)
public java.lang.Object fastGetInternalVariable(java.lang.String internedName)
InternalVariables
fastGetInternalVariable
in interface InternalVariables
internedName
- the interned name of an internal variable
InternalVariables.fastGetInternalVariable(java.lang.String)
public void setInternalVariable(java.lang.String name, java.lang.Object value)
InternalVariables
setInternalVariable
in interface InternalVariables
name
- the name of an internal variablevalue
- the value to be setInternalVariables.setInternalVariable(java.lang.String, java.lang.Object)
public void fastSetInternalVariable(java.lang.String internedName, java.lang.Object value)
InternalVariables
fastSetInternalVariable
in interface InternalVariables
internedName
- the interned name of an internal variablevalue
- the value to be setInternalVariables.fastSetInternalVariable(java.lang.String, java.lang.Object)
public java.lang.Object removeInternalVariable(java.lang.String name)
InternalVariables
removeInternalVariable
in interface InternalVariables
name
- the name of the variable to remove
InternalVariables.removeInternalVariable(java.lang.String)
@Deprecated public void syncVariables(java.util.List<Variable<java.lang.Object>> variables)
syncVariables
in interface IRubyObject
variables
- the variables to be set for objectpublic void syncVariables(IRubyObject other)
syncVariables
in interface IRubyObject
other
- the source object containing the variables to syncpublic InstanceVariables getInstanceVariables()
getInstanceVariables
in interface IRubyObject
public boolean hasInstanceVariable(java.lang.String name)
InstanceVariables
hasInstanceVariable
in interface InstanceVariables
name
- the name of an instance variable
InstanceVariables.hasInstanceVariable(java.lang.String)
public boolean fastHasInstanceVariable(java.lang.String internedName)
InstanceVariables
fastHasInstanceVariable
in interface InstanceVariables
internedName
- the interned name of an instance variable
InstanceVariables.fastHasInstanceVariable(java.lang.String)
public IRubyObject getInstanceVariable(java.lang.String name)
InstanceVariables
getInstanceVariable
in interface InstanceVariables
name
- the name of an instance variable
InstanceVariables.getInstanceVariable(java.lang.String)
public IRubyObject fastGetInstanceVariable(java.lang.String internedName)
InstanceVariables
fastGetInstanceVariable
in interface InstanceVariables
internedName
- the interned name of an instance variable
InstanceVariables.fastGetInstanceVariable(java.lang.String)
public IRubyObject setInstanceVariable(java.lang.String name, IRubyObject value)
setInstanceVariable
in interface InstanceVariables
name
- the name of an instance variablevalue
- the value to be setInstanceVariables.setInstanceVariable(java.lang.String, org.jruby.runtime.builtin.IRubyObject)
public IRubyObject fastSetInstanceVariable(java.lang.String internedName, IRubyObject value)
InstanceVariables
fastSetInstanceVariable
in interface InstanceVariables
internedName
- the interned name of an instance variablevalue
- the value to be setInstanceVariables.fastSetInstanceVariable(java.lang.String, org.jruby.runtime.builtin.IRubyObject)
public IRubyObject removeInstanceVariable(java.lang.String name)
InstanceVariables
removeInstanceVariable
in interface InstanceVariables
name
- the name of the variable to remove
InstanceVariables.removeInstanceVariable(java.lang.String)
public java.util.List<Variable<IRubyObject>> getInstanceVariableList()
getInstanceVariableList
in interface InstanceVariables
public java.util.List<java.lang.String> getInstanceVariableNameList()
getInstanceVariableNameList
in interface InstanceVariables
public void copyInstanceVariablesInto(InstanceVariables other)
InstanceVariables
copyInstanceVariablesInto
in interface InstanceVariables
InstanceVariables.getInstanceVariableNameList()
protected final void ensureInstanceVariablesSettable()
public int getNativeTypeIndex()
CoreObjectType
getNativeTypeIndex
in interface CoreObjectType
public boolean isBuiltin(java.lang.String methodName)
methodName
- to look for.
public static IRubyObject singleton_method_added19(ThreadContext context, IRubyObject recv, IRubyObject symbolId, Block block)
public static IRubyObject singleton_method_removed19(ThreadContext context, IRubyObject recv, IRubyObject symbolId, Block block)
public static IRubyObject singleton_method_undefined19(ThreadContext context, IRubyObject recv, IRubyObject symbolId, Block block)
public static IRubyObject method_missing19(ThreadContext context, IRubyObject recv, IRubyObject[] args, Block block)
public IRubyObject send19(ThreadContext context, Block block)
public IRubyObject send19(ThreadContext context, IRubyObject arg0, Block block)
public IRubyObject send19(ThreadContext context, IRubyObject arg0, IRubyObject arg1, Block block)
public IRubyObject send19(ThreadContext context, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block)
public IRubyObject send19(ThreadContext context, IRubyObject[] args, Block block)
public IRubyObject instance_eval19(ThreadContext context, Block block)
public IRubyObject instance_eval19(ThreadContext context, IRubyObject arg0, Block block)
public IRubyObject instance_eval19(ThreadContext context, IRubyObject arg0, IRubyObject arg1, Block block)
public IRubyObject instance_eval19(ThreadContext context, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block)
public IRubyObject instance_exec19(ThreadContext context, IRubyObject[] args, Block block)
protected IRubyObject yieldUnder(ThreadContext context, RubyModule under, IRubyObject[] args, Block block)
protected IRubyObject yieldUnder(ThreadContext context, RubyModule under, Block block)
public IRubyObject specificEval(ThreadContext context, RubyModule mod, Block block)
public IRubyObject specificEval(ThreadContext context, RubyModule mod, IRubyObject arg, Block block)
public IRubyObject specificEval(ThreadContext context, RubyModule mod, IRubyObject arg0, IRubyObject arg1, Block block)
public IRubyObject specificEval(ThreadContext context, RubyModule mod, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block)
protected RubyModule getInstanceEvalClass()
public IRubyObject evalUnder(ThreadContext context, RubyModule under, RubyString src, java.lang.String file, int line)
public IRubyObject equal_p(ThreadContext context, IRubyObject obj)
public IRubyObject eql_p(IRubyObject obj)
public IRubyObject op_cmp(ThreadContext context, IRubyObject other)
public IRubyObject initialize_copy(IRubyObject original)
protected void checkFrozen()
testFrozen(java.lang.String)
.
public RubyBoolean respond_to_p(IRubyObject mname)
public IRubyObject respond_to_p19(IRubyObject mname)
public RubyBoolean respond_to_p(IRubyObject mname, IRubyObject includePrivate)
public IRubyObject respond_to_p19(IRubyObject mname, IRubyObject includePrivate)
public IRubyObject id_deprecated()
public RubyFixnum hash()
public RubyClass type()
public RubyClass type_deprecated()
public IRubyObject display(ThreadContext context, IRubyObject[] args)
$>
).
Equivalent to:
def display(port=$>)
port.write self
end
For example:
1.display
"cat".display
[ 4, 5, 6 ].display
puts
produces:
1cat456
public RubyBoolean tainted_p(ThreadContext context)
true
if the object is tainted.
public IRubyObject taint(ThreadContext context)
$SAFE
level is
set appropriately, many method calls which might alter the running
programs environment will refuse to accept tainted strings.
public IRubyObject untaint(ThreadContext context)
public IRubyObject freeze(ThreadContext context)
TypeError
will be raised if modification is attempted.
There is no way to unfreeze a frozen object. See also
Object#frozen?
.
a = [ "a", "b", "c" ]
a.freeze
a << "z"
produces:
prog.rb:3:in `<<': can't modify frozen array (TypeError)
from prog.rb:3
public RubyBoolean frozen_p(ThreadContext context)
public RubyBoolean untrusted_p(ThreadContext context)
true
if the object is untrusted.
public IRubyObject untrust(ThreadContext context)
public IRubyObject trust(ThreadContext context)
public RubyBoolean instance_of_p(ThreadContext context, IRubyObject type)
true
if obj is an instance of the given
class. See also Object#kind_of?
.
public RubyBoolean kind_of_p(ThreadContext context, IRubyObject type)
true
if class is the class of
obj, or if class is one of the superclasses of
obj or modules included in obj.
module M; end
class A
include M
end
class B < A; end
class C < B; end
b = B.new
b.instance_of? A #=> false
b.instance_of? B #=> true
b.instance_of? C #=> false
b.instance_of? M #=> false
b.kind_of? A #=> true
b.kind_of? B #=> true
b.kind_of? C #=> false
b.kind_of? M #=> true
public IRubyObject methods(ThreadContext context, IRubyObject[] args)
public IRubyObject methods19(ThreadContext context, IRubyObject[] args)
public IRubyObject methods(ThreadContext context, IRubyObject[] args, boolean useSymbols)
public IRubyObject public_methods(ThreadContext context, IRubyObject[] args)
false
, only those methods
in the receiver will be listed.
public IRubyObject public_methods19(ThreadContext context, IRubyObject[] args)
public IRubyObject protected_methods(ThreadContext context, IRubyObject[] args)
false
, only those methods
in the receiver will be listed.
Internally this implementation uses the
RubyModule.protected_instance_methods(org.jruby.runtime.builtin.IRubyObject[])
method.
public IRubyObject protected_methods19(ThreadContext context, IRubyObject[] args)
public IRubyObject private_methods(ThreadContext context, IRubyObject[] args)
false
, only those methods
in the receiver will be listed.
Internally this implementation uses the
RubyModule.private_instance_methods(org.jruby.runtime.builtin.IRubyObject[])
method.
public IRubyObject private_methods19(ThreadContext context, IRubyObject[] args)
public RubyArray singleton_methods(ThreadContext context, IRubyObject[] args)
public RubyArray singleton_methods19(ThreadContext context, IRubyObject[] args)
public IRubyObject method(IRubyObject symbol)
Method
object (or raising NameError
). The
Method
object acts as a closure in obj's object
instance, so instance variables and the value of self
remain available.
class Demo
def initialize(n)
public IRubyObject method19(IRubyObject symbol)
public IRubyObject to_s()
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.''
public RubyArray to_a()
Object
and others that don't explicitly override the
method, the return value is an array containing self
.
However, this latter behavior will soon be obsolete.
self.to_a #=> -:1: warning: default `to_a' will be obsolete
"hello".to_a #=> ["hello"]
Time.new.to_a #=> [39, 54, 8, 9, 4, 2003, 3, 99, true, "CDT"]
The default to_a method is deprecated.
public IRubyObject instance_eval(ThreadContext context, Block block)
instance_eval
that takes a +String+, the optional second and third
parameters supply a filename and starting line number that are used
when reporting compilation errors.
class Klass
def initialize
public IRubyObject instance_eval(ThreadContext context, IRubyObject arg0, Block block)
public IRubyObject instance_eval(ThreadContext context, IRubyObject arg0, IRubyObject arg1, Block block)
public IRubyObject instance_eval(ThreadContext context, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block)
public IRubyObject instance_exec(ThreadContext context, IRubyObject[] args, Block block)
public IRubyObject extend(IRubyObject[] args)
public IRubyObject send(ThreadContext context, Block block)
class Klass def hello(*args) "Hello " + args.join(' ') end end k = Klass.new k.send :hello, "gentle", "readers"
public IRubyObject send(ThreadContext context, IRubyObject arg0, Block block)
public IRubyObject send(ThreadContext context, IRubyObject arg0, IRubyObject arg1, Block block)
public IRubyObject send(ThreadContext context, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block)
public IRubyObject send(ThreadContext context, IRubyObject[] args, Block block)
public IRubyObject nil_p(ThreadContext context)
true
to nil?
.
public IRubyObject op_match(ThreadContext context, IRubyObject arg)
Regexp
and String
) to provide meaningful
pattern-match semantics.
public IRubyObject op_match19(ThreadContext context, IRubyObject arg)
public IRubyObject op_not_match(ThreadContext context, IRubyObject arg)
public IRubyObject instance_variable_defined_p(ThreadContext context, IRubyObject name)
true
if the given instance variable is
defined in obj.
class Fred
def initialize(p1, p2)
public IRubyObject instance_variable_get(ThreadContext context, IRubyObject name)
@
part of the
variable name should be included for regular instance
variables. Throws a NameError
exception if the
supplied symbol is not valid as an instance variable name.
class Fred
def initialize(p1, p2)
public IRubyObject instance_variable_set(IRubyObject name, IRubyObject value)
public IRubyObject remove_instance_variable(ThreadContext context, IRubyObject name, Block block)
public RubyArray instance_variables(ThreadContext context)
public RubyArray instance_variables19(ThreadContext context)
protected java.lang.String validateInstanceVariable(java.lang.String name)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |