rt/emul/mini/src/main/resources/org/apidesign/vm4brwsr/emul/lang/java_lang_String.js
author Jaroslav Tulach <jaroslav.tulach@apidesign.org>
Wed, 30 Oct 2013 17:15:23 +0100
changeset 1392 da9e5973e699
parent 1330 740712318ab3
child 1479 be34f84e9d9f
child 1513 ba912ef24b27
permissions -rw-r--r--
Adopting to JDK8's Nashorn differences. Most tests should now pass with Nashorn now.
     1 // initialize methods on arrays and String constants
     2 vm.java_lang_reflect_Array(false);
     3 vm.java_lang_String(false);
     4 
     5 Array.at = function(arr, indx, value) {
     6   if (indx < 0 || indx >= arr.length) {
     7       var e = vm.java_lang_ArrayIndexOutOfBoundsException(true);
     8       e.constructor.cons__VLjava_lang_String_2.call(e, indx.toString());
     9       throw e;
    10   }
    11   if (arguments.length === 3) {
    12       arr[indx] = value;
    13   }
    14   return arr[indx];
    15 };
    16 Array.prototype.getClass__Ljava_lang_Class_2 = function() {
    17   return vm.java_lang_Class(false).defineArray__Ljava_lang_Class_2Ljava_lang_String_2(this.jvmName);
    18 };
    19 Array.prototype.clone__Ljava_lang_Object_2 = function() {
    20   var s = this.length;
    21   var ret = new Array(s);
    22   for (var i = 0; i < s; i++) {
    23       ret[i] = this[i];
    24   }
    25   ret.jvmName = this.jvmName;
    26   return ret;
    27 };