Annotation Interface Definition


Defines an identifier used by an Expression. Each identifier can be defined any number of times, either in one Definition or across Definitions.
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    The identifier to define.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    Used to define field identifiers.
    Used to define local variable identifiers.
    Used to define method identifiers.
    boolean
    Whether to remap the method and field identifiers in this annotation.
    Class<?>[]
    Used to define type identifiers, e.g.
  • Element Details

    • id

      String id
      The identifier to define.
    • method

      String[] method
      Used to define method identifiers. The formats accepted match those for @At("INVOKE").
      Default:
      {}
    • field

      String[] field
      Used to define field identifiers. The formats accepted match those for @At("FIELD").
      Default:
      {}
    • type

      Class<?>[] type
      Used to define type identifiers, e.g. for instantiations or instanceof checks.
      Default:
      {}
    • local

      Local[] local
      Used to define local variable identifiers. You *must* specify a type in the annotation. The different discriminators have the same behaviour as when Local is used as a sugar.
      Default:
      {}
    • remap

      boolean remap
      Whether to remap the method and field identifiers in this annotation. The default is inherited from the attached injector.
      Default:
      true