Package | Description |
---|---|
jdk.dynalink |
Dynalink is a library for dynamic linking of high-level operations on objects.
|
jdk.dynalink.beans |
Contains the linker for ordinary Java objects.
|
jdk.dynalink.linker |
Contains interfaces and classes needed by language runtimes to implement
their own language-specific object models and type conversions.
|
jdk.dynalink.linker.support |
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.
|
jdk.dynalink.support |
Contains classes that make using Dynalink more convenient by providing
basic implementations of some classes as well as various utilities.
|
Modifier and Type | Method and Description |
---|---|
void |
RelinkableCallSite.relink(GuardedInvocation guardedInvocation,
MethodHandle relinkAndInvoke)
This method will be called by the dynamic linker every time the call site
is relinked (but see
RelinkableCallSite.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 from
RelinkableCallSite.relink(GuardedInvocation, MethodHandle) ). |
Modifier and Type | Method and Description |
---|---|
GuardedInvocation |
BeansLinker.getGuardedInvocation(LinkRequest request,
LinkerServices linkerServices) |
Modifier and Type | Method and Description |
---|---|
GuardedInvocation |
GuardedInvocation.addSwitchPoint(SwitchPoint newSwitchPoint)
Create a new guarded invocation with an added switch point.
|
GuardedInvocation |
GuardedInvocation.asType(MethodType newType)
Changes the type of the invocation, as if
MethodHandle.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 |
GuardedInvocation.asType(CallSiteDescriptor desc)
Changes the type of the invocation, as if
MethodHandle.asType(MethodType) was applied to its invocation
and its guard, if it has one (with return type changed to boolean for
guard). |
GuardedInvocation |
GuardedInvocation.asType(LinkerServices linkerServices,
MethodType newType)
Changes the type of the invocation, as if
LinkerServices.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 |
GuardedInvocation.asTypeSafeReturn(LinkerServices linkerServices,
MethodType newType)
Changes the type of the invocation, as if
LinkerServices.asTypeLosslessReturn(MethodHandle, MethodType) was
applied to its invocation and
LinkerServices.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). |
GuardedInvocation |
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 |
GuardedInvocation.dropArguments(int pos,
Class<?>... valueTypes)
Makes an invocation that drops arguments in both the invocation and the
guard (if there is one) with
MethodHandles.dropArguments(MethodHandle, int, Class...) . |
GuardedInvocation |
GuardedInvocation.dropArguments(int pos,
List<Class<?>> valueTypes)
Makes an invocation that drops arguments in both the invocation and the
guard (if there is one) with
MethodHandles.dropArguments(MethodHandle, int, List) . |
GuardedInvocation |
GuardedInvocationTransformer.filter(GuardedInvocation inv,
LinkRequest linkRequest,
LinkerServices linkerServices)
Given a guarded invocation, return either the same or potentially
different guarded invocation.
|
GuardedInvocation |
GuardedInvocation.filterArguments(int pos,
MethodHandle... filters)
Applies argument filters to both the invocation and the guard (if there
is one) with
MethodHandles.filterArguments(MethodHandle, int, MethodHandle...) . |
GuardedInvocation |
GuardingDynamicLinker.getGuardedInvocation(LinkRequest linkRequest,
LinkerServices linkerServices)
Creates a guarded invocation appropriate for a particular invocation with
the specified arguments at a call site.
|
GuardedInvocation |
LinkerServices.getGuardedInvocation(LinkRequest linkRequest)
Creates a guarded invocation delegating back to the
DynamicLinker
that exposes this linker services object. |
GuardedInvocation |
GuardedInvocation.replaceMethods(MethodHandle newInvocation,
MethodHandle newGuard)
Creates a new guarded invocation with different methods, preserving the switch point.
|
Modifier and Type | Method and Description |
---|---|
GuardedInvocation |
GuardedInvocationTransformer.filter(GuardedInvocation inv,
LinkRequest linkRequest,
LinkerServices linkerServices)
Given a guarded invocation, return either the same or potentially
different guarded invocation.
|
Modifier and Type | Method and Description |
---|---|
GuardedInvocation |
CompositeGuardingDynamicLinker.getGuardedInvocation(LinkRequest linkRequest,
LinkerServices linkerServices)
Delegates the call to its component linkers.
|
GuardedInvocation |
CompositeTypeBasedGuardingDynamicLinker.getGuardedInvocation(LinkRequest linkRequest,
LinkerServices linkerServices) |
Modifier and Type | Method and Description |
---|---|
void |
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) |
Copyright © 2015, 2016, Oracle and/or its affiliates. All rights reserved.
DRAFT 9-internal+0-2016-03-31-172659.buildd.src