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
  • Method Details

    • 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

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

      ITargetSelectorRemappable transform(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