org.jruby.internal.runtime.methods
Class MethodMethod
java.lang.Object
org.jruby.internal.runtime.methods.DynamicMethod
org.jruby.internal.runtime.methods.MethodMethod
- All Implemented Interfaces:
- JumpTarget
public class MethodMethod
- extends DynamicMethod
- implements JumpTarget
- Author:
- jpetersen
Methods inherited from class org.jruby.internal.runtime.methods.DynamicMethod |
calculateProtectedClass, call, call, call, call, call, call, call, call, call, getArity, getCallConfig, getImplementationClass, getProtectedClass, getRealMethod, getVisibility, handleRedo, handleReturn, init, isCallableFrom, isNative, isUndefined, setCallConfig, setImplementationClass, setVisibility |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MethodMethod
public MethodMethod(RubyModule implementationClass,
RubyUnboundMethod method,
Visibility visibility)
- Constructor for MethodMethod.
- Parameters:
visibility
-
call
public IRubyObject call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
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 DynamicMethod
- 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
- See Also:
org.jruby.runtime.ICallable#call(Ruby, IRubyObject, String, IRubyObject[], boolean)
dup
public DynamicMethod dup()
- Description copied from class:
DynamicMethod
- Duplicate this method, returning DynamicMethod referencing the same code
and with the same attributes.
It is not required that this method produce a new object if the
semantics of the DynamicMethod subtype do not require such.
- Specified by:
dup
in class DynamicMethod
- Returns:
- An identical DynamicMethod object to the target.
Copyright © 2002-2007 JRuby Team. All Rights Reserved.