Package org.spongepowered.asm.mixin.injection

## Enum InjectionPoint.Specifier

- java.lang.Object
- - java.lang.Enum<InjectionPoint.Specifier>
  - - org.spongepowered.asm.mixin.injection.InjectionPoint.Specifier

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Comparable<InjectionPoint.Specifier>`
  Enclosing class:
    InjectionPoint

      public static enum InjectionPoint.Specifier
      extends java.lang.Enum<InjectionPoint.Specifier>

  Additional specifier for injection points. `Specifiers` can be supplied in `At` annotations by including a colon (`:`) character followed by the specifier type (case-sensitive), eg:

  >     @At(value = "INVOKE:LAST", ... )

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---
    `ALL` | Use all instructions from the query result.
    `DEFAULT` | Use the default setting as defined by the consumer.
    `FIRST` | Use the first instruction from the query result.
    `LAST` | Use the last instruction from the query result.
    `ONE` | The query must return exactly one instruction, if it returns more than one instruction this should be considered a fail-fast error state and a runtime exception will be thrown.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static InjectionPoint.Specifier` | `valueOf​(java.lang.String name)` | Returns the enum constant of this type with the specified name.
    `static InjectionPoint.Specifier[]` | `values()` | Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### ALL

          public static final InjectionPoint.Specifier ALL

      Use all instructions from the query result.

    - #### FIRST

          public static final InjectionPoint.Specifier FIRST

      Use the first instruction from the query result.

    - #### LAST

          public static final InjectionPoint.Specifier LAST

      Use the last instruction from the query result.

    - #### ONE

          public static final InjectionPoint.Specifier ONE

      The query must return exactly one instruction, if it returns more than one instruction this should be considered a fail-fast error state and a runtime exception will be thrown.

    - #### DEFAULT

          public static final InjectionPoint.Specifier DEFAULT

      Use the default setting as defined by the consumer. For slices this is `FIRST`, for all other consumers this is `ALL`

  - ### Method Detail

    - #### values

          public static InjectionPoint.Specifier[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (InjectionPoint.Specifier c : InjectionPoint.Specifier.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static InjectionPoint.Specifier valueOf​(java.lang.String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (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:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null