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
`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