All Superinterfaces:
IDElement, IDExpression, IInstructionOperand
All Known Subinterfaces:
IDInstanceField, IDStaticField

public interface IDField extends IDExpression
dexdec IR generic interface for field elements, that is, static fields and instance fields. Two pseudo field exists: the instance field for array.length, and the static field for Type.class.

Refer to IDInstanceField and IDStaticField.

  • Method Details

    • getIndex

      IDIndex getIndex()
      Retrieve the field index in the corresponding dex unit, if it is an actual field (not a pseudo field).
      Returns:
    • getFieldname

      String getFieldname()
      Retrieve the field simple name. Example: field1.
      Returns:
      the field simple name, null if this object represents a pseudo-field
    • getNativeField

      IDexField getNativeField(IDGlobalContext gctx)
      Retrieve the corresponding dex field object.
      Parameters:
      gctx - global IR context
      Returns:
      the field object, null if this object represents a pseudo-field
    • duplicate

      IDField duplicate()
      Description copied from interface: IDElement
      Duplicate this element.
      Specified by:
      duplicate in interface IDElement
      Specified by:
      duplicate in interface IDExpression
      Returns:
      a deep copy of this element; the type of the duplicated element should be the same as this element's type