org.jruby.internal.runtime.methods
Class JavaMethod.JavaMethodThreeBlock
java.lang.Object
org.jruby.internal.runtime.methods.DynamicMethod
org.jruby.internal.runtime.methods.JavaMethod
org.jruby.internal.runtime.methods.JavaMethod.JavaMethodThreeBlock
- All Implemented Interfaces:
- java.lang.Cloneable, JumpTarget
- Enclosing class:
- JavaMethod
public abstract static class JavaMethod.JavaMethodThreeBlock
- extends JavaMethod
Nested classes/interfaces inherited from class org.jruby.internal.runtime.methods.JavaMethod |
JavaMethod.JavaMethodNoBlock, JavaMethod.JavaMethodOne, JavaMethod.JavaMethodOneBlock, JavaMethod.JavaMethodOneOrTwo, JavaMethod.JavaMethodOneOrTwoBlock, JavaMethod.JavaMethodOneOrTwoOrThree, JavaMethod.JavaMethodOneOrTwoOrThreeBlock, JavaMethod.JavaMethodThree, JavaMethod.JavaMethodThreeBlock, JavaMethod.JavaMethodTwo, JavaMethod.JavaMethodTwoBlock, JavaMethod.JavaMethodTwoOrThree, JavaMethod.JavaMethodZero, JavaMethod.JavaMethodZeroBlock, JavaMethod.JavaMethodZeroOrOne, JavaMethod.JavaMethodZeroOrOneBlock, JavaMethod.JavaMethodZeroOrOneOrTwo, JavaMethod.JavaMethodZeroOrOneOrTwoBlock, JavaMethod.JavaMethodZeroOrOneOrTwoOrThree, JavaMethod.JavaMethodZeroOrOneOrTwoOrThreeBlock |
Method Summary |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
java.lang.String name,
IRubyObject[] args,
Block block)
The minimum 'call' method required for a dynamic method handle. |
abstract IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
IRubyObject arg3,
Block block)
A default implementation of three-arity, block-receiving 'call' method,
which simply calls the n-arity, block-receiving version with
a boxed arg list. |
Arity |
getArity()
Retrieve the arity of this method, used for reporting arity to Ruby
code. |
Methods inherited from class org.jruby.internal.runtime.methods.JavaMethod |
callTrace, dup, getArgumentTypes, getJavaName, init, isNative, isSingleton, postBacktraceAndScope, postBacktraceOnly, postFrameAndScope, postFrameOnly, postScopeOnly, preBacktraceAndScope, preBacktraceOnly, preFrameAndScope, preFrameOnly, preScopeOnly, returnTrace, setArgumentTypes, setArity, setJavaName, setSingleton |
Methods inherited from class org.jruby.internal.runtime.methods.DynamicMethod |
calculateProtectedClass, call, call, call, call, call, call, call, call, getCallConfig, getImplementationClass, getProtectedClass, getRealMethod, getVisibility, handleRedo, handleReturn, init, isCallableFrom, isUndefined, setCallConfig, setImplementationClass, setVisibility |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JavaMethod.JavaMethodThreeBlock
public JavaMethod.JavaMethodThreeBlock(RubyModule implementationClass,
Visibility visibility)
JavaMethod.JavaMethodThreeBlock
public JavaMethod.JavaMethodThreeBlock(RubyModule implementationClass,
Visibility visibility,
CallConfiguration callConfig,
StaticScope staticScope,
Arity arity)
JavaMethod.JavaMethodThreeBlock
public JavaMethod.JavaMethodThreeBlock(RubyModule implementationClass,
Visibility visibility,
int methodIndex)
call
public abstract IRubyObject call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
IRubyObject arg3,
Block block)
- Description copied from class:
DynamicMethod
- A default implementation of three-arity, block-receiving 'call' method,
which simply calls the n-arity, block-receiving version with
a boxed arg list.
- Overrides:
call
in class DynamicMethod
- Parameters:
context
- The thread context for the currently executing threadself
- The 'self' or 'receiver' object to use for this callclazz
- The Ruby class against which this method is bindingname
- The incoming name used to invoke this methodarg1
- The first argument to this invocationarg2
- The second argument to this invocationblock
- The block passed to this invocation
- Returns:
- The result of the call
call
public IRubyObject call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
java.lang.String name,
IRubyObject[] args,
Block block)
- Description copied from class:
DynamicMethod
- The minimum 'call' method required for a dynamic method handle.
Subclasses must impleemnt this method, but may implement the other
signatures to provide faster, non-boxing call paths. Typically
subclasses will implement this method to check variable arity calls,
then performing a specific-arity invocation to the appropriate method
or performing variable-arity logic in-line.
- Specified by:
call
in class JavaMethod
- Parameters:
context
- The thread context for the currently executing threadself
- The 'self' or 'receiver' object to use for this callname
- The incoming name used to invoke this methodargs
- The argument list to this invocationblock
- The block passed to this invocation
- Returns:
- The result of the call
getArity
public Arity getArity()
- Description copied from class:
DynamicMethod
- Retrieve the arity of this method, used for reporting arity to Ruby
code. This arity may or may not reflect the actual specific or variable
arities of the referenced method.
- Overrides:
getArity
in class JavaMethod
- Returns:
- The arity of the method, as reported to Ruby consumers.
Copyright © 2002-2007 JRuby Team. All Rights Reserved.