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
Representation of an
InvokeDynamic implementation where the bootstrapped
method is passed a this reference, if available, and any arguments of the instrumented method.-
Nested Class Summary
Nested classes/interfaces inherited from class InvokeDynamic
InvokeDynamic.AbstractDelegator, InvokeDynamic.Appender, InvokeDynamic.InvocationProvider, InvokeDynamic.TerminationHandler, InvokeDynamic.WithImplicitArguments, InvokeDynamic.WithImplicitTarget, InvokeDynamic.WithImplicitTypeNested classes/interfaces inherited from interface Implementation
Implementation.Composable, Implementation.Compound, Implementation.Context, Implementation.Simple, Implementation.SpecialMethodInvocation, Implementation.TargetNested classes/interfaces inherited from interface InstrumentedType.Prepareable
InstrumentedType.Prepareable.NoOp -
Field Summary
Fields inherited from class InvokeDynamic
arguments, assigner, bootstrap, invocationProvider, terminationHandler, typing -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedWithImplicitArguments(MethodDescription.InDefinedShape bootstrap, List<? extends JavaConstant> arguments, InvokeDynamic.InvocationProvider invocationProvider, InvokeDynamic.TerminationHandler terminationHandler, Assigner assigner, Assigner.Typing typing) Creates a new dynamic method invocation with implicit arguments. -
Method Summary
Modifier and TypeMethodDescriptionprotected InvokeDynamicResolves the current configuration into a fully initialized invoke dynamic instance.withAssigner(Assigner assigner, Assigner.Typing typing) Instructs this implementation to use the provided assigner and decides if the assigner should apply dynamic typing.Returns an instance of this instrumentation where the bootstrapped method is not passed any arguments.Methods inherited from class 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 Details
-
WithImplicitArguments
protected WithImplicitArguments(MethodDescription.InDefinedShape bootstrap, List<? extends JavaConstant> 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 Details
-
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
Description copied from class:InvokeDynamic.AbstractDelegatorResolves the current configuration into a fully initialized invoke dynamic instance.- Specified by:
materializein classInvokeDynamic.AbstractDelegator- Returns:
- The fully resolved invoke dynamic instance.
-
withAssigner
Instructs this implementation to use the provided assigner and decides if the assigner should apply dynamic typing.- Overrides:
withAssignerin classInvokeDynamic.AbstractDelegator- Parameters:
assigner- The assigner to use.typing-trueif the assigner should attempt dynamic typing.- Returns:
- The invoke dynamic instruction where the given assigner and dynamic-typing directive are applied.
-