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 anInvokeDynamicimplementation where the bootstrapped method is passed athisreference, 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
-
Nested classes/interfaces inherited from interface net.bytebuddy.dynamic.scaffold.InstrumentedType.Prepareable
InstrumentedType.Prepareable.NoOp
-
-
Field Summary
-
Fields inherited from class net.bytebuddy.implementation.InvokeDynamic
arguments, assigner, bootstrap, invocationProvider, terminationHandler, typing
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedWithImplicitArguments(MethodDescription.InDefinedShape bootstrap, java.util.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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected InvokeDynamicmaterialize()Resolves the current configuration into a fully initialized invoke dynamic instance.InvokeDynamic.WithImplicitArgumentswithAssigner(Assigner assigner, Assigner.Typing typing)Instructs this implementation to use the provided assigner and decides if the assigner should apply dynamic typing.InvokeDynamicwithoutArguments()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<? 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 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.AbstractDelegatorResolves the current configuration into a fully initialized invoke dynamic instance.- Specified by:
materializein 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:
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.
-
-