1.1 --- a/emul/src/main/java/java/lang/String.java Wed Dec 19 11:12:04 2012 +0100
1.2 +++ b/emul/src/main/java/java/lang/String.java Fri Jan 11 16:07:55 2013 +0100
1.3 @@ -1491,6 +1491,15 @@
1.4 *
1.5 * @return a hash code value for this object.
1.6 */
1.7 + @JavaScriptBody(args = "self", body =
1.8 + "var h = 0;\n" +
1.9 + "var s = self.toString();\n" +
1.10 + "for (var i = 0; i < s.length; i++) {\n" +
1.11 + " var high = (h >> 16) & 0xffff, low = h & 0xffff;\n" +
1.12 + " h = (((((31 * high) & 0xffff) << 16) >>> 0) + (31 * low) + s.charCodeAt(i)) & 0xffffffff;\n" +
1.13 + "}\n" +
1.14 + "return h;\n"
1.15 + )
1.16 public int hashCode() {
1.17 int h = hash;
1.18 if (h == 0 && length() > 0) {