protected static enum MethodInvocation.IllegalInvocation extends Enum<MethodInvocation.IllegalInvocation> implements MethodInvocation.WithImplicitInvocationTargetType
StackManipulation.Compound, StackManipulation.Illegal, StackManipulation.Size, StackManipulation.Trivial
Enum Constant and Description |
---|
INSTANCE
The singleton instance.
|
Modifier and Type | Method and Description |
---|---|
StackManipulation.Size |
apply(org.objectweb.asm.MethodVisitor methodVisitor,
Implementation.Context implementationContext)
Applies the stack manipulation that is described by this instance.
|
StackManipulation |
dynamic(String methodName,
TypeDescription returnType,
List<? extends TypeDescription> methodType,
List<?> arguments)
Invokes the method as a bootstrap method to bind a call site with the given properties.
|
boolean |
isValid()
Determines if this stack manipulation is valid.
|
StackManipulation |
onHandle(MethodInvocation.HandleType type)
Invokes the method via a
MethodHandle . |
StackManipulation |
special(TypeDescription invocationTarget)
Transforms this method invocation into a special invocation on the given type.
|
static MethodInvocation.IllegalInvocation |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static MethodInvocation.IllegalInvocation[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
StackManipulation |
virtual(TypeDescription invocationTarget)
Transforms this method invocation into a virtual (or interface) method invocation on the given type.
|
public static final MethodInvocation.IllegalInvocation INSTANCE
public static MethodInvocation.IllegalInvocation[] values()
for (MethodInvocation.IllegalInvocation c : MethodInvocation.IllegalInvocation.values()) System.out.println(c);
public static MethodInvocation.IllegalInvocation valueOf(String name)
name
- the name of the enum constant to be returned.IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is nullpublic StackManipulation virtual(TypeDescription invocationTarget)
virtual
in interface MethodInvocation.WithImplicitInvocationTargetType
invocationTarget
- The type on which the method is to be invoked virtually on.public StackManipulation special(TypeDescription invocationTarget)
special
in interface MethodInvocation.WithImplicitInvocationTargetType
invocationTarget
- The type on which the method is to be invoked specially on.public StackManipulation dynamic(String methodName, TypeDescription returnType, List<? extends TypeDescription> methodType, List<?> arguments)
dynamic
in interface MethodInvocation.WithImplicitInvocationTargetType
methodName
- The name of the method to be bound.returnType
- The return type of the method to be bound.methodType
- The parameter types of the method to be bound.arguments
- The arguments to be passed to the bootstrap method.public StackManipulation onHandle(MethodInvocation.HandleType type)
MethodHandle
.onHandle
in interface MethodInvocation.WithImplicitInvocationTargetType
type
- The type of invocation.public boolean isValid()
isValid
in interface StackManipulation
false
, this manipulation cannot be applied and should throw an exception.public StackManipulation.Size apply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext)
apply
in interface StackManipulation
methodVisitor
- The method visitor used to write the method implementation to.implementationContext
- The context of the current implementation.Copyright © 2014–2018. All rights reserved.