rt/emul/mini/src/main/java/java/lang/Class.java
branchclosure
changeset 1586 d4ee65642d8d
parent 1585 60dcb3d7a687
child 1607 ace1ff1087e7
     1.1 --- a/rt/emul/mini/src/main/java/java/lang/Class.java	Thu May 22 12:19:52 2014 +0200
     1.2 +++ b/rt/emul/mini/src/main/java/java/lang/Class.java	Thu May 22 15:29:40 2014 +0200
     1.3 @@ -34,6 +34,7 @@
     1.4  import java.lang.reflect.Method;
     1.5  import java.lang.reflect.TypeVariable;
     1.6  import java.net.URL;
     1.7 +import org.apidesign.bck2brwsr.core.Exported;
     1.8  import org.apidesign.bck2brwsr.core.JavaScriptBody;
     1.9  import org.apidesign.bck2brwsr.core.JavaScriptOnly;
    1.10  import org.apidesign.bck2brwsr.emul.reflect.AnnotationImpl;
    1.11 @@ -1743,7 +1744,7 @@
    1.12      native static Class getPrimitiveClass(String type);
    1.13  
    1.14      @JavaScriptBody(args = {}, body = 
    1.15 -        "return this.desiredAssertionStatus ? this.desiredAssertionStatus : false;"
    1.16 +        "return this['desiredAssertionStatus'] ? this['desiredAssertionStatus'] : false;"
    1.17      )
    1.18      public native boolean desiredAssertionStatus();
    1.19      
    1.20 @@ -1770,10 +1771,11 @@
    1.21      )
    1.22      static native Class<?> classFor(Object self);
    1.23      
    1.24 +    @Exported
    1.25      @JavaScriptBody(args = { "self" }, body
    1.26 -            = "if (self.$hashCode) return self.$hashCode;\n"
    1.27 -            + "var h = self.computeHashCode__I ? self.computeHashCode__I() : Math.random() * Math.pow(2, 31);\n"
    1.28 -            + "return self.$hashCode = h & h;"
    1.29 +            = "if (self['$hashCode']) return self['$hashCode'];\n"
    1.30 +            + "var h = self['computeHashCode__I'] ? self['computeHashCode__I']() : Math.random() * Math.pow(2, 31);\n"
    1.31 +            + "return self['$hashCode'] = h & h;"
    1.32      )
    1.33      static native int defaultHashCode(Object self);
    1.34  
    1.35 @@ -1802,6 +1804,7 @@
    1.36      )
    1.37      static native int toJS();
    1.38  
    1.39 +    @Exported
    1.40      @JavaScriptOnly(name = "activate__Ljava_io_Closeable_2Lorg_apidesign_html_boot_spi_Fn$Presenter_2", value = "function() {\n"
    1.41          + "  return vm.org_apidesign_bck2brwsr_emul_lang_System(false).activate__Ljava_io_Closeable_2();"
    1.42          + "}\n"
    1.43 @@ -1822,6 +1825,7 @@
    1.44      @JavaScriptBody(args = {"o"}, body = "return o ? o.toString() : null;")
    1.45      private static native String msg(Object o);
    1.46  
    1.47 +    @Exported
    1.48      @JavaScriptOnly(name = "bck2BrwsrThrwrbl", value = "c.bck2BrwsrCnvrt__Ljava_lang_Object_2Ljava_lang_Object_2")
    1.49      private static void bck2BrwsrCnvrtVM() {
    1.50      }