public static class Implementation.SpecialMethodInvocation.Simple extends Implementation.SpecialMethodInvocation.AbstractBase
Implementation.SpecialMethodInvocation
.Implementation.SpecialMethodInvocation.AbstractBase, Implementation.SpecialMethodInvocation.Illegal, Implementation.SpecialMethodInvocation.Simple
StackManipulation.Compound, StackManipulation.Size, StackManipulation.Trivial
Modifier | Constructor and Description |
---|---|
protected |
Simple(MethodDescription methodDescription,
TypeDescription typeDescription,
StackManipulation stackManipulation)
Creates a new legal special method invocation.
|
Modifier and Type | Method and Description |
---|---|
StackManipulation.Size |
apply(MethodVisitor methodVisitor,
Implementation.Context implementationContext)
Applies the stack manipulation that is described by this instance.
|
MethodDescription |
getMethodDescription()
Returns the method that represents this special method invocation.
|
TypeDescription |
getTypeDescription()
Returns the target type the represented method is invoked on.
|
static Implementation.SpecialMethodInvocation |
of(MethodDescription methodDescription,
TypeDescription typeDescription)
Creates a special method invocation for a given invocation target.
|
Implementation.SpecialMethodInvocation |
withCheckedCompatibilityTo(MethodDescription.TypeToken token)
Checks that this special method invocation is compatible with the supplied type representation.
|
equals, hashCode, isValid
protected Simple(MethodDescription methodDescription, TypeDescription typeDescription, StackManipulation stackManipulation)
methodDescription
- The method that represents the special method invocation.typeDescription
- The type on which the method should be invoked on by an INVOKESPECIAL
invocation.stackManipulation
- The stack manipulation that represents this special method invocation.public static Implementation.SpecialMethodInvocation of(MethodDescription methodDescription, TypeDescription typeDescription)
methodDescription
- The method that represents the special method invocation.typeDescription
- The type on which the method should be invoked on by an INVOKESPECIAL
invocation.public MethodDescription getMethodDescription()
Implementation.Target
.public TypeDescription getTypeDescription()
public StackManipulation.Size apply(MethodVisitor methodVisitor, Implementation.Context implementationContext)
methodVisitor
- The method visitor used to write the method implementation to.implementationContext
- The context of the current implementation.public Implementation.SpecialMethodInvocation withCheckedCompatibilityTo(MethodDescription.TypeToken token)
token
- The type token to check against.Copyright © 2014–2020. All rights reserved.