java.lang.Object
daomephsta.unpick.constantmappers.datadriven.parser.v2.UnpickV2Remapper
All Implemented Interfaces:
UnpickV2Reader.Visitor

public class UnpickV2Remapper extends Object implements UnpickV2Reader.Visitor
Remaps names and descriptors of target method definitions, then makes a delegate visitor visit the remapped target methods. All other visitor methods only delegate to the delegate visitor.
  • Constructor Details

    • UnpickV2Remapper

      public UnpickV2Remapper(Map<String,String> classMappings, Map<MemberKey,String> methodMappings, Map<UnpickV2Remapper.FieldKey,String> fieldMappings, UnpickV2Reader.Visitor delegate)
      Creates a new UnpickV2Remapper.
      Parameters:
      classMappings - a mapping of old class names to new class names.
      methodMappings - a mapping of old method names, owner classes, and descriptors; to new method names.
      fieldMappings - a mapping of old field names and owner classes, and descriptors; to new field names.
      delegate - the visitor that should visit the remapped target method definitions. All other visitor methods only delegate to the delegate visitor.
  • Method Details

    • visitTargetMethodDefinition

      public UnpickV2Reader.TargetMethodDefinitionVisitor visitTargetMethodDefinition(String owner, String name, String descriptor)
      Description copied from interface: UnpickV2Reader.Visitor
      Visits a target method definition (start token target_method).
      Specified by:
      visitTargetMethodDefinition in interface UnpickV2Reader.Visitor
      Parameters:
      owner - the internal name of the method's owner class.
      name - the method's Java identifier.
      descriptor - the method's descriptor.
      Returns:
      an instance of TargetMethodDefinitionVisitor that should visit the parameter and return groups of the target method definition, or null if they should not be visited.
    • startVisit

      public void startVisit()
      Description copied from interface: UnpickV2Reader.Visitor
      Visits the start of the file. This is the first method called.
      Specified by:
      startVisit in interface UnpickV2Reader.Visitor
    • visitLineNumber

      public void visitLineNumber(int lineNumber)
      Description copied from interface: UnpickV2Reader.Visitor
      Visits the line number.
      Specified by:
      visitLineNumber in interface UnpickV2Reader.Visitor
      Parameters:
      lineNumber - the number of the line that is about to be visited.
    • visitSimpleConstantDefinition

      public void visitSimpleConstantDefinition(String group, String owner, String name, String value, String descriptor)
      Description copied from interface: UnpickV2Reader.Visitor
      Visits a simple constant definition (start token constant).
      value and descriptor will either both have a value or both be null.
      Specified by:
      visitSimpleConstantDefinition in interface UnpickV2Reader.Visitor
      Parameters:
      group - the id of the constant's constant group.
      owner - the internal name of the constant's owner class.
      name - the constant's Java identifier.
      value - the constant's value as a String, or null if it is not specified (will be resolved at runtime).
      descriptor - the constant's descriptor, or null if it is not specified (will be resolved at runtime).
    • visitFlagConstantDefinition

      public void visitFlagConstantDefinition(String group, String owner, String name, String value, String descriptor)
      Description copied from interface: UnpickV2Reader.Visitor
      Visits a flag constant definition (start token flag).
      value and descriptor will either both have a value or both be null.
      Specified by:
      visitFlagConstantDefinition in interface UnpickV2Reader.Visitor
      Parameters:
      group - the id of the constant's constant group.
      owner - the internal name of the constant's owner class.
      name - the constant's Java identifier.
      value - the constant's value as a String, or null if it is not specified (will be resolved at runtime).
      descriptor - the constant's descriptor, or null if it is not specified (will be resolved at runtime).
    • endVisit

      public void endVisit()
      Description copied from interface: UnpickV2Reader.Visitor
      Visits the end of the file. This is the last method called.
      Specified by:
      endVisit in interface UnpickV2Reader.Visitor