| Package | Description |
|---|---|
| java.lang.invoke |
The
java.lang.invoke package contains dynamic language support provided directly by the Java core class libraries and virtual machine.
|
| Modifier and Type | Method and Description |
|---|---|
static MethodHandle |
MethodHandles.arrayElementGetter(Class
Produces a method handle giving read access to elements of an array.
|
static MethodHandle |
MethodHandles.arrayElementSetter(Class
Produces a method handle giving write access to elements of an array.
|
MethodHandle |
MethodHandle.asCollector(Class
Makes an
array-collecting method handle, which accepts a given number of trailing positional arguments and collects them into an array argument.
|
MethodHandle |
MethodHandle.asFixedArity()
Makes a
fixed arity method handle which is otherwise equivalent to the current method handle.
|
MethodHandle |
MethodHandle.asSpreader(Class
Makes an
array-spreading method handle, which accepts a trailing array argument and spreads its elements as positional arguments.
|
MethodHandle |
MethodHandle.asType(MethodType
Produces an adapter method handle which adapts the type of the current method handle to a new type.
|
MethodHandle |
MethodHandle.asVarargsCollector(Class
Makes a
variable arity adapter which is able to accept any number of trailing positional arguments and collect them into an array argument.
|
MethodHandle |
MethodHandles.Lookup.bind(Object
Produces an early-bound method handle for a non-static method.
|
MethodHandle |
MethodHandle.bindTo(Object
Binds a value
x to the first argument of a method handle, without invoking it.
|
static MethodHandle |
MethodHandles.catchException(MethodHandle
Makes a method handle which adapts a target method handle, by running it inside an exception handler.
|
static MethodHandle |
MethodHandles.collectArguments(MethodHandle
Adapts a target method handle by pre-processing a sub-sequence of its arguments with a filter (another method handle).
|
static MethodHandle |
MethodHandles.constant(Class
Produces a method handle of the requested return type which returns the given constant value every time it is invoked.
|
static MethodHandle |
MethodHandles.dropArguments(MethodHandle
Produces a method handle which will discard some dummy arguments before calling some other specified
target method handle.
|
static MethodHandle |
MethodHandles.dropArguments(MethodHandle
Produces a method handle which will discard some dummy arguments before calling some other specified
target method handle.
|
abstract MethodHandle |
CallSite.dynamicInvoker()
Produces a method handle equivalent to an invokedynamic instruction which has been linked to this call site.
|
MethodHandle |
ConstantCallSite.dynamicInvoker()
Returns this call site's permanent target.
|
MethodHandle |
VolatileCallSite.dynamicInvoker()
Produces a method handle equivalent to an invokedynamic instruction which has been linked to this call site.
|
MethodHandle |
MutableCallSite.dynamicInvoker()
Produces a method handle equivalent to an invokedynamic instruction which has been linked to this call site.
|
static MethodHandle |
MethodHandles.exactInvoker(MethodType
Produces a special
invoker method handle which can be used to invoke any method handle of the given type, as if by
invokeExact.
|
static MethodHandle |
MethodHandles.explicitCastArguments(MethodHandle
Produces a method handle which adapts the type of the given method handle to a new type by pairwise argument and return type conversion.
|
static MethodHandle |
MethodHandles.filterArguments(MethodHandle
Adapts a target method handle by pre-processing one or more of its arguments, each with its own unary filter function, and then calling the target with each pre-processed argument replaced by the result of its corresponding filter function.
|
static MethodHandle |
MethodHandles.filterReturnValue(MethodHandle
Adapts a target method handle by post-processing its return value (if any) with a filter (another method handle).
|
MethodHandle |
MethodHandles.Lookup.findConstructor(Class
Produces a method handle which creates an object and initializes it, using the constructor of the specified type.
|
MethodHandle |
MethodHandles.Lookup.findGetter(Class
Produces a method handle giving read access to a non-static field.
|
MethodHandle |
MethodHandles.Lookup.findSetter(Class
Produces a method handle giving write access to a non-static field.
|
MethodHandle |
MethodHandles.Lookup.findSpecial(Class
Produces an early-bound method handle for a virtual method.
|
MethodHandle |
MethodHandles.Lookup.findStatic(Class
Produces a method handle for a static method.
|
MethodHandle |
MethodHandles.Lookup.findStaticGetter(Class
Produces a method handle giving read access to a static field.
|
MethodHandle |
MethodHandles.Lookup.findStaticSetter(Class
Produces a method handle giving write access to a static field.
|
MethodHandle |
MethodHandles.Lookup.findVirtual(Class
Produces a method handle for a virtual method.
|
static MethodHandle |
MethodHandles.foldArguments(MethodHandle
Adapts a target method handle by pre-processing some of its arguments, and then calling the target with the result of the pre-processing, inserted into the original sequence of arguments.
|
abstract MethodHandle |
CallSite.getTarget()
Returns the target method of the call site, according to the behavior defined by this call site's specific class.
|
MethodHandle |
ConstantCallSite.getTarget()
Returns the target method of the call site, which behaves like a
final field of the
ConstantCallSite.
|
MethodHandle |
VolatileCallSite.getTarget()
Returns the target method of the call site, which behaves like a
volatile field of the
VolatileCallSite.
|
MethodHandle |
MutableCallSite.getTarget()
Returns the target method of the call site, which behaves like a normal field of the
MutableCallSite.
|
MethodHandle |
SwitchPoint.guardWithTest(MethodHandle
Returns a method handle which always delegates either to the target or the fallback.
|
static MethodHandle |
MethodHandles.guardWithTest(MethodHandle
Makes a method handle which adapts a target method handle, by guarding it with a test, a boolean-valued method handle.
|
static MethodHandle |
MethodHandles.identity(Class
Produces a method handle which returns its sole argument when invoked.
|
static MethodHandle |
MethodHandles.insertArguments(MethodHandle
Provides a target method handle with one or more
bound arguments in advance of the method handle's invocation.
|
static MethodHandle |
MethodHandles.invoker(MethodType
Produces a special
invoker method handle which can be used to invoke any method handle compatible with the given type, as if by
invoke.
|
static MethodHandle |
MethodHandles.permuteArguments(MethodHandle
Produces a method handle which adapts the calling sequence of the given method handle to a new type, by reordering the arguments.
|
static MethodHandle |
MethodHandles.spreadInvoker(MethodType
Produces a method handle which will invoke any method handle of the given
type, with a given number of trailing arguments replaced by a single trailing
Object[] array.
|
static MethodHandle |
MethodHandles.throwException(Class
Produces a method handle which will throw exceptions of the given
exType.
|
MethodHandle |
MethodHandles.Lookup.unreflect(Method
Makes a
direct method handle to
m, if the lookup class has permission.
|
MethodHandle |
MethodHandles.Lookup.unreflectConstructor(Constructor
Produces a method handle for a reflected constructor.
|
MethodHandle |
MethodHandles.Lookup.unreflectGetter(Field
Produces a method handle giving read access to a reflected field.
|
MethodHandle |
MethodHandles.Lookup.unreflectSetter(Field
Produces a method handle giving write access to a reflected field.
|
MethodHandle |
MethodHandles.Lookup.unreflectSpecial(Method
Produces a method handle for a reflected method.
|
static MethodHandle |
MethodHandleProxies.wrapperInstanceTarget(Object
Produces or recovers a target method handle which is behaviorally equivalent to the unique method of this wrapper instance.
|
| Modifier and Type | Method and Description |
|---|---|
static <T> T |
MethodHandleProxies.asInterfaceInstance(Class
Produces an instance of the given single-method interface which redirects its calls to the given method handle.
|
static MethodHandle |
MethodHandles.catchException(MethodHandle
Makes a method handle which adapts a target method handle, by running it inside an exception handler.
|
static MethodHandle |
MethodHandles.collectArguments(MethodHandle
Adapts a target method handle by pre-processing a sub-sequence of its arguments with a filter (another method handle).
|
static MethodHandle |
MethodHandles.dropArguments(MethodHandle
Produces a method handle which will discard some dummy arguments before calling some other specified
target method handle.
|
static MethodHandle |
MethodHandles.dropArguments(MethodHandle
Produces a method handle which will discard some dummy arguments before calling some other specified
target method handle.
|
static MethodHandle |
MethodHandles.explicitCastArguments(MethodHandle
Produces a method handle which adapts the type of the given method handle to a new type by pairwise argument and return type conversion.
|
static MethodHandle |
MethodHandles.filterArguments(MethodHandle
Adapts a target method handle by pre-processing one or more of its arguments, each with its own unary filter function, and then calling the target with each pre-processed argument replaced by the result of its corresponding filter function.
|
static MethodHandle |
MethodHandles.filterArguments(MethodHandle
Adapts a target method handle by pre-processing one or more of its arguments, each with its own unary filter function, and then calling the target with each pre-processed argument replaced by the result of its corresponding filter function.
|
static MethodHandle |
MethodHandles.filterReturnValue(MethodHandle
Adapts a target method handle by post-processing its return value (if any) with a filter (another method handle).
|
static MethodHandle |
MethodHandles.foldArguments(MethodHandle
Adapts a target method handle by pre-processing some of its arguments, and then calling the target with the result of the pre-processing, inserted into the original sequence of arguments.
|
MethodHandle |
SwitchPoint.guardWithTest(MethodHandle
Returns a method handle which always delegates either to the target or the fallback.
|
static MethodHandle |
MethodHandles.guardWithTest(MethodHandle
Makes a method handle which adapts a target method handle, by guarding it with a test, a boolean-valued method handle.
|
static MethodHandle |
MethodHandles.insertArguments(MethodHandle
Provides a target method handle with one or more
bound arguments in advance of the method handle's invocation.
|
static CallSite |
LambdaMetafactory.metafactory(MethodHandles
Facilitates the creation of simple "function objects" that implement one or more interfaces by delegation to a provided
MethodHandle, after appropriate type adaptation and partial evaluation of arguments.
|
static MethodHandle |
MethodHandles.permuteArguments(MethodHandle
Produces a method handle which adapts the calling sequence of the given method handle to a new type, by reordering the arguments.
|
static <T extends Member |
MethodHandles.reflectAs(Class
Performs an unchecked "crack" of a
direct method handle.
|
MethodHandleInfo |
MethodHandles.Lookup.revealDirect(MethodHandle
Cracks a
direct method handle created by this lookup object or a similar one.
|
abstract void |
CallSite.setTarget(MethodHandle
Updates the target method of this call site, according to the behavior defined by this call site's specific class.
|
void |
ConstantCallSite.setTarget(MethodHandle
Always throws an
UnsupportedOperationException.
|
void |
VolatileCallSite.setTarget(MethodHandle
Updates the target method of this call site, as a volatile variable.
|
void |
MutableCallSite.setTarget(MethodHandle
Updates the target method of this call site, as a normal variable.
|
| Constructor and Description | |
|---|---|
ConstantCallSite(MethodHandle
Creates a call site with a permanent target.
|
|
ConstantCallSite(MethodType
Creates a call site with a permanent target, possibly bound to the call site itself.
|
|
MutableCallSite(MethodHandle
Creates a call site object with an initial target method handle.
|
|
VolatileCallSite(MethodHandle
Creates a call site with a volatile binding to its target.
|