org.jruby.internal.runtime.methods
Class JavaMethod.JavaMethodTwoOrThree
java.lang.Object
org.jruby.internal.runtime.methods.DynamicMethod
org.jruby.internal.runtime.methods.JavaMethod
org.jruby.internal.runtime.methods.JavaMethod.JavaMethodTwoOrThree
- All Implemented Interfaces:
- java.lang.Cloneable, JumpTarget
- Enclosing class:
- JavaMethod
public abstract static class JavaMethod.JavaMethodTwoOrThree
- 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)
A default implementation of two-arity, non-block 'call' method,
which simply calls the two-arity, block-receiving version with
the arguments and Block.NULL_BLOCK. |
abstract IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
IRubyObject arg3)
A default implementation of three-arity, non-block 'call' method,
which simply calls the three-arity, block-receiving version with
the arguments and Block.NULL_BLOCK. |
Methods inherited from class org.jruby.internal.runtime.methods.JavaMethod |
callTrace, dup, getArgumentTypes, getArity, 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, 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.JavaMethodTwoOrThree
public JavaMethod.JavaMethodTwoOrThree(RubyModule implementationClass,
Visibility visibility)
JavaMethod.JavaMethodTwoOrThree
public JavaMethod.JavaMethodTwoOrThree(RubyModule implementationClass,
Visibility visibility,
CallConfiguration callConfig,
StaticScope staticScope,
Arity arity)
JavaMethod.JavaMethodTwoOrThree
public JavaMethod.JavaMethodTwoOrThree(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)
- Description copied from class:
DynamicMethod
- A default implementation of two-arity, non-block 'call' method,
which simply calls the two-arity, block-receiving version with
the arguments and Block.NULL_BLOCK.
- 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 invocation
- Returns:
- The result of the call
call
public abstract IRubyObject call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
IRubyObject arg3)
- Description copied from class:
DynamicMethod
- A default implementation of three-arity, non-block 'call' method,
which simply calls the three-arity, block-receiving version with
the arguments and Block.NULL_BLOCK.
- 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 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
Copyright © 2002-2007 JRuby Team. All Rights Reserved.