33// found in the LICENSE file.
44
55var $arrayConcat ;
6+ var $arrayJoin ;
67var $arrayPush ;
78var $arrayPop ;
89var $arrayShift ;
910var $arraySlice ;
1011var $arraySplice ;
1112var $arrayUnshift ;
13+ var $innerArrayForEach ;
14+ var $innerArrayEvery ;
15+ var $innerArrayFilter ;
16+ var $innerArrayIndexOf ;
17+ var $innerArrayLastIndexOf ;
18+ var $innerArrayMap ;
19+ var $innerArrayReverse ;
20+ var $innerArraySome ;
21+ var $innerArraySort ;
1222
1323( function ( global , utils ) {
1424
@@ -23,20 +33,10 @@ var GlobalArray = global.Array;
2333var InternalArray = utils . InternalArray ;
2434var InternalPackedArray = utils . InternalPackedArray ;
2535
26- var Delete ;
2736var MathMin ;
28- var ObjectHasOwnProperty ;
29- var ObjectIsFrozen ;
30- var ObjectIsSealed ;
31- var ObjectToString ;
3237
3338utils . Import ( function ( from ) {
34- Delete = from . Delete ;
3539 MathMin = from . MathMin ;
36- ObjectHasOwnProperty = from . ObjectHasOwnProperty ;
37- ObjectIsFrozen = from . ObjectIsFrozen ;
38- ObjectIsSealed = from . ObjectIsSealed ;
39- ObjectToString = from . ObjectToString ;
4040} ) ;
4141
4242// -------------------------------------------------------------------
@@ -392,7 +392,7 @@ function ArrayToString() {
392392 func = array . join ;
393393 }
394394 if ( ! IS_SPEC_FUNCTION ( func ) ) {
395- return % _CallFunction ( array , ObjectToString ) ;
395+ return % _CallFunction ( array , $objectToString ) ;
396396 }
397397 return % _CallFunction ( array , func ) ;
398398}
@@ -467,7 +467,7 @@ function ArrayPop() {
467467
468468 n -- ;
469469 var value = array [ n ] ;
470- Delete ( array , $toName ( n ) , true ) ;
470+ $delete ( array , $toName ( n ) , true ) ;
471471 array . length = n ;
472472 return value ;
473473}
@@ -645,7 +645,7 @@ function ArrayShift() {
645645 return ;
646646 }
647647
648- if ( ObjectIsSealed ( array ) ) throw MakeTypeError ( kArrayFunctionsOnSealed ) ;
648+ if ( $objectIsSealed ( array ) ) throw MakeTypeError ( kArrayFunctionsOnSealed ) ;
649649
650650 if ( % IsObserved ( array ) )
651651 return ObservedArrayShift . call ( array , len ) ;
@@ -696,7 +696,7 @@ function ArrayUnshift(arg1) { // length == 1
696696 var num_arguments = % _ArgumentsLength ( ) ;
697697
698698 if ( len > 0 && UseSparseVariant ( array , len , IS_ARRAY ( array ) , len ) &&
699- ! ObjectIsSealed ( array ) ) {
699+ ! $objectIsSealed ( array ) ) {
700700 SparseMove ( array , 0 , 0 , len , num_arguments ) ;
701701 } else {
702702 SimpleMove ( array , 0 , 0 , len , num_arguments ) ;
@@ -842,9 +842,9 @@ function ArraySplice(start, delete_count) {
842842 deleted_elements . length = del_count ;
843843 var num_elements_to_add = num_arguments > 2 ? num_arguments - 2 : 0 ;
844844
845- if ( del_count != num_elements_to_add && ObjectIsSealed ( array ) ) {
845+ if ( del_count != num_elements_to_add && $objectIsSealed ( array ) ) {
846846 throw MakeTypeError ( kArrayFunctionsOnSealed ) ;
847- } else if ( del_count > 0 && ObjectIsFrozen ( array ) ) {
847+ } else if ( del_count > 0 && $objectIsFrozen ( array ) ) {
848848 throw MakeTypeError ( kArrayFunctionsOnFrozen ) ;
849849 }
850850
@@ -1582,7 +1582,7 @@ var unscopables = {
15821582 DONT_ENUM | READ_ONLY ) ;
15831583
15841584// Set up non-enumerable functions on the Array object.
1585- utils . InstallFunctions ( GlobalArray , DONT_ENUM , [
1585+ $installFunctions ( GlobalArray , DONT_ENUM , [
15861586 "isArray" , ArrayIsArray
15871587] ) ;
15881588
@@ -1603,7 +1603,7 @@ var getFunction = function(name, jsBuiltin, len) {
16031603// set their names.
16041604// Manipulate the length of some of the functions to meet
16051605// expectations set by ECMA-262 or Mozilla.
1606- utils . InstallFunctions ( GlobalArray . prototype , DONT_ENUM , [
1606+ $installFunctions ( GlobalArray . prototype , DONT_ENUM , [
16071607 "toString" , getFunction ( "toString" , ArrayToString ) ,
16081608 "toLocaleString" , getFunction ( "toLocaleString" , ArrayToLocaleString ) ,
16091609 "join" , getFunction ( "join" , ArrayJoin ) ,
@@ -1632,7 +1632,7 @@ utils.InstallFunctions(GlobalArray.prototype, DONT_ENUM, [
16321632// The internal Array prototype doesn't need to be fancy, since it's never
16331633// exposed to user code.
16341634// Adding only the functions that are actually used.
1635- utils . SetUpLockedPrototype ( InternalArray , GlobalArray ( ) , [
1635+ $setUpLockedPrototype ( InternalArray , GlobalArray ( ) , [
16361636 "concat" , getFunction ( "concat" , ArrayConcatJS ) ,
16371637 "indexOf" , getFunction ( "indexOf" , ArrayIndexOf ) ,
16381638 "join" , getFunction ( "join" , ArrayJoin ) ,
@@ -1642,35 +1642,30 @@ utils.SetUpLockedPrototype(InternalArray, GlobalArray(), [
16421642 "splice" , getFunction ( "splice" , ArraySplice )
16431643] ) ;
16441644
1645- utils . SetUpLockedPrototype ( InternalPackedArray , GlobalArray ( ) , [
1645+ $setUpLockedPrototype ( InternalPackedArray , GlobalArray ( ) , [
16461646 "join" , getFunction ( "join" , ArrayJoin ) ,
16471647 "pop" , getFunction ( "pop" , ArrayPop ) ,
16481648 "push" , getFunction ( "push" , ArrayPush ) ,
16491649 "shift" , getFunction ( "shift" , ArrayShift )
16501650] ) ;
16511651
1652- // -------------------------------------------------------------------
1653- // Exports
1654-
1655- utils . Export ( function ( to ) {
1656- to . ArrayJoin = ArrayJoin ;
1657- to . InnerArrayEvery = InnerArrayEvery ;
1658- to . InnerArrayFilter = InnerArrayFilter ;
1659- to . InnerArrayForEach = InnerArrayForEach ;
1660- to . InnerArrayIndexOf = InnerArrayIndexOf ;
1661- to . InnerArrayLastIndexOf = InnerArrayLastIndexOf ;
1662- to . InnerArrayMap = InnerArrayMap ;
1663- to . InnerArrayReverse = InnerArrayReverse ;
1664- to . InnerArraySome = InnerArraySome ;
1665- to . InnerArraySort = InnerArraySort ;
1666- } ) ;
1667-
16681652$arrayConcat = ArrayConcatJS ;
1653+ $arrayJoin = ArrayJoin ;
16691654$arrayPush = ArrayPush ;
16701655$arrayPop = ArrayPop ;
16711656$arrayShift = ArrayShift ;
16721657$arraySlice = ArraySlice ;
16731658$arraySplice = ArraySplice ;
16741659$arrayUnshift = ArrayUnshift ;
16751660
1661+ $innerArrayEvery = InnerArrayEvery ;
1662+ $innerArrayFilter = InnerArrayFilter ;
1663+ $innerArrayForEach = InnerArrayForEach ;
1664+ $innerArrayIndexOf = InnerArrayIndexOf ;
1665+ $innerArrayLastIndexOf = InnerArrayLastIndexOf ;
1666+ $innerArrayMap = InnerArrayMap ;
1667+ $innerArrayReverse = InnerArrayReverse ;
1668+ $innerArraySome = InnerArraySome ;
1669+ $innerArraySort = InnerArraySort ;
1670+
16761671} ) ;
0 commit comments