org.jruby
Class RubyProc

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

public class RubyProc
extends RubyObject
implements DataType

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
 
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 RubyProc(Ruby runtime, RubyClass rubyClass, Block.Type type)
           
protected RubyProc(Ruby runtime, RubyClass rubyClass, Block.Type type, ISourcePosition sourcePosition)
           
 
Method Summary
 RubyFixnum arity()
           
 IRubyObject binding()
           
 IRubyObject call(ThreadContext context, IRubyObject[] args)
           
 IRubyObject call(ThreadContext context, IRubyObject[] args, Block block)
           
 IRubyObject call(ThreadContext context, IRubyObject[] args, IRubyObject self, Block passedBlock)
           
 IRubyObject call19(ThreadContext context, IRubyObject[] args, Block block)
           
static RubyClass createProcClass(Ruby runtime)
           
 IRubyObject dup()
          RubyMethod dup.
 Block getBlock()
           
 IRubyObject lambda_p(ThreadContext context)
           
static IRubyObject newInstance(ThreadContext context, IRubyObject recv, IRubyObject[] args, Block block)
          Create a new instance of a Proc object.
static RubyProc newProc(Ruby runtime, Block.Type type)
          Deprecated. 
static RubyProc newProc(Ruby runtime, Block block, Block.Type type)
           
static RubyProc newProc(Ruby runtime, Block block, Block.Type type, ISourcePosition sourcePosition)
           
 IRubyObject op_equal(IRubyObject other)
           
 IRubyObject parameters(ThreadContext context)
           
 IRubyObject rbClone()
          RubyMethod rbClone.
 IRubyObject source_location(ThreadContext context)
           
 RubyProc to_proc()
           
 IRubyObject to_s()
          rb_any_to_s call-seq: obj.to_s => string Returns a string representing obj.
 IRubyObject to_s19()
           
 
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, 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, 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, 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_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, 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, 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
 

Constructor Detail

RubyProc

protected RubyProc(Ruby runtime,
                   RubyClass rubyClass,
                   Block.Type type)

RubyProc

protected RubyProc(Ruby runtime,
                   RubyClass rubyClass,
                   Block.Type type,
                   ISourcePosition sourcePosition)
Method Detail

createProcClass

public static RubyClass createProcClass(Ruby runtime)

getBlock

public Block getBlock()

newProc

@Deprecated
public static RubyProc newProc(Ruby runtime,
                                          Block.Type type)
Deprecated. 


newProc

public static RubyProc newProc(Ruby runtime,
                               Block block,
                               Block.Type type)

newProc

public static RubyProc newProc(Ruby runtime,
                               Block block,
                               Block.Type type,
                               ISourcePosition sourcePosition)

newInstance

public static IRubyObject newInstance(ThreadContext context,
                                      IRubyObject recv,
                                      IRubyObject[] args,
                                      Block block)
Create a new instance of a Proc object. We override this method (from RubyClass) since we need to deal with special case of Proc.new with no arguments or block arg. In this case, we need to check previous frame for a block to consume.


rbClone

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

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

dup

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

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

op_equal

public IRubyObject op_equal(IRubyObject other)

to_s

public IRubyObject to_s()
Description copied from class: RubyBasicObject
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 RubyBasicObject

to_s19

public IRubyObject to_s19()

binding

public IRubyObject binding()

call

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

call

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

call19

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

call

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

arity

public RubyFixnum arity()

to_proc

public RubyProc to_proc()

source_location

public IRubyObject source_location(ThreadContext context)

parameters

public IRubyObject parameters(ThreadContext context)

lambda_p

public IRubyObject lambda_p(ThreadContext context)


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