Top Description Fields Constructors Methods
tools.jackson.module.afterburner.util.bytebuddy

public abstract Class AbstractCreateLocalVarStackManipulation

extends AbstractPropertyStackManipulation
Class Inheritance
Known Direct Subclasses
tools.jackson.module.afterburner.deser.PropertyMutatorCollector.CreateLocalVarStackManipulation, tools.jackson.module.afterburner.ser.PropertyAccessorCollector.CreateLocalVarStackManipulation
Imports
net.bytebuddy.description.type.TypeDescription, net.bytebuddy.implementation.Implementation, net.bytebuddy.implementation.bytecode.StackManipulation, net.bytebuddy.implementation.bytecode.assign.TypeCasting, net.bytebuddy.implementation.bytecode.member.MethodVariableAccess, net.bytebuddy.jar.asm.MethodVisitor, java.util.ArrayList, .List

Adds bytecode for operation like:
Bean varX = (Bean)var1;

The BytecodeAppender that adds this StackManipulation needs to manually increment the number of local variables by one

Field Summary

Modifier and TypeField and Description
private final TypeDescription
Inherited from tools.jackson.module.afterburner.util.bytebuddy.AbstractPropertyStackManipulation:
localVarIndexCalculator

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public StackManipulation.Size
apply(MethodVisitor methodVisitor, Implementation.Context implementationContext)

Implements net.bytebuddy.implementation.bytecode.StackManipulation.apply.

Applies the stack manipulation that is described by this instance.

Inherited from tools.jackson.module.afterburner.util.bytebuddy.AbstractPropertyStackManipulation:
beanArgIndexfieldIndexArgIndexisValidloadFieldIndexArglocalVarIndex

Field Detail

beanClassDescriptionback to summary
private final TypeDescription beanClassDescription

Constructor Detail

AbstractCreateLocalVarStackManipulationback to summary
public AbstractCreateLocalVarStackManipulation(TypeDescription beanClassDescription, AbstractPropertyStackManipulation.LocalVarIndexCalculator localVarIndexCalculator, boolean isForMutator)

Method Detail

applyback to summary
public StackManipulation.Size apply(MethodVisitor methodVisitor, Implementation.Context implementationContext)

Implements net.bytebuddy.implementation.bytecode.StackManipulation.apply.

Doc from net.bytebuddy.implementation.bytecode.StackManipulation.apply.

Applies the stack manipulation that is described by this instance.

Annotations
@Override