Package org.spongepowered.asm.mixin.injection

## Annotation Type Desc

-     @Documented
      @Retention(RUNTIME)
      public @interface Desc

  `Desc` is a metadata annotation to specify a specific class member without the potential of typos.

  When matching to fields, `args()` is ignored. The descriptor of the field is solely defined by `ret()`.

  It is generally advisable to fill in all information, as otherwise matching might happen in an unintended manner.

- - ### Required Element Summary

    Required Elements
    Modifier and Type | Required Element | Description
    --- | --- | ---
    `java.lang.String` | `value` | The name of the member to match.

  - ### Optional Element Summary

    Optional Elements
    Modifier and Type | Optional Element | Description
    --- | --- | ---
    `java.lang.Class<?>[]` | `args` | The arguments of the matched methods.
    `java.lang.Class<?>` | `owner` | The owner of the member, or the type from which a call is made.
    `java.lang.Class<?>` | `ret` | The return type of the matched member.

- - ### Element Detail

    - #### value

          java.lang.String value

      The name of the member to match. Matching happens in a case-sensitive manner.
      Returns:
        The name of the member

  - - #### args

          java.lang.Class<?>[] args

      The arguments of the matched methods. Ignored when matching fields.
      Returns:
        The method's arguments.
      Default:
        {}

  - - #### owner

          java.lang.Class<?> owner

      The owner of the member, or the type from which a call is made.
      Returns:
        The owner class
      Default:
        void.class

  - - #### ret

          java.lang.Class<?> ret

      The return type of the matched member.
      Returns:
        The return type
      Default:
        void.class