/** Creates the native Array object */ static ESObject create(Global resin) { Native nativeArray = new NativeArray("Array", NEW, 1); ESArray proto = new ESArray(); proto.prototype = resin.objProto; NativeWrapper array = new NativeWrapper(resin, nativeArray, proto, ESThunk.ARRAY_THUNK); resin.arrayProto = proto; put(proto, "join", JOIN, 1); put(proto, "toString", TO_STRING, 0); put(proto, "reverse", REVERSE, 0); put(proto, "sort", SORT, 0); // js1.2 put(proto, "concat", CONCAT, 0); put(proto, "pop", POP, 0); put(proto, "push", PUSH, 0); put(proto, "shift", SHIFT, 0); put(proto, "unshift", UNSHIFT, 0); put(proto, "slice", SLICE, 2); put(proto, "splice", SPLICE, 0); proto.setClean(); array.setClean(); return array; }