diff -r 86fa8cc5a44e -r e5fe6bfca579 rt/emul/mini/src/main/java/java/lang/String.java
--- a/rt/emul/mini/src/main/java/java/lang/String.java Wed Feb 27 23:40:18 2013 +0100
+++ b/rt/emul/mini/src/main/java/java/lang/String.java Thu Apr 04 09:46:06 2013 +0200
@@ -2220,9 +2220,19 @@
* replacement
is null
.
* @since 1.5
*/
- public String replace(CharSequence target, CharSequence replacement) {
- throw new UnsupportedOperationException("This one should be supported, but without dep on rest of regexp");
- }
+ @JavaScriptBody(args = { "target", "replacement" }, body =
+ "var s = this.toString();\n"
+ + "target = target.toString();\n"
+ + "replacement = replacement.toString();\n"
+ + "for (;;) {\n"
+ + " var ret = s.replace(target, replacement);\n"
+ + " if (ret === s) {\n"
+ + " return ret;\n"
+ + " }\n"
+ + " s = ret;\n"
+ + "}"
+ )
+ public native String replace(CharSequence target, CharSequence replacement);
/**
* Splits this string around matches of the given