[Retrace] Add StringRetrace.create overload for reusing retracer

Bug: 195161786
Change-Id: I47e05f91fd90d221f6ba7366b3a0266e1fe50d2a
diff --git a/src/main/java/com/android/tools/r8/retrace/StringRetrace.java b/src/main/java/com/android/tools/r8/retrace/StringRetrace.java
index 4502782..f6636c1 100644
--- a/src/main/java/com/android/tools/r8/retrace/StringRetrace.java
+++ b/src/main/java/com/android/tools/r8/retrace/StringRetrace.java
@@ -31,22 +31,42 @@
   }
 
   /**
-   * Default entry point for creating a retrace designed for string input and output.
+   * Default entry point for creating a retracer designed for string input and output.
    *
    * @param command the command with information about creating the StringRetrace
    * @return a StringRetrace object
    */
   public static StringRetrace create(RetraceOptions command) {
-    Retracer retracer =
-        Retracer.createDefault(command.getProguardMapProducer(), command.getDiagnosticsHandler());
-    return new StringRetrace(
-        StackTraceLineParser.createRegularExpressionParser(command.getRegularExpression()),
-        StackTraceElementProxyRetracer.createDefault(retracer),
+    return create(
+        Retracer.createDefault(command.getProguardMapProducer(), command.getDiagnosticsHandler()),
         command.getDiagnosticsHandler(),
+        command.getRegularExpression(),
         command.isVerbose());
   }
 
   /**
+   * Entry point for creating a retracer designed for string input and output where the mapping file
+   * has already been parsed.
+   *
+   * @param retracer a loaded retracer with parsed mapping
+   * @param diagnosticsHandler a diagnosticshandler for emitting information
+   * @param regularExpression the regular expression to use for identifying information in strings
+   * @param isVerbose specify to emit verbose information
+   * @return a StringRetrace object
+   */
+  public static StringRetrace create(
+      Retracer retracer,
+      DiagnosticsHandler diagnosticsHandler,
+      String regularExpression,
+      boolean isVerbose) {
+    return new StringRetrace(
+        StackTraceLineParser.createRegularExpressionParser(regularExpression),
+        StackTraceElementProxyRetracer.createDefault(retracer),
+        diagnosticsHandler,
+        isVerbose);
+  }
+
+  /**
    * Retraces a list of stack-trace lines and returns a list. Ambiguous and inline frames will be
    * appended automatically to the retraced string.
    *