1.1 --- a/emul/src/main/resources/org/apidesign/vm4brwsr/emul/java_lang_String.js Tue Dec 04 11:21:10 2012 +0100
1.2 +++ b/emul/src/main/resources/org/apidesign/vm4brwsr/emul/java_lang_String.js Tue Dec 04 12:06:27 2012 +0100
1.3 @@ -1,2 +1,2 @@
1.4 // initialize methods on String constants
1.5 -java_lang_Object(false);
1.6 +java_lang_String(false);
2.1 --- a/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java Tue Dec 04 11:21:10 2012 +0100
2.2 +++ b/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java Tue Dec 04 12:06:27 2012 +0100
2.3 @@ -1158,7 +1158,7 @@
2.4 if (cnt++ > 0) {
2.5 out.append(",\n");
2.6 }
2.7 - out.append(attr).append(attrType).append(" : ").append(value);
2.8 + out.append(attr).append("__").append(attrType).append(" : ").append(value);
2.9 }
2.10 };
2.11 ap.parse(data, cd);
3.1 --- a/vm/src/main/java/org/apidesign/vm4brwsr/GenJS.java Tue Dec 04 11:21:10 2012 +0100
3.2 +++ b/vm/src/main/java/org/apidesign/vm4brwsr/GenJS.java Tue Dec 04 12:06:27 2012 +0100
3.3 @@ -91,19 +91,20 @@
3.4 );
3.5 }
3.6 }
3.7 - for (String resource : js.scripts.toArray()) {
3.8 - while (resource.startsWith("/")) {
3.9 - resource = resource.substring(1);
3.10 - }
3.11 - InputStream emul = l.getResourceAsStream(resource);
3.12 - if (emul == null) {
3.13 - throw new IOException("Can't find " + resource);
3.14 - }
3.15 - readResource(emul, out);
3.16 - }
3.17 - js.scripts = new StringArray();
3.18 }
3.19
3.20 + for (String resource : js.scripts.toArray()) {
3.21 + while (resource.startsWith("/")) {
3.22 + resource = resource.substring(1);
3.23 + }
3.24 + InputStream emul = l.getResourceAsStream(resource);
3.25 + if (emul == null) {
3.26 + throw new IOException("Can't find " + resource);
3.27 + }
3.28 + readResource(emul, out);
3.29 + }
3.30 + js.scripts = new StringArray();
3.31 +
3.32 StringArray toInit = StringArray.asList(js.references.toArray());
3.33 toInit.reverse();
3.34
4.1 --- a/vm/src/test/java/org/apidesign/vm4brwsr/ClassTest.java Tue Dec 04 11:21:10 2012 +0100
4.2 +++ b/vm/src/test/java/org/apidesign/vm4brwsr/ClassTest.java Tue Dec 04 12:06:27 2012 +0100
4.3 @@ -33,7 +33,7 @@
4.4 }
4.5
4.6 @Test public void jsSuperClassEqualsGetSuperclass() throws Exception {
4.7 - assertExec("Classes are equal", Classes.class, "equalsClassesOfExceptionsZ", Double.valueOf(1.0));
4.8 + assertExec("Classes are equal", Classes.class, "equalsClassesOfExceptions__Z", Double.valueOf(1.0));
4.9 }
4.10
4.11 @Test public void classesAreDifferent() {
4.12 @@ -41,47 +41,47 @@
4.13 }
4.14
4.15 @Test public void jsClassesAreDifferent() throws Exception {
4.16 - assertExec("Classes are not equal", Classes.class, "differenceInClassesZ", Double.valueOf(1.0));
4.17 + assertExec("Classes are not equal", Classes.class, "differenceInClasses__Z", Double.valueOf(1.0));
4.18 }
4.19
4.20 @Test public void javaInstanceName() throws Exception {
4.21 assertEquals(Classes.classForInstance(), "java.io.IOException");
4.22 }
4.23 @Test public void jsInstanceName() throws Exception {
4.24 - assertExec("I/O name", Classes.class, "classForInstanceLjava_lang_String", "java.io.IOException");
4.25 + assertExec("I/O name", Classes.class, "classForInstance__Ljava_lang_String_2", "java.io.IOException");
4.26 }
4.27 @Test public void javaName() throws Exception {
4.28 assertEquals(Classes.name(), "java.io.IOException");
4.29 }
4.30 @Test public void jsName() throws Exception {
4.31 - assertExec("I/O name", Classes.class, "nameLjava_lang_String", "java.io.IOException");
4.32 + assertExec("I/O name", Classes.class, "name__Ljava_lang_String_2", "java.io.IOException");
4.33 }
4.34 @Test public void javaSimpleName() throws Exception {
4.35 assertEquals(Classes.simpleName(), "IOException");
4.36 }
4.37 @Test public void jsGetsSimpleName() throws Exception {
4.38 - assertExec("I/O simple name", Classes.class, "simpleNameLjava_lang_String", "IOException");
4.39 + assertExec("I/O simple name", Classes.class, "simpleName__Ljava_lang_String_2", "IOException");
4.40 }
4.41 @Test public void javaCanonicalName() {
4.42 assertEquals(Classes.canonicalName(), "java.io.IOException");
4.43 }
4.44 @Test public void jsCanonicalName() throws Exception {
4.45 - assertExec("I/O simple name", Classes.class, "canonicalNameLjava_lang_String", "java.io.IOException");
4.46 + assertExec("I/O simple name", Classes.class, "canonicalName__Ljava_lang_String_2", "java.io.IOException");
4.47 }
4.48 @Test public void javaNewInstance() throws Exception {
4.49 assertTrue(Classes.newInstance());
4.50 }
4.51 @Test public void jsNewInstance() throws Exception {
4.52 - assertExec("Check new instance", Classes.class, "newInstanceZ", Double.valueOf(1));
4.53 + assertExec("Check new instance", Classes.class, "newInstance__Z", Double.valueOf(1));
4.54 }
4.55 @Test public void jsAnnotation() throws Exception {
4.56 - assertExec("Check class annotation", Classes.class, "getMarkerI", Double.valueOf(10));
4.57 + assertExec("Check class annotation", Classes.class, "getMarker__I", Double.valueOf(10));
4.58 }
4.59 @Test public void jsStringAnnotation() throws Exception {
4.60 - assertExec("Check class annotation", Classes.class, "getNamerLjava_lang_StringZ", "my text", true);
4.61 + assertExec("Check class annotation", Classes.class, "getNamer__Ljava_lang_String_2Z", "my text", true);
4.62 }
4.63 @Test public void jsStringAnnotationFromArray() throws Exception {
4.64 - assertExec("Check class annotation", Classes.class, "getNamerLjava_lang_StringZ", "my text", false);
4.65 + assertExec("Check class annotation", Classes.class, "getNamer__Ljava_lang_String_2Z", "my text", false);
4.66 }
4.67
4.68 private static CharSequence codeSeq;