org.jruby
Class RubyProc

java.lang.Object
  extended byorg.jruby.RubyObject
      extended byorg.jruby.RubyProc
All Implemented Interfaces:
java.lang.Cloneable, IRubyObject

public class RubyProc
extends RubyObject

Author:
jpetersen

Nested Class Summary
 
Nested classes inherited from class org.jruby.RubyObject
RubyObject.Finalizer
 
Field Summary
 
Fields inherited from class org.jruby.RubyObject
instanceVariables, isTrue, metaClass, NEVER, OBJECT_ALLOCATOR
 
Fields inherited from interface org.jruby.runtime.builtin.IRubyObject
NULL_ARRAY
 
Constructor Summary
RubyProc(Ruby runtime, RubyClass rubyClass, boolean isLambda)
           
 
Method Summary
 RubyFixnum arity()
           
 IRubyObject binding()
           
 IRubyObject call(IRubyObject[] args)
           
 IRubyObject call(IRubyObject[] args, Block unusedBlock)
           
 IRubyObject call(IRubyObject[] args, IRubyObject self, Block unusedBlock)
           
static RubyClass createProcClass(Ruby runtime)
           
protected  IRubyObject doClone()
           
 Block getBlock()
           
 IRubyObject initialize(IRubyObject[] args, Block procBlock)
           
static IRubyObject newInstance(IRubyObject recv, IRubyObject[] args, Block block)
          Create a new instance of a Proc object.
static RubyProc newProc(Ruby runtime, Block block, boolean isLambda)
           
static RubyProc newProc(Ruby runtime, boolean isLambda)
           
 RubyProc to_proc()
           
 
Methods inherited from class org.jruby.RubyObject
addFinalizer, anyToString, asString, asSymbol, attachToObjectSpace, callInit, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethodMissingIfNecessary, callSuper, checkArrayType, checkFrozen, checkStringType, compilerCallMethod, compilerCallMethodWithIndex, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToString, convertToType, convertToType, convertToType, convertToTypeWithCheck, createObjectClass, dataGetStruct, dataWrapStruct, display, dup, eql, eqlInternal, equal, equalInternal, equals, evalSimple, evalUnder, evalWithBinding, extend, freeze, frozen, getInstanceVariable, getInstanceVariables, getInstanceVariablesSnapshot, getJavaClass, getMetaClass, getNativeTypeIndex, getRuntime, getSingletonClass, getSingletonClassClone, getType, hash, hashCode, id_deprecated, id, infectBy, inherited, initCopy, initialize_copy, inspect, instance_eval, instance_exec, instance_of, instance_variable_get, instance_variable_set, instance_variables, instanceVariableNames, isFalse, isFrozen, isImmediate, isKindOf, isNil, isSingleton, isTaint, isTrue, kind_of, makeMetaClass, match, method, methods, nil_p, obj_equal, private_methods, protected_methods, public_methods, puts, rbClone, remove_instance_variable, removeFinalizers, removeInstanceVariable, respond_to, respondsTo, safeGetInstanceVariables, safeHasInstanceVariables, send, setFrozen, setInstanceVariable, setInstanceVariable, setInstanceVariables, setMetaClass, setTaint, singleton_methods, specificEval, taint, tainted, testFrozen, to_s, toString, trueFalseNil, trueFalseNil, type_deprecated, type, untaint
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RubyProc

public RubyProc(Ruby runtime,
                RubyClass rubyClass,
                boolean isLambda)
Method Detail

createProcClass

public static RubyClass createProcClass(Ruby runtime)

getBlock

public Block getBlock()

newProc

public static RubyProc newProc(Ruby runtime,
                               boolean isLambda)

newProc

public static RubyProc newProc(Ruby runtime,
                               Block block,
                               boolean isLambda)

initialize

public IRubyObject initialize(IRubyObject[] args,
                              Block procBlock)
Overrides:
initialize in class RubyObject

doClone

protected IRubyObject doClone()
Overrides:
doClone in class RubyObject

newInstance

public static IRubyObject newInstance(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.


binding

public IRubyObject binding()

call

public IRubyObject call(IRubyObject[] args)

call

public IRubyObject call(IRubyObject[] args,
                        Block unusedBlock)

call

public IRubyObject call(IRubyObject[] args,
                        IRubyObject self,
                        Block unusedBlock)

arity

public RubyFixnum arity()

to_proc

public RubyProc to_proc()


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