Uses of Class
jdk.dynalink.linker.GuardedInvocation
Package
Description
Contains interfaces and classes that are used to link an
invokedynamic
call site.Contains the linker for ordinary Java objects.
Contains interfaces and classes needed by language runtimes to implement
their own language-specific object models and type conversions.
Contains classes that make it more convenient for language runtimes to
implement their own language-specific object models and type conversions
by providing basic implementations of some classes as well as various
utilities.
Contains classes that make using Dynalink more convenient by providing
basic implementations of some classes as well as various utilities.
-
Uses of GuardedInvocation in jdk.dynalink
Modifier and TypeMethodDescriptionvoid
RelinkableCallSite.relink
(GuardedInvocation guardedInvocation, MethodHandle relinkAndInvoke) This method will be called by the dynamic linker every time the call site is relinked (but seeRelinkableCallSite.resetAndRelink(GuardedInvocation, MethodHandle)
for an exception).void
RelinkableCallSite.resetAndRelink
(GuardedInvocation guardedInvocation, MethodHandle relinkAndInvoke) This method will be called by the dynamic linker every time the call site is relinked and the linker wishes the call site to throw away any prior linkage state (that is how it differs fromRelinkableCallSite.relink(GuardedInvocation, MethodHandle)
). -
Uses of GuardedInvocation in jdk.dynalink.beans
Modifier and TypeMethodDescriptionBeansLinker.getGuardedInvocation
(LinkRequest request, LinkerServices linkerServices) -
Uses of GuardedInvocation in jdk.dynalink.linker
Modifier and TypeMethodDescriptionGuardedInvocation.addSwitchPoint
(SwitchPoint newSwitchPoint) Create a new guarded invocation with an added switch point.GuardedInvocation.asType
(MethodType newType) Changes the type of the invocation, as ifMethodHandle.asType(MethodType)
was applied to its invocation and its guard, if it has one (with return type changed to boolean, and parameter count potentially truncated for the guard).GuardedInvocation.asType
(CallSiteDescriptor desc) Changes the type of the invocation, as ifMethodHandle.asType(MethodType)
was applied to its invocation and its guard, if it has one (with return type changed to boolean for guard).GuardedInvocation.asType
(LinkerServices linkerServices, MethodType newType) Changes the type of the invocation, as ifLinkerServices.asType(MethodHandle, MethodType)
was applied to its invocation and its guard, if it has one (with return type changed to boolean, and parameter count potentially truncated for the guard).GuardedInvocation.asTypeSafeReturn
(LinkerServices linkerServices, MethodType newType) Changes the type of the invocation, as ifLinkerServices.asTypeLosslessReturn(MethodHandle, MethodType)
was applied to its invocation andLinkerServices.asType(MethodHandle, MethodType)
applied to its guard, if it has one (with return type changed to boolean, and parameter count potentially truncated for the guard).GuardingTypeConverterFactory.convertToType
(Class<?> sourceType, Class<?> targetType, Supplier<MethodHandles.Lookup> lookupSupplier) Returns a guarded type conversion that receives a value of the specified source type and returns a value converted to the specified target type.GuardedInvocation.dropArguments
(int pos, Class<?>... valueTypes) Makes an invocation that drops arguments in both the invocation and the guard (if it exists and has at leastpos
parameters) withMethodHandles.dropArguments(MethodHandle, int, Class...)
.GuardedInvocation.dropArguments
(int pos, List<Class<?>> valueTypes) Makes an invocation that drops arguments in both the invocation and the guard (if it exists and has at leastpos
parameters) withMethodHandles.dropArguments(MethodHandle, int, List)
.GuardedInvocationTransformer.filter
(GuardedInvocation inv, LinkRequest linkRequest, LinkerServices linkerServices) Given a guarded invocation, return either the same or potentially different guarded invocation.GuardedInvocation.filterArguments
(int pos, MethodHandle... filters) Applies argument filters to both the invocation and the guard (if it exists and has at leastpos + 1
parameters) withMethodHandles.filterArguments(MethodHandle, int, MethodHandle...)
.GuardingDynamicLinker.getGuardedInvocation
(LinkRequest linkRequest, LinkerServices linkerServices) Creates a guarded invocation appropriate for a particular invocation with the specified arguments at a call site.LinkerServices.getGuardedInvocation
(LinkRequest linkRequest) Creates a guarded invocation delegating back to theDynamicLinker
that exposes this linker services object.GuardedInvocation.replaceMethods
(MethodHandle newInvocation, MethodHandle newGuard) Creates a new guarded invocation with different methods, preserving the switch point.Modifier and TypeMethodDescriptionGuardedInvocationTransformer.filter
(GuardedInvocation inv, LinkRequest linkRequest, LinkerServices linkerServices) Given a guarded invocation, return either the same or potentially different guarded invocation. -
Uses of GuardedInvocation in jdk.dynalink.linker.support
Modifier and TypeMethodDescriptionCompositeGuardingDynamicLinker.getGuardedInvocation
(LinkRequest linkRequest, LinkerServices linkerServices) Delegates the call to its component linkers.CompositeTypeBasedGuardingDynamicLinker.getGuardedInvocation
(LinkRequest linkRequest, LinkerServices linkerServices) -
Uses of GuardedInvocation in jdk.dynalink.support
Modifier and TypeMethodDescriptionvoid
ChainedCallSite.relink
(GuardedInvocation guardedInvocation, MethodHandle relinkAndInvoke) void
SimpleRelinkableCallSite.relink
(GuardedInvocation guardedInvocation, MethodHandle relinkAndInvoke) void
ChainedCallSite.resetAndRelink
(GuardedInvocation guardedInvocation, MethodHandle relinkAndInvoke) void
SimpleRelinkableCallSite.resetAndRelink
(GuardedInvocation guardedInvocation, MethodHandle relinkAndInvoke)