@@ -37,13 +37,20 @@ private static void registerNatives() {
3737 * Replacement for System.currentTimeMillis()
3838 */
3939 @ Replace ( "java/lang/System.currentTimeMillis()J" )
40- @ Import ( module = "System" , name = "currentTimeMillis" , js = "() => BigInt(Date.now())" )
40+ @ Import ( module = "System" , name = "currentTimeMillis" , js = "()=> BigInt(Date.now())" )
4141 static native long currentTimeMillis ();
4242
43+ /**
44+ * Replacement for System.nanoTime()
45+ */
46+ @ Replace ( "java/lang/System.nanoTime()J" )
47+ @ Import ( module = "System" , name = "nanoTime" , js = "()=>BigInt(Date.now()*1000000)" )
48+ static native long nanoTime ();
49+
4350 /**
4451 * Replacement for {@link System#arraycopy(Object, int, Object, int, int)}
4552 */
46- @ Import ( js = "(src,srcPos,dest,destPos,length) => {" + //
53+ @ Import ( js = "(src,srcPos,dest,destPos,length)=> {" + //
4754 "if(destPos<srcPos){" + //
4855 "for (var i=0;i<length;i++)dest[i+destPos]=src[i+srcPos];" + //
4956 "}else{" + //
@@ -56,7 +63,7 @@ private static void registerNatives() {
5663 /**
5764 * Replacement for {@link System#identityHashCode(Object)}
5865 */
59- @ Import ( module = "NonGC" , name = "identityHashCode" , js = "(o) => {" //
66+ @ Import ( module = "NonGC" , name = "identityHashCode" , js = "(o)=> {" //
6067 + "var h=o[1];" //
6168 + "while(h==0){" //
6269 + "o[1]=h=Math.round((Math.random()-0.5)*0xffff);" //
0 commit comments