| Modifier and Type | Class and Description |
|---|---|
| pack-priv static enum |
| Modifier and Type | Field and Description |
|---|---|
| public final int | |
| public final int | |
| private static final Map | |
| private boolean | |
| protected CacheEntry | |
| public final CallType | |
| private static final MethodHandle | |
| pack-priv final MethodHandle | |
| protected final String | |
| protected final int | |
| public final Signature | |
| public final boolean | |
| private static final String[] | |
| protected final int | |
| private boolean | |
| private static final Logger | |
| private static final boolean | |
| pack-priv static final MethodHandles. | |
| protected final String | |
| public static final MethodHandle | |
| public final Signature | |
| private final long | |
| private static final MethodHandle | |
| private final SiteTracker |
| Access | Constructor and Description |
|---|---|
| public | InvokeSite(MethodType type, String name, CallType callType, boolean literalClosure, int flags, String file, int line)
|
| Modifier and Type | Method and Description |
|---|---|
| private MethodHandle | |
| public static CallSite | |
| pack-priv MethodHandle | |
| pack-priv MethodHandle | |
| private static DynamicMethod. | |
| pack-priv MethodHandle | |
| pack-priv MethodHandle | |
| pack-priv MethodHandle | |
| pack-priv MethodHandle | |
| pack-priv static MethodHandle | |
| pack-priv MethodHandle | |
| pack-priv MethodHandle | |
| pack-priv MethodHandle | |
| pack-priv MethodHandle | |
| public static IRubyObject | callMethodMissing(CacheEntry entry, CallType callType, ThreadContext context, IRubyObject self, RubyClass selfClass, String name, IRubyObject[] args, Block block)
Variable arity method_missing invocation. |
| public static IRubyObject | callMethodMissing(CacheEntry entry, CallType callType, ThreadContext context, IRubyObject self, RubyClass selfClass, String name, IRubyObject arg0, Block block)
Arity one method_missing invocation |
| public static IRubyObject | callMethodMissing(CacheEntry entry, CallType callType, ThreadContext context, IRubyObject self, RubyClass selfClass, String name, IRubyObject arg0, IRubyObject arg1, Block block)
Arity two method_missing invocation |
| public static IRubyObject | callMethodMissing(CacheEntry entry, CallType callType, ThreadContext context, IRubyObject self, RubyClass selfClass, String name, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block)
Arity three method_missing invocation |
| private MethodHandle | |
| private MethodHandle | |
| public IRubyObject | fail(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject[] args, Block block)
Failover version uses a monomorphic cache and DynamicMethod.call, as in non-indy. |
| public IRubyObject | fail(ThreadContext context, IRubyObject caller, IRubyObject self, Block block)
Failover version uses a monomorphic cache and DynamicMethod.call, as in non-indy. |
| public IRubyObject | fail(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg0, Block block)
Failover version uses a monomorphic cache and DynamicMethod.call, as in non-indy. |
| public IRubyObject | fail(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg0, IRubyObject arg1, Block block)
Failover version uses a monomorphic cache and DynamicMethod.call, as in non-indy. |
| public IRubyObject | fail(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block)
Failover version uses a monomorphic cache and DynamicMethod.call, as in non-indy. |
| public IRubyObject | failf(ThreadContext context, IRubyObject self, IRubyObject[] args, Block block)
Failover version uses a monomorphic cache and DynamicMethod.call, as in non-indy. |
| public IRubyObject | failf(ThreadContext context, IRubyObject self, Block block)
Failover version uses a monomorphic cache and DynamicMethod.call, as in non-indy. |
| public IRubyObject | failf(ThreadContext context, IRubyObject self, IRubyObject arg0, Block block)
Failover version uses a monomorphic cache and DynamicMethod.call, as in non-indy. |
| public IRubyObject | failf(ThreadContext context, IRubyObject self, IRubyObject arg0, IRubyObject arg1, Block block)
Failover version uses a monomorphic cache and DynamicMethod.call, as in non-indy. |
| public IRubyObject | failf(ThreadContext context, IRubyObject self, IRubyObject arg0, IRubyObject arg1, IRubyObject arg2, Block block)
Failover version uses a monomorphic cache and DynamicMethod.call, as in non-indy. |
| private void | finishBinding(CacheEntry entry, MethodHandle mh, IRubyObject self, RubyClass selfClass, SwitchPoint switchPoint)
|
| private static int | |
| private static MethodHandle | |
| protected MethodHandle | |
| public IRubyObject | invoke(ThreadContext context, IRubyObject caller, IRubyObject self, IRubyObject[] args, Block block)
|
| public IRubyObject | |
| private void | |
| private void | |
| private static String | |
| private void | |
| private void | |
| public boolean | |
| public boolean | |
| private CacheEntry | |
| private static boolean | |
| public String | |
| public static IRubyObject | |
| private IRubyObject | performIndirectCall(ThreadContext context, IRubyObject self, IRubyObject[] args, Block block, String methodName, boolean passSymbol, CacheEntry entry)
|
| private static SmartBinder | |
| public static RubyClass | |
| public Binder | Returns: the prepared binderwhether to only call an arg-boxed variable arity path varargs)Prepare a binder for this call site's target, forcing varargs if specified |
| public void | |
| public void | setTarget(MethodHandle
the new target target)Overrides java. Updates the target method of this call site, as a normal variable. |
| public static boolean | |
| protected SmartHandle | |
| pack-priv InvokeSite. | |
| public static boolean | |
| public String | |
| protected MethodHandle | updateInvocationTarget(MethodHandle target, IRubyObject self, RubyModule testClass, DynamicMethod method, SwitchPoint switchPoint)
Update the given call site using the new target, wrapping with appropriate bind and argument-juggling logic. |