Package org.stianloader.micromixin.transform.api

## Interface InjectionPointSelectorFactory.InjectionPointSelectorProvider

All Known Implementing Classes:
  `HeadInjectionPointSelector`, `LoadInjectionPointSelector`, `ReturnInjectionPointSelector`, `StoreInjectionPointSelector`, `TailInjectionPointSelector`

Enclosing class:
  InjectionPointSelectorFactory

    public static interface InjectionPointSelectorFactory.InjectionPointSelectorProvider

### Method Summary

All Methods Instance Methods Abstract Methods
`InjectionPointSelector` `create​(java.util.List<java.lang.String> args, InjectionPointConstraint[] constraints)` Create an `InjectionPointSelector` that selects the instructions with the provided constraints.
`java.util.Set<java.lang.String>` `getAllNames()`
`java.lang.String` `getFullyQualifiedName()`

### Method Detail

#### getFullyQualifiedName

    @NotNull
    java.lang.String getFullyQualifiedName()

#### getAllNames

    @NotNull
    java.util.Set<java.lang.String> getAllNames()

#### create

    @NotNull
    @AvailableSince("0.7.0-a20241008")
    @Contract(pure=true)
    InjectionPointSelector create​(@Nullable
                                  java.util.List<java.lang.String> args,
                                  @NotNull
                                  InjectionPointConstraint[] constraints)

Create an `InjectionPointSelector` that selects the instructions with the provided constraints. The selector is optionally further constrained by the arguments defined in the `@At` annotation.

Parameters:
  `args` - The arguments defined in the `@At` annotation, null if no arguments were defined. May be empty.
  `constraints` - The constraints defined in the `@At` annotation. Any instruction matched by the selector must match all constraints. These constraints can limit the selected opcodes, constrain on `MethodInsnNode.name` and more.
Returns:
  The selector using the requested semantics.
Since:
  0.7.0-a20241008