Package org.jruby.runtime.invokedynamic
Class JRubyCallSite
java.lang.Object
java.lang.invoke.CallSite
java.lang.invoke.MutableCallSite
org.jruby.runtime.invokedynamic.JRubyCallSite
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final int(package private) final CallType(package private) CacheEntryprivate final Stringprivate final com.headius.invokebinder.Signatureprivate final int(package private) final Stringprivate final com.headius.invokebinder.Signaturestatic final AtomicLong(package private) final longstatic final com.headius.invokebinder.Signaturestatic final com.headius.invokebinder.Signaturestatic final com.headius.invokebinder.Signaturestatic final com.headius.invokebinder.Signaturestatic final com.headius.invokebinder.Signaturestatic final com.headius.invokebinder.Signaturestatic final com.headius.invokebinder.Signaturestatic final com.headius.invokebinder.Signaturestatic final com.headius.invokebinder.Signaturestatic final com.headius.invokebinder.Signaturestatic final com.headius.invokebinder.Signature[]static final com.headius.invokebinder.Signature[]static final com.headius.invokebinder.Signature -
Constructor Summary
ConstructorsConstructorDescriptionJRubyCallSite(MethodHandles.Lookup lookup, MethodType type, CallType callType, String file, int line, String name) -
Method Summary
Modifier and TypeMethodDescriptionintarity()callType()file()com.headius.invokebinder.SignatureGet the "full" signature equivalent to this call site.intline()voidsetInitialTarget(MethodHandle target) com.headius.invokebinder.SignatureGet the actual incoming Signature for this call site.Methods inherited from class java.lang.invoke.MutableCallSite
dynamicInvoker, getTarget, setTarget, syncAll
-
Field Details
-
SITE_ID
-
siteID
final long siteID -
callType
-
name
-
file
-
line
private final int line -
signature
private final com.headius.invokebinder.Signature signature -
fullSignature
private final com.headius.invokebinder.Signature fullSignature -
arity
private final int arity -
entry
CacheEntry entry -
STANDARD_SITE_SIG
public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG -
STANDARD_SITE_SIG_1ARG
public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_1ARG -
STANDARD_SITE_SIG_2ARG
public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_2ARG -
STANDARD_SITE_SIG_3ARG
public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_3ARG -
STANDARD_SITE_SIG_NARG
public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_NARG -
STANDARD_SITE_SIGS
public static final com.headius.invokebinder.Signature[] STANDARD_SITE_SIGS -
STANDARD_SITE_SIG_BLOCK
public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_BLOCK -
STANDARD_SITE_SIG_1ARG_BLOCK
public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_1ARG_BLOCK -
STANDARD_SITE_SIG_2ARG_BLOCK
public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_2ARG_BLOCK -
STANDARD_SITE_SIG_3ARG_BLOCK
public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_3ARG_BLOCK -
STANDARD_SITE_SIG_NARG_BLOCK
public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_NARG_BLOCK -
STANDARD_SITE_SIGS_BLOCK
public static final com.headius.invokebinder.Signature[] STANDARD_SITE_SIGS_BLOCK -
STANDARD_SUPER_SIG
public static final com.headius.invokebinder.Signature STANDARD_SUPER_SIG
-
-
Constructor Details
-
JRubyCallSite
JRubyCallSite(MethodHandles.Lookup lookup, MethodType type, CallType callType, String file, int line, String name)
-
-
Method Details
-
arity
public int arity() -
callType
-
file
-
line
public int line() -
setInitialTarget
-
signature
public com.headius.invokebinder.Signature signature()Get the actual incoming Signature for this call site. This represents the actual argument list.- Returns:
- the actual Signature at the call site
-
fullSignature
public com.headius.invokebinder.Signature fullSignature()Get the "full" signature equivalent to this call site. The "full" signature always guarantees context, caller, and block args are provided. It could also be considered the standard intermediate signature all calls eventually pass through.- Returns:
- the "full" intermediate signature
-