Package net.bytebuddy.implementation
Class InvokeDynamic.WithImplicitArguments
- java.lang.Object
-
- net.bytebuddy.implementation.InvokeDynamic
-
- net.bytebuddy.implementation.InvokeDynamic.AbstractDelegator
-
- net.bytebuddy.implementation.InvokeDynamic.WithImplicitArguments
-
- All Implemented Interfaces:
InstrumentedType.Prepareable
,Implementation
,Implementation.Composable
- Direct Known Subclasses:
InvokeDynamic.WithImplicitTarget
- Enclosing class:
- InvokeDynamic
public static class InvokeDynamic.WithImplicitArguments extends InvokeDynamic.AbstractDelegator
Representation of anInvokeDynamic
implementation where the bootstrapped method is passed athis
reference, if available, and any arguments of the instrumented method.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.bytebuddy.implementation.InvokeDynamic
InvokeDynamic.AbstractDelegator, InvokeDynamic.Appender, InvokeDynamic.InvocationProvider, InvokeDynamic.TerminationHandler, InvokeDynamic.WithImplicitArguments, InvokeDynamic.WithImplicitTarget, InvokeDynamic.WithImplicitType
-
Nested classes/interfaces inherited from interface net.bytebuddy.implementation.Implementation
Implementation.Composable, Implementation.Compound, Implementation.Context, Implementation.Simple, Implementation.SpecialMethodInvocation, Implementation.Target
-
-
Field Summary
-
Fields inherited from class net.bytebuddy.implementation.InvokeDynamic
arguments, assigner, bootstrap, invocationProvider, terminationHandler, typing
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
WithImplicitArguments(MethodDescription.InDefinedShape bootstrap, java.util.List<?> arguments, InvokeDynamic.InvocationProvider invocationProvider, InvokeDynamic.TerminationHandler terminationHandler, Assigner assigner, Assigner.Typing typing)
Creates a new dynamic method invocation with implicit arguments.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected InvokeDynamic
materialize()
Resolves the current configuration into a fully initialized invoke dynamic instance.InvokeDynamic.WithImplicitArguments
withAssigner(Assigner assigner, Assigner.Typing typing)
Instructs this implementation to use the provided assigner and decides if the assigner should apply dynamic typing.InvokeDynamic
withoutArguments()
Returns an instance of this instrumentation where the bootstrapped method is not passed any arguments.-
Methods inherited from class net.bytebuddy.implementation.InvokeDynamic.AbstractDelegator
andThen, appender, prepare, withArgument, withArgument, withBooleanValue, withByteValue, withCharacterValue, withDoubleValue, withEnumeration, withField, withField, withField, withField, withFloatValue, withImplicitAndMethodArguments, withInstance, withIntegerValue, withLongValue, withMethodArguments, withNullValue, withNullValue, withReference, withReference, withShortValue, withThis, withThis, withType, withValue
-
-
-
-
Constructor Detail
-
WithImplicitArguments
protected WithImplicitArguments(MethodDescription.InDefinedShape bootstrap, java.util.List<?> arguments, InvokeDynamic.InvocationProvider invocationProvider, InvokeDynamic.TerminationHandler terminationHandler, Assigner assigner, Assigner.Typing typing)
Creates a new dynamic method invocation with implicit arguments.- Parameters:
bootstrap
- The bootstrap method or constructor.arguments
- The arguments that are provided to the bootstrap method or constructor.invocationProvider
- The target provided that identifies the method to be bootstrapped.terminationHandler
- A handler that handles the method return.assigner
- The assigner to be used.typing
- Indicates if dynamic type castings should be attempted for incompatible assignments.
-
-
Method Detail
-
withoutArguments
public InvokeDynamic withoutArguments()
Returns an instance of this instrumentation where the bootstrapped method is not passed any arguments.- Returns:
- This implementation where the bootstrapped method is not passed any arguments.
-
materialize
protected InvokeDynamic materialize()
Description copied from class:InvokeDynamic.AbstractDelegator
Resolves the current configuration into a fully initialized invoke dynamic instance.- Specified by:
materialize
in classInvokeDynamic.AbstractDelegator
- Returns:
- The fully resolved invoke dynamic instance.
-
withAssigner
public InvokeDynamic.WithImplicitArguments withAssigner(Assigner assigner, Assigner.Typing typing)
Instructs this implementation to use the provided assigner and decides if the assigner should apply dynamic typing.- Overrides:
withAssigner
in classInvokeDynamic.AbstractDelegator
- Parameters:
assigner
- The assigner to use.typing
-true
if the assigner should attempt dynamic typing.- Returns:
- The invoke dynamic instruction where the given assigner and dynamic-typing directive are applied.
-
-