public static class CompiledMethod.LazyCompiledMethod extends DynamicMethod implements Cloneable, PositionAware, MethodArgs2
DynamicMethod.NativeCallbuiltin, callConfig, handle, implementationClass, name, nativeCall, nativeCalls, notImplemented, protectedClass, serialNumber, visibility| Constructor and Description |
|---|
LazyCompiledMethod(RubyModule implementationClass,
String rubyName,
String javaName,
Arity arity,
Visibility visibility,
StaticScope scope,
Object scriptObject,
CallConfiguration callConfig,
ISourcePosition position,
String parameterDesc,
MethodFactory factory) |
| Modifier and Type | Method and Description |
|---|---|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
String name)
Arity 0, no block
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
String name,
Block block)
Arity 0, with block; calls through IRubyObject[] path
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
String name,
IRubyObject arg0)
Arity 1, no block
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
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 clazz,
String name,
IRubyObject[] args,
Block block)
The minimum 'call' method required for a dynamic method handle.
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
String name,
IRubyObject arg0,
Block block)
Arity 1, with block; calls through IRubyObject[] path
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
String name,
IRubyObject arg0,
IRubyObject arg1)
Arity 2, no block
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
String name,
IRubyObject arg0,
IRubyObject arg1,
Block block)
Arity 2, with block; calls through IRubyObject[] path
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
String name,
IRubyObject arg0,
IRubyObject arg1,
IRubyObject arg2)
Arity 3, no block
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
String name,
IRubyObject arg0,
IRubyObject arg1,
IRubyObject arg2,
Block block)
Arity 3, with block; calls through IRubyObject[] path
|
DynamicMethod |
dup()
Duplicate this method, returning DynamicMethod referencing the same code
and with the same attributes.
|
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.
|
String |
getFile()
Get the filename for the method.
|
RubyModule |
getImplementationClass()
Retrieve the class or module on which this method is implemented, used
for 'super' logic among others.
|
int |
getLine()
Get the line number for the method.
|
String[] |
getParameterList() |
protected RubyModule |
getProtectedClass()
Retrieve the pre-calculated "protected class" used for access checks.
|
DynamicMethod |
getRealMethod()
Get the "real" method contained within this method.
|
Visibility |
getVisibility()
Get the visibility of this method.
|
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 |
setVisibility(Visibility visibility)
Set the visibility of this method.
|
calculateProtectedClass, getHandle, getMethodData, getName, getNativeCall, getNativeCall, getSerialNumber, handleBreak, handleRedo, handleReturn, init, isBuiltin, isNotImplemented, isUndefined, setHandle, setIsBuiltin, setName, setNativeCall, setNativeCall, setNativeCall, setNotImplementedpublic LazyCompiledMethod(RubyModule implementationClass, String rubyName, String javaName, Arity arity, Visibility visibility, StaticScope scope, Object scriptObject, CallConfiguration callConfig, ISourcePosition position, String parameterDesc, MethodFactory factory)
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name)
DynamicMethodcall in class DynamicMethodpublic IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0)
DynamicMethodcall in class DynamicMethodpublic IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, IRubyObject arg1)
DynamicMethodcall in class DynamicMethodpublic IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2)
DynamicMethodcall in class DynamicMethodpublic IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject[] args)
DynamicMethodcall in class DynamicMethodcontext - 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 methodpublic IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, Block block)
DynamicMethodcall in class DynamicMethodpublic IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, Block block)
DynamicMethodcall in class DynamicMethodpublic IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, IRubyObject arg1, Block block)
DynamicMethodcall in class DynamicMethodpublic IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block)
DynamicMethodcall in class DynamicMethodpublic IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject[] args, Block block)
DynamicMethodcall in class DynamicMethodcontext - 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 invocationpublic Arity getArity()
DynamicMethodgetArity in class DynamicMethodpublic CallConfiguration getCallConfig()
DynamicMethodgetCallConfig in class DynamicMethodpublic RubyModule getImplementationClass()
DynamicMethodgetImplementationClass in class DynamicMethodprotected RubyModule getProtectedClass()
DynamicMethodgetProtectedClass in class DynamicMethodpublic DynamicMethod getRealMethod()
DynamicMethodgetRealMethod in class DynamicMethodpublic Visibility getVisibility()
DynamicMethodgetVisibility in class DynamicMethodpublic boolean isCallableFrom(IRubyObject caller, CallType callType)
DynamicMethodisCallableFrom in class DynamicMethodcaller - The calling objectcallType - The type of callpublic boolean isNative()
DynamicMethodisNative in class DynamicMethodpublic void setCallConfig(CallConfiguration callConfig)
DynamicMethodsetCallConfig in class DynamicMethodcallConfig - The CallConfiguration for this method handlepublic void setImplementationClass(RubyModule implClass)
DynamicMethodsetImplementationClass in class DynamicMethodimplClass - The class on which this method is implementedpublic void setVisibility(Visibility visibility)
DynamicMethodsetVisibility in class DynamicMethodvisibility - The visibility of this methodpublic DynamicMethod dup()
DynamicMethoddup in class DynamicMethodpublic String getFile()
PositionAwaregetFile in interface PositionAwarepublic int getLine()
PositionAwaregetLine in interface PositionAwarepublic String[] getParameterList()
getParameterList in interface MethodArgs2Copyright © 2001–2024 JRuby. All rights reserved.