Package org.spongepowered.asm.mixin.injection.selectors

## Interface ITargetSelectorRemappable

- All Superinterfaces:
    `ITargetSelector`, `ITargetSelectorByName`
  All Known Implementing Classes:
    `MemberInfo`

      public interface ITargetSelectorRemappable
      extends ITargetSelectorByName

  A target selector which can be remapped at compile time via an obfuscation service

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.spongepowered.asm.mixin.injection.selectors.ITargetSelector

      `ITargetSelector.Configure`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `MappingField` | `asFieldMapping()` | Returns this selector as a mapping field
    `IMapping<?>` | `asMapping()` | Returns this selector as a `MappingField` or `MappingMethod`
    `MappingMethod` | `asMethodMapping()` | Returns this selector as a mapping method
    `boolean` | `isClassInitialiser()` | Get whether this selector represents a class initialiser
    `boolean` | `isConstructor()` | Get whether this member represents a constructor
    `boolean` | `isField()` | Get whether this target selector is definitely a field, the output of this method is undefined if `isFullyQualified()` returns false.
    `boolean` | `isFullyQualified()` | Get whether this reference is fully qualified
    `boolean` | `isInitialiser()` | Get whether this selector represents a constructor or class initialiser
    `ITargetSelectorRemappable` | `move​(java.lang.String newOwner)` | Create a new version of this member with a different owner
    `ITargetSelectorRemappable` | `remapUsing​(MappingMethod srgMethod, boolean setOwner)` | Create a remapped version of this member using the supplied method data
    `ITargetSelectorRemappable` | `transform​(java.lang.String newDesc)` | Create a new version of this member with a different descriptor

    - ### Methods inherited from interface org.spongepowered.asm.mixin.injection.selectors.ITargetSelector

      `attach, configure, getMaxMatchCount, getMinMatchCount, match, next, validate`

    - ### Methods inherited from interface org.spongepowered.asm.mixin.injection.selectors.ITargetSelectorByName

      `getDesc, getName, getOwner, matches, toDescriptor`

- - ### Method Detail

    - #### isFullyQualified

          boolean isFullyQualified()

      Get whether this reference is fully qualified
      Returns:
        true if all components of this reference are non-null

    - #### isField

          boolean isField()

      Get whether this target selector is definitely a field, the output of this method is undefined if `isFullyQualified()` returns false.
      Returns:
        true if this is definitely a field

    - #### isConstructor

          boolean isConstructor()

      Get whether this member represents a constructor
      Returns:
        true if member name is `<init>`

    - #### isClassInitialiser

          boolean isClassInitialiser()

      Get whether this selector represents a class initialiser
      Returns:
        true if member name is `<clinit>`

    - #### isInitialiser

          boolean isInitialiser()

      Get whether this selector represents a constructor or class initialiser
      Returns:
        true if member name is `<init>` or `<clinit>`

    - #### asMapping

          IMapping<?> asMapping()

      Returns this selector as a `MappingField` or `MappingMethod`

    - #### asMethodMapping

          MappingMethod asMethodMapping()

      Returns this selector as a mapping method

    - #### asFieldMapping

          MappingField asFieldMapping()

      Returns this selector as a mapping field

    - #### move

          ITargetSelectorRemappable move​(java.lang.String newOwner)

      Create a new version of this member with a different owner
      Parameters:
        `newOwner` - New owner for this member

    - #### transform

          ITargetSelectorRemappable transform​(java.lang.String newDesc)

      Create a new version of this member with a different descriptor
      Parameters:
        `newDesc` - New descriptor for this member

    - #### remapUsing

          ITargetSelectorRemappable remapUsing​(MappingMethod srgMethod,
                                               boolean setOwner)

      Create a remapped version of this member using the supplied method data
      Parameters:
        `srgMethod` - SRG method data to use
        `setOwner` - True to set the owner as well as the name
      Returns:
        New MethodInfo with remapped values