public StringReference mirrorOfStringLiteral(String s, ThrowableComputable<StringReference, EvaluateException> generator)
    throws EvaluateException {
    StringReference reference = myStringLiteralCache.get(s);
    if (reference != null && !reference.isCollected()) {
      return reference;
    }
    reference = generator.compute();
    myStringLiteralCache.put(s, reference);
    return reference;
  }
public StringReference mirrorOfStringLiteral(String s, ThrowableComputable<StringReference, EvaluateException> generator)