Class FieldConstant
- java.lang.Object
-
- net.bytebuddy.implementation.bytecode.constant.FieldConstant
-
- All Implemented Interfaces:
StackManipulation
public class FieldConstant extends java.lang.Object implements StackManipulation
Represents aField
constant for a given type.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
FieldConstant.Cached
A cached version of aFieldConstant
.-
Nested classes/interfaces inherited from interface net.bytebuddy.implementation.bytecode.StackManipulation
StackManipulation.Compound, StackManipulation.Illegal, StackManipulation.Size, StackManipulation.Trivial
-
-
Field Summary
Fields Modifier and Type Field Description private FieldDescription.InDefinedShape
fieldDescription
The field to be represent as aField
.
-
Constructor Summary
Constructors Constructor Description FieldConstant(FieldDescription.InDefinedShape fieldDescription)
Creates a new field constant.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StackManipulation.Size
apply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext)
Applies the stack manipulation that is described by this instance.StackManipulation
cached()
Returns a cached version of this field constant.boolean
equals(java.lang.Object other)
int
hashCode()
boolean
isValid()
Determines if this stack manipulation is valid.
-
-
-
Field Detail
-
fieldDescription
private final FieldDescription.InDefinedShape fieldDescription
The field to be represent as aField
.
-
-
Constructor Detail
-
FieldConstant
public FieldConstant(FieldDescription.InDefinedShape fieldDescription)
Creates a new field constant.- Parameters:
fieldDescription
- The field to be represent as aField
.
-
-
Method Detail
-
cached
public StackManipulation cached()
Returns a cached version of this field constant.- Returns:
- A cached version of this field constant.
-
isValid
public boolean isValid()
Determines if this stack manipulation is valid.- Specified by:
isValid
in interfaceStackManipulation
- Returns:
- If
false
, this manipulation cannot be applied and should throw an exception.
-
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.
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object other)
- Overrides:
equals
in classjava.lang.Object
-
-