|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jruby.internal.runtime.methods.DynamicMethod
org.jruby.internal.runtime.methods.DelegatingDynamicMethod
public abstract class DelegatingDynamicMethod
Nested Class Summary |
---|
Nested classes/interfaces inherited from class org.jruby.internal.runtime.methods.DynamicMethod |
---|
DynamicMethod.NativeCall |
Field Summary | |
---|---|
protected DynamicMethod |
delegate
|
Fields inherited from class org.jruby.internal.runtime.methods.DynamicMethod |
---|
builtin, callConfig, implementationClass, name, nativeCall, notImplemented, protectedClass, serialNumber, visibility |
Constructor Summary | |
---|---|
DelegatingDynamicMethod(DynamicMethod delegate)
|
Method Summary | |
---|---|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name)
Arity 0, no block |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
Block block)
Arity 0, with block; calls through IRubyObject[] path |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg)
Arity 1, no block |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject[] args)
A default implementation of n-arity, non-block 'call' method, which simply calls the n-arity, block-receiving version with the arg list and Block.NULL_BLOCK. |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject[] args,
Block block)
The minimum 'call' method required for a dynamic method handle. |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1,
Block block)
Arity 1, with block; calls through IRubyObject[] path |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2)
Arity 2, no block |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
Block block)
Arity 2, with block; calls through IRubyObject[] path |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
IRubyObject arg3)
Arity 3, no block |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
IRubyObject arg3,
Block block)
Arity 3, with block; calls through IRubyObject[] path |
Arity |
getArity()
Retrieve the arity of this method, used for reporting arity to Ruby code. |
CallConfiguration |
getCallConfig()
Get the CallConfiguration used for pre/post logic for this method handle. |
DynamicMethod |
getDelegate()
|
RubyModule |
getImplementationClass()
Retrieve the class or module on which this method is implemented, used for 'super' logic among others. |
DynamicMethod.NativeCall |
getNativeCall()
|
protected RubyModule |
getProtectedClass()
Retrieve the pre-calculated "protected class" used for access checks. |
DynamicMethod |
getRealMethod()
Get the "real" method contained within this method. |
long |
getSerialNumber()
Get the global serial number for this method object |
Visibility |
getVisibility()
Get the visibility of this method. |
boolean |
isBuiltin()
|
boolean |
isCallableFrom(IRubyObject caller,
CallType callType)
Determine whether this method is callable from the given object using the given call type. |
boolean |
isNative()
Returns true if this method is backed by native (i.e. |
void |
setCallConfig(CallConfiguration callConfig)
Set the CallConfiguration used for pre/post logic for this method handle. |
void |
setImplementationClass(RubyModule implClass)
Set the class on which this method is implemented, used for 'super' logic, among others. |
void |
setIsBuiltin(boolean isBuiltin)
|
void |
setNativeCall(java.lang.Class nativeTarget,
java.lang.String nativeName,
java.lang.Class nativeReturn,
java.lang.Class[] nativeSignature,
boolean statik)
|
void |
setVisibility(Visibility visibility)
Set the visibility of this method. |
Methods inherited from class org.jruby.internal.runtime.methods.DynamicMethod |
---|
calculateProtectedClass, call, call, call, call, call, call, call, call, call, call, call, call, call, call, dup, getName, handleBreak, handleRedo, handleReturn, init, isNotImplemented, isUndefined, setName, setNotImplemented |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final DynamicMethod delegate
Constructor Detail |
---|
public DelegatingDynamicMethod(DynamicMethod delegate)
Method Detail |
---|
public DynamicMethod getDelegate()
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject[] args)
DynamicMethod
call
in class DynamicMethod
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 method
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, Block block)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1, Block block)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2, Block block)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, Block block)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject[] args, Block block)
DynamicMethod
call
in class DynamicMethod
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
public void setVisibility(Visibility visibility)
DynamicMethod
setVisibility
in class DynamicMethod
visibility
- The visibility of this methodpublic void setNativeCall(java.lang.Class nativeTarget, java.lang.String nativeName, java.lang.Class nativeReturn, java.lang.Class[] nativeSignature, boolean statik)
setNativeCall
in class DynamicMethod
public void setIsBuiltin(boolean isBuiltin)
setIsBuiltin
in class DynamicMethod
public void setImplementationClass(RubyModule implClass)
DynamicMethod
setImplementationClass
in class DynamicMethod
implClass
- The class on which this method is implementedpublic void setCallConfig(CallConfiguration callConfig)
DynamicMethod
setCallConfig
in class DynamicMethod
callConfig
- The CallConfiguration for this method handlepublic boolean isNative()
DynamicMethod
isNative
in class DynamicMethod
public boolean isCallableFrom(IRubyObject caller, CallType callType)
DynamicMethod
isCallableFrom
in class DynamicMethod
caller
- The calling objectcallType
- The type of call
public boolean isBuiltin()
isBuiltin
in class DynamicMethod
public Visibility getVisibility()
DynamicMethod
getVisibility
in class DynamicMethod
public long getSerialNumber()
DynamicMethod
getSerialNumber
in class DynamicMethod
public DynamicMethod getRealMethod()
DynamicMethod
getRealMethod
in class DynamicMethod
protected RubyModule getProtectedClass()
DynamicMethod
getProtectedClass
in class DynamicMethod
public DynamicMethod.NativeCall getNativeCall()
getNativeCall
in class DynamicMethod
public RubyModule getImplementationClass()
DynamicMethod
getImplementationClass
in class DynamicMethod
public CallConfiguration getCallConfig()
DynamicMethod
getCallConfig
in class DynamicMethod
public Arity getArity()
DynamicMethod
getArity
in class DynamicMethod
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |