Package org.jruby.runtime.callsite
Class SuperCallSite
java.lang.Object
org.jruby.runtime.CallSite
org.jruby.runtime.callsite.SuperCallSite
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.jruby.runtime.callsite.SuperCallSite.SuperTuple
Fields inherited from class org.jruby.runtime.CallSite
callType, methodName
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected IRubyObject
cacheAndCall
(IRubyObject caller, RubyClass selfType, Block block, IRubyObject[] args, ThreadContext context, IRubyObject self, String name) protected IRubyObject
cacheAndCall
(IRubyObject caller, RubyClass selfType, Block block, ThreadContext context, IRubyObject self, String name) protected IRubyObject
cacheAndCall
(IRubyObject caller, RubyClass selfType, Block block, ThreadContext context, IRubyObject self, String name, IRubyObject arg) protected IRubyObject
cacheAndCall
(IRubyObject caller, RubyClass selfType, Block block, ThreadContext context, IRubyObject self, String name, IRubyObject arg1, IRubyObject arg2) protected IRubyObject
cacheAndCall
(IRubyObject caller, RubyClass selfType, Block block, ThreadContext context, IRubyObject self, String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3) protected IRubyObject
cacheAndCall
(IRubyObject caller, RubyClass selfType, IRubyObject[] args, ThreadContext context, IRubyObject self, String name) protected IRubyObject
cacheAndCall
(IRubyObject caller, RubyClass selfType, ThreadContext context, IRubyObject self, String name) protected IRubyObject
cacheAndCall
(IRubyObject caller, RubyClass selfType, ThreadContext context, IRubyObject self, String name, IRubyObject arg) protected IRubyObject
cacheAndCall
(IRubyObject caller, RubyClass selfType, ThreadContext context, IRubyObject self, String name, IRubyObject arg1, IRubyObject arg2) protected IRubyObject
cacheAndCall
(IRubyObject caller, RubyClass selfType, ThreadContext context, IRubyObject self, String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3) call
(ThreadContext context, IRubyObject caller, IRubyObject self) Call the site's method against the target object passing no args.call
(ThreadContext context, IRubyObject caller, IRubyObject self, double flote) Call the site's method against the target object, passing a literal double value.call
(ThreadContext context, IRubyObject caller, IRubyObject self, long fixnum) Call the site's method against the target object, passing a literal long value.call
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name) call
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, Block block) call
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1) call
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject... args) call
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject[] args, Block block) call
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, Block block) call
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2) call
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2, Block block) call
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3) call
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, Block block) call
(ThreadContext context, IRubyObject caller, IRubyObject self, Block block) Call the site's method against the target object passing no arguments and a non-literal (block pass, &) block.call
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1) Call the site's method against the target object passing one argument.call
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject... args) Call the site's method against the target object passing arguments.call
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject[] args, Block block) Call the site's method against the target object passing one argument and a non-literal (block pass, &) block.call
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, Block block) Call the site's method against the target object passing one argument and a non-literal (block pass, &) block.call
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2) Call the site's method against the target object passing two arguments.call
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2, Block block) Call the site's method against the target object passing two arguments and a non-literal (block pass, &) block.call
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3) Call the site's method against the target object passing two arguments.call
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, Block block) Call the site's method against the target object passing three arguments and a non-literal (block pass, &) block.callIter
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, Block block) callIter
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject[] args, Block block) callIter
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, Block block) callIter
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2, Block block) callIter
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, Block block) callIter
(ThreadContext context, IRubyObject caller, IRubyObject self, Block block) Call the site's method against the target object passing no arguments and a literal block.callIter
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject[] args, Block block) Call the site's method against the target object passing arguments and a literal block.callIter
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, Block block) Call the site's method against the target object passing one argument and a literal block.callIter
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2, Block block) Call the site's method against the target object passing two arguments and a literal block.callIter
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, Block block) Call the site's method against the target object passing three arguments and a literal block.protected IRubyObject
callMethodMissing
(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method) protected IRubyObject
callMethodMissing
(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, Block block) protected IRubyObject
callMethodMissing
(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg) protected IRubyObject
callMethodMissing
(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject[] args) protected IRubyObject
callMethodMissing
(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject[] args, Block block) protected IRubyObject
callMethodMissing
(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg0, Block block) protected IRubyObject
callMethodMissing
(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg0, IRubyObject arg1) protected IRubyObject
callMethodMissing
(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg0, IRubyObject arg1, Block block) protected IRubyObject
callMethodMissing
(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg0, IRubyObject arg1, IRubyObject arg3) protected IRubyObject
callMethodMissing
(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) callVarargs
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject... args) callVarargs
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject[] args, Block block) callVarargs
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject... args) Call the site's method against the target object passing arguments.callVarargs
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject[] args, Block block) Call the site's method against the target object passing one argument and a non-literal (block pass, &) block.callVarargsIter
(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject[] args, Block block) callVarargsIter
(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject[] args, Block block) Call the site's method against the target object passing arguments and a literal block.protected boolean
methodMissing
(DynamicMethod method, IRubyObject caller) protected static RubyClass
pollAndGetClass
(ThreadContext context, IRubyObject self, RubyModule frameClass, String frameName)
-
Field Details
-
cache
protected volatile org.jruby.runtime.callsite.SuperCallSite.SuperTuple cache
-
-
Constructor Details
-
SuperCallSite
public SuperCallSite()
-
-
Method Details
-
call
Description copied from class:CallSite
Call the site's method against the target object, passing a literal long value. -
call
Description copied from class:CallSite
Call the site's method against the target object, passing a literal double value. -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject... args) Description copied from class:CallSite
Call the site's method against the target object passing arguments. -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject... args) -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject[] args, Block block) Description copied from class:CallSite
Call the site's method against the target object passing one argument and a non-literal (block pass, &) block. -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject[] args, Block block) -
callIter
public IRubyObject callIter(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject[] args, Block block) Description copied from class:CallSite
Call the site's method against the target object passing arguments and a literal block. This version handles break jumps by returning their value if this is the appropriate place in the call stack to do so. -
callIter
public IRubyObject callIter(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject[] args, Block block) -
callVarargs
public IRubyObject callVarargs(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject... args) Description copied from class:CallSite
Call the site's method against the target object passing arguments. As a "varargs" method, this will use the length of the args array to dispatch to the correct arity call, rather than dispatching unconditionally to the IRubyObject[] path.- Specified by:
callVarargs
in classCallSite
- Parameters:
context
- the ThreadContext for the current threadcaller
- the caller, for visibility checksself
- the target object to call againstargs
- the arguments to pass- Returns:
- the result of the call
-
callVarargs
public IRubyObject callVarargs(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject... args) -
callVarargs
public IRubyObject callVarargs(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject[] args, Block block) Description copied from class:CallSite
Call the site's method against the target object passing one argument and a non-literal (block pass, &) block. As a "varargs" method, this will use the length of the args array to dispatch to the correct arity call, rather than dispatching unconditionally to the IRubyObject[] path.- Specified by:
callVarargs
in classCallSite
- Parameters:
context
- the ThreadContext for the current threadcaller
- the caller, for visibility checksself
- the target object to call againstargs
- the arguments to passblock
- the block argument to pass- Returns:
- the result of the call
-
callVarargs
public IRubyObject callVarargs(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject[] args, Block block) -
callVarargsIter
public IRubyObject callVarargsIter(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject[] args, Block block) Description copied from class:CallSite
Call the site's method against the target object passing arguments and a literal block. This version handles break jumps by returning their value if this is the appropriate place in the call stack to do so. As a "varargs" method, this will use the length of the args array to dispatch to the correct arity call, rather than dispatching unconditionally to the IRubyObject[] path.- Specified by:
callVarargsIter
in classCallSite
- Parameters:
context
- the ThreadContext for the current threadcaller
- the caller, for visibility checksself
- the target object to call againstargs
- the arguments to passblock
- the literal block to pass- Returns:
- the result of the call
-
callVarargsIter
public IRubyObject callVarargsIter(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject[] args, Block block) -
call
Description copied from class:CallSite
Call the site's method against the target object passing no args. -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name) -
call
Description copied from class:CallSite
Call the site's method against the target object passing no arguments and a non-literal (block pass, &) block. -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, Block block) -
callIter
public IRubyObject callIter(ThreadContext context, IRubyObject caller, IRubyObject self, Block block) Description copied from class:CallSite
Call the site's method against the target object passing no arguments and a literal block. This version handles break jumps by returning their value if this is the appropriate place in the call stack to do so. -
callIter
public IRubyObject callIter(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, Block block) -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1) Description copied from class:CallSite
Call the site's method against the target object passing one argument. -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1) -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, Block block) Description copied from class:CallSite
Call the site's method against the target object passing one argument and a non-literal (block pass, &) block. -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, Block block) -
callIter
public IRubyObject callIter(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, Block block) Description copied from class:CallSite
Call the site's method against the target object passing one argument and a literal block. This version handles break jumps by returning their value if this is the appropriate place in the call stack to do so. -
callIter
public IRubyObject callIter(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, Block block) -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2) Description copied from class:CallSite
Call the site's method against the target object passing two arguments. -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2) -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2, Block block) Description copied from class:CallSite
Call the site's method against the target object passing two arguments and a non-literal (block pass, &) block.- Specified by:
call
in classCallSite
- Parameters:
context
- the ThreadContext for the current threadcaller
- the caller, for visibility checksself
- the target object to call againstarg1
- the first argument to passarg2
- the second argument to passblock
- the block argument to pass- Returns:
- the result of the call
-
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2, Block block) -
callIter
public IRubyObject callIter(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2, Block block) Description copied from class:CallSite
Call the site's method against the target object passing two arguments and a literal block. This version handles break jumps by returning their value if this is the appropriate place in the call stack to do so.- Specified by:
callIter
in classCallSite
- Parameters:
context
- the ThreadContext for the current threadcaller
- the caller, for visibility checksself
- the target object to call againstarg1
- the first argument to passarg2
- the second argument to passblock
- the literal block to pass- Returns:
- the result of the call
-
callIter
public IRubyObject callIter(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2, Block block) -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3) Description copied from class:CallSite
Call the site's method against the target object passing two arguments.- Specified by:
call
in classCallSite
- Parameters:
context
- the ThreadContext for the current threadcaller
- the caller, for visibility checksself
- the target object to call againstarg1
- the first argument to passarg2
- the second argument to passarg3
- the third argument to pass- Returns:
- the result of the call
-
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3) -
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, Block block) Description copied from class:CallSite
Call the site's method against the target object passing three arguments and a non-literal (block pass, &) block.- Specified by:
call
in classCallSite
- Parameters:
context
- the ThreadContext for the current threadcaller
- the caller, for visibility checksself
- the target object to call againstarg1
- the first argument to passarg2
- the second argument to passarg3
- the third argument to passblock
- the block argument to pass- Returns:
- the result of the call
-
call
public IRubyObject call(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, Block block) -
callIter
public IRubyObject callIter(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, Block block) Description copied from class:CallSite
Call the site's method against the target object passing three arguments and a literal block. This version handles break jumps by returning their value if this is the appropriate place in the call stack to do so.- Specified by:
callIter
in classCallSite
- Parameters:
context
- the ThreadContext for the current threadcaller
- the caller, for visibility checksself
- the target object to call againstarg1
- the first argument to passarg2
- the second argument to passarg3
- the third argument to passblock
- the literal block to pass- Returns:
- the result of the call
-
callIter
public IRubyObject callIter(ThreadContext context, IRubyObject caller, IRubyObject self, RubyModule klazz, String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, Block block) -
cacheAndCall
protected IRubyObject cacheAndCall(IRubyObject caller, RubyClass selfType, Block block, IRubyObject[] args, ThreadContext context, IRubyObject self, String name) -
cacheAndCall
protected IRubyObject cacheAndCall(IRubyObject caller, RubyClass selfType, IRubyObject[] args, ThreadContext context, IRubyObject self, String name) -
cacheAndCall
protected IRubyObject cacheAndCall(IRubyObject caller, RubyClass selfType, ThreadContext context, IRubyObject self, String name) -
cacheAndCall
protected IRubyObject cacheAndCall(IRubyObject caller, RubyClass selfType, Block block, ThreadContext context, IRubyObject self, String name) -
cacheAndCall
protected IRubyObject cacheAndCall(IRubyObject caller, RubyClass selfType, ThreadContext context, IRubyObject self, String name, IRubyObject arg) -
cacheAndCall
protected IRubyObject cacheAndCall(IRubyObject caller, RubyClass selfType, Block block, ThreadContext context, IRubyObject self, String name, IRubyObject arg) -
cacheAndCall
protected IRubyObject cacheAndCall(IRubyObject caller, RubyClass selfType, ThreadContext context, IRubyObject self, String name, IRubyObject arg1, IRubyObject arg2) -
cacheAndCall
protected IRubyObject cacheAndCall(IRubyObject caller, RubyClass selfType, Block block, ThreadContext context, IRubyObject self, String name, IRubyObject arg1, IRubyObject arg2) -
cacheAndCall
protected IRubyObject cacheAndCall(IRubyObject caller, RubyClass selfType, ThreadContext context, IRubyObject self, String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3) -
cacheAndCall
protected IRubyObject cacheAndCall(IRubyObject caller, RubyClass selfType, Block block, ThreadContext context, IRubyObject self, String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3) -
callMethodMissing
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject[] args) -
callMethodMissing
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method) -
callMethodMissing
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, Block block) -
callMethodMissing
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg) -
callMethodMissing
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject[] args, Block block) -
callMethodMissing
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg0, Block block) -
callMethodMissing
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg0, IRubyObject arg1) -
callMethodMissing
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg0, IRubyObject arg1, Block block) -
callMethodMissing
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg0, IRubyObject arg1, IRubyObject arg3) -
callMethodMissing
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, RubyClass selfType, String name, DynamicMethod method, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block) -
methodMissing
-
pollAndGetClass
protected static RubyClass pollAndGetClass(ThreadContext context, IRubyObject self, RubyModule frameClass, String frameName)
-