org.jruby
Class RubyMethod

java.lang.Object
  extended by org.jruby.RubyBasicObject
      extended by org.jruby.RubyObject
          extended by org.jruby.RubyMethod
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<IRubyObject>, InstanceVariables, InternalVariables, IRubyObject, CoreObjectType, DataType
Direct Known Subclasses:
RubyUnboundMethod

public class RubyMethod
extends RubyObject
implements DataType

The RubyMethod class represents a RubyMethod object. You can get such a method by calling the "method" method of an object. Note: This was renamed from Method.java

Since:
0.2.3
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
protected  RubyModule implementationModule
           
protected  DynamicMethod method
           
protected  java.lang.String methodName
           
protected  RubyModule originModule
           
protected  java.lang.String originName
           
protected  IRubyObject receiver
           
 
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
protected RubyMethod(Ruby runtime, RubyClass rubyClass)
           
 
Method Summary
 RubyFixnum arity()
          Returns the number of arguments a method accepted.
static IRubyObject bmcall(IRubyObject blockArg, IRubyObject arg1, IRubyObject self, Block unusedBlock)
          Delegate a block call to a bound method call.
 IRubyObject call(ThreadContext context, Block block)
          Call the method.
 IRubyObject call(ThreadContext context, IRubyObject[] args, Block block)
           
 IRubyObject call(ThreadContext context, IRubyObject arg, Block block)
           
 IRubyObject call(ThreadContext context, IRubyObject arg0, IRubyObject arg1, Block block)
           
 IRubyObject call(ThreadContext context, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block)
           
static RubyClass createMethodClass(Ruby runtime)
          Create the RubyMethod class and add it to the Ruby runtime.
 java.lang.String getFilename()
           
 int getLine()
           
 DynamicMethod getMethod()
           
 java.lang.String getMethodName()
           
 IRubyObject inspect()
          rb_obj_inspect call-seq: obj.inspect => string Returns a string containing a human-readable representation of obj.
 IRubyObject name(ThreadContext context)
           
 IRubyObject name19(ThreadContext context)
           
static RubyMethod newMethod(RubyModule implementationModule, java.lang.String methodName, RubyModule originModule, java.lang.String originName, DynamicMethod method, IRubyObject receiver)
           
 IRubyObject op_eql19(ThreadContext context, IRubyObject other)
           
 RubyBoolean op_equal(ThreadContext context, IRubyObject other)
           
 IRubyObject owner(ThreadContext context)
           
 IRubyObject parameters(ThreadContext context)
           
 RubyMethod rbClone()
          RubyMethod rbClone.
 IRubyObject receiver(ThreadContext context)
           
 IRubyObject source_location(ThreadContext context)
           
 IRubyObject to_proc(ThreadContext context, Block unusedBlock)
          Create a Proc object.
 RubyUnboundMethod unbind()
           
 
Methods inherited from class org.jruby.RubyObject
attachToObjectSpace, callInit, callInit, callInit, callInit, callInit, convertToType, createObjectClass, eqlInternal, equalInternal, equals, getNativeTypeIndex, 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, getJavaClass, getMetaClass, getObjectId, getRuntime, getSingletonClass, getSingletonClassClone, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hash, hashyInspect, hasInstanceVariable, hasInternalVariable, hasVariables, id_deprecated, id, infectBy, initialize_copy, initialize19, initialize19, initialize19, initialize19, initialize19, initObjectId, 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, isImmediate, isModule, isNil, isTaint, isTrue, isUntrusted, kind_of_p, makeMetaClass, method_missing19, method, method19, methods, methods, methods19, nil_p, op_cmp, op_equal_19, op_match, op_match19, op_not_equal, op_not_match, op_not, private_methods, private_methods19, protected_methods, protected_methods19, public_methods, public_methods19, 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, taint, tainted_p, testFrozen, testFrozen, to_a, to_s, toJava, 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

implementationModule

protected RubyModule implementationModule

methodName

protected java.lang.String methodName

originModule

protected RubyModule originModule

originName

protected java.lang.String originName

method

protected DynamicMethod method

receiver

protected IRubyObject receiver
Constructor Detail

RubyMethod

protected RubyMethod(Ruby runtime,
                     RubyClass rubyClass)
Method Detail

createMethodClass

public static RubyClass createMethodClass(Ruby runtime)
Create the RubyMethod class and add it to the Ruby runtime.


newMethod

public static RubyMethod newMethod(RubyModule implementationModule,
                                   java.lang.String methodName,
                                   RubyModule originModule,
                                   java.lang.String originName,
                                   DynamicMethod method,
                                   IRubyObject receiver)

getMethod

public DynamicMethod getMethod()

call

public IRubyObject call(ThreadContext context,
                        Block block)
Call the method.


call

public IRubyObject call(ThreadContext context,
                        IRubyObject arg,
                        Block block)

call

public IRubyObject call(ThreadContext context,
                        IRubyObject arg0,
                        IRubyObject arg1,
                        Block block)

call

public IRubyObject call(ThreadContext context,
                        IRubyObject arg0,
                        IRubyObject arg1,
                        IRubyObject arg2,
                        Block block)

call

public IRubyObject call(ThreadContext context,
                        IRubyObject[] args,
                        Block block)

arity

public RubyFixnum arity()
Returns the number of arguments a method accepted.

Returns:
the number of arguments of a method.

op_equal

public RubyBoolean op_equal(ThreadContext context,
                            IRubyObject other)
Specified by:
op_equal in interface IRubyObject
Overrides:
op_equal in class RubyBasicObject

op_eql19

public IRubyObject op_eql19(ThreadContext context,
                            IRubyObject other)

rbClone

public RubyMethod rbClone()
Description copied from interface: IRubyObject
RubyMethod rbClone.

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

to_proc

public IRubyObject to_proc(ThreadContext context,
                           Block unusedBlock)
Create a Proc object.


bmcall

public static IRubyObject bmcall(IRubyObject blockArg,
                                 IRubyObject arg1,
                                 IRubyObject self,
                                 Block unusedBlock)
Delegate a block call to a bound method call. Used by the RubyMethod#to_proc method.


unbind

public RubyUnboundMethod unbind()

inspect

public IRubyObject inspect()
Description copied from class: RubyBasicObject
rb_obj_inspect call-seq: obj.inspect => string Returns a string containing a human-readable representation of obj. If not overridden, uses the 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"

Specified by:
inspect in interface IRubyObject
Overrides:
inspect in class RubyBasicObject
Returns:
String

name

public IRubyObject name(ThreadContext context)

name19

public IRubyObject name19(ThreadContext context)

getMethodName

public java.lang.String getMethodName()

receiver

public IRubyObject receiver(ThreadContext context)

owner

public IRubyObject owner(ThreadContext context)

source_location

public IRubyObject source_location(ThreadContext context)

getFilename

public java.lang.String getFilename()

getLine

public int getLine()

parameters

public IRubyObject parameters(ThreadContext context)


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