Class ArrayFactory.ArrayCreator.ForReferenceType
java.lang.Object
net.bytebuddy.implementation.bytecode.StackManipulation.AbstractBase
net.bytebuddy.implementation.bytecode.collection.ArrayFactory.ArrayCreator.ForReferenceType
- All Implemented Interfaces:
ArrayFactory.ArrayCreator
,StackManipulation
- Enclosing interface:
- ArrayFactory.ArrayCreator
@Enhance
public static class ArrayFactory.ArrayCreator.ForReferenceType
extends StackManipulation.AbstractBase
implements ArrayFactory.ArrayCreator
An array creator implementation for reference types.
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.bytebuddy.implementation.bytecode.collection.ArrayFactory.ArrayCreator
ArrayFactory.ArrayCreator.ForPrimitiveType, ArrayFactory.ArrayCreator.ForReferenceType
Nested classes/interfaces inherited from interface net.bytebuddy.implementation.bytecode.StackManipulation
StackManipulation.AbstractBase, StackManipulation.Compound, StackManipulation.Illegal, StackManipulation.Simple, StackManipulation.Size, StackManipulation.Trivial
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final String
The internal name of this array's non-primitive component type.Fields inherited from interface net.bytebuddy.implementation.bytecode.collection.ArrayFactory.ArrayCreator
ARRAY_CREATION_SIZE_CHANGE
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
ForReferenceType
(TypeDescription referenceType) Creates a new array creator for a reference type. -
Method Summary
Modifier and TypeMethodDescriptionapply
(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext) Applies the stack manipulation that is described by this instance.int
The opcode instruction for storing a value of the component type inside an array.Methods inherited from class net.bytebuddy.implementation.bytecode.StackManipulation.AbstractBase
isValid
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.bytebuddy.implementation.bytecode.StackManipulation
isValid
-
Field Details
-
internalTypeName
The internal name of this array's non-primitive component type.
-
-
Constructor Details
-
ForReferenceType
Creates a new array creator for a reference type.- Parameters:
referenceType
- The internal name of this array's non-primitive component type.
-
-
Method Details
-
apply
public StackManipulation.Size apply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext) Applies the stack manipulation that is described by this instance.- Specified by:
apply
in interfaceStackManipulation
- Parameters:
methodVisitor
- The method visitor used to write the method implementation to.implementationContext
- The context of the current implementation.- Returns:
- The changes to the size of the operand stack that are implied by this stack manipulation.
-
getStorageOpcode
public int getStorageOpcode()The opcode instruction for storing a value of the component type inside an array.- Specified by:
getStorageOpcode
in interfaceArrayFactory.ArrayCreator
- Returns:
- The correct storage opcode for the represented type.
-