Enum Class FieldAccess

java.lang.Object
java.lang.Enum<FieldAccess>
net.bytebuddy.implementation.bytecode.member.FieldAccess
All Implemented Interfaces:
Serializable, Comparable<FieldAccess>, Constable

public enum FieldAccess extends Enum<FieldAccess>
An access representation to a given field.
  • Enum Constant Details

    • STATIC

      public static final FieldAccess STATIC
      The representation of field access to a static field.
    • INSTANCE

      public static final FieldAccess INSTANCE
      The representation of field access to an instance field.
  • Field Details

    • putterOpcode

      private final int putterOpcode
      The opcode for setting a field value.
    • getterOpcode

      private final int getterOpcode
      The opcode for getting a field value.
    • targetSizeChange

      private final int targetSizeChange
      The amount of operand slots this field access operation consumes when it is applied before eventually adding new values onto the operand stack.
  • Constructor Details

    • FieldAccess

      private FieldAccess(int putterOpcode, int getterOpcode, StackSize targetSizeChange)
      Creates a new field access.
      Parameters:
      putterOpcode - The opcode for setting a field value.
      getterOpcode - The opcode for getting a field value.
      targetSizeChange - The amount of operand slots this field access operation consumes when it is applied before eventually adding new values onto the operand stack.
  • Method Details

    • values

      public static FieldAccess[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static FieldAccess valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • forEnumeration

      public static StackManipulation forEnumeration(EnumerationDescription enumerationDescription)
      Creates an accessor to read an enumeration value.
      Parameters:
      enumerationDescription - The description of the enumeration.
      Returns:
      A stack manipulation for reading the enumeration.
    • forField

      public static FieldAccess.Defined forField(FieldDescription.InDefinedShape fieldDescription)
      Creates a field access representation for a given field.
      Parameters:
      fieldDescription - The field to be accessed.
      Returns:
      A field access definition for the given field.
    • forField

      public static FieldAccess.Defined forField(FieldDescription fieldDescription)
      Creates a field access representation for a given field. If the field's return type derives from its declared shape, the value is additionally casted to the generically resolved field.
      Parameters:
      fieldDescription - The field to be accessed.
      Returns:
      A field access definition for the given field.