core-js 1.2.3 → 1.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +408 -386
- package/bower.json +1 -1
- package/build/Gruntfile.ls +0 -5
- package/build/build.ls +24 -22
- package/build/index.js +2 -2
- package/client/core.js +1412 -1272
- package/client/core.min.js +4 -4
- package/client/core.min.js.map +1 -1
- package/client/library.js +1220 -1122
- package/client/library.min.js +4 -4
- package/client/library.min.js.map +1 -1
- package/client/shim.js +1304 -1164
- package/client/shim.min.js +4 -4
- package/client/shim.min.js.map +1 -1
- package/es6/symbol.js +1 -0
- package/fn/symbol/index.js +1 -0
- package/library/es6/symbol.js +1 -0
- package/library/fn/symbol/index.js +1 -0
- package/library/modules/{$.unscope.js → $.add-to-unscopables.js} +0 -0
- package/library/modules/$.array-fill.js +1 -1
- package/library/modules/$.array-methods.js +2 -12
- package/library/modules/$.array-species-create.js +16 -0
- package/library/modules/$.buffer.js +278 -285
- package/library/modules/$.collection-strong.js +9 -8
- package/library/modules/$.collection-weak.js +16 -15
- package/library/modules/$.collection.js +21 -14
- package/library/modules/$.core.js +1 -1
- package/library/modules/{$.support-desc.js → $.descriptors.js} +0 -0
- package/library/modules/$.export.js +46 -0
- package/library/modules/$.fails-is-regexp.js +2 -1
- package/library/modules/$.fix-re-wks.js +10 -5
- package/library/modules/$.flags.js +5 -5
- package/library/modules/$.get-names.js +3 -3
- package/library/modules/$.hide.js +1 -1
- package/library/modules/$.is-array-iter.js +5 -3
- package/library/modules/$.iter-create.js +5 -3
- package/library/modules/$.iter-define.js +46 -30
- package/library/modules/$.iter-detect.js +8 -6
- package/library/modules/{$.expm1.js → $.math-expm1.js} +0 -0
- package/library/modules/{$.log1p.js → $.math-log1p.js} +0 -0
- package/library/modules/{$.sign.js → $.math-sign.js} +0 -0
- package/library/modules/$.microtask.js +9 -2
- package/library/modules/{$.assign.js → $.object-assign.js} +0 -0
- package/library/modules/$.object-sap.js +6 -4
- package/library/modules/$.redefine-all.js +5 -0
- package/library/modules/{$.redef.js → $.redefine.js} +0 -0
- package/library/modules/{$.same.js → $.same-value.js} +1 -0
- package/library/modules/$.set-species.js +13 -0
- package/library/modules/{$.tag.js → $.set-to-string-tag.js} +0 -0
- package/library/modules/$.species-constructor.js +7 -7
- package/library/modules/$.string-at.js +5 -6
- package/library/modules/$.string-trim.js +17 -14
- package/library/modules/$.task.js +0 -1
- package/library/modules/$.to-primitive.js +12 -0
- package/library/modules/$.typed-array.js +345 -294
- package/library/modules/$.typed.js +36 -0
- package/library/modules/$.wks.js +2 -1
- package/library/modules/core.delay.js +2 -2
- package/library/modules/core.dict.js +20 -19
- package/library/modules/core.function.part.js +3 -4
- package/library/modules/core.is-iterable.js +1 -1
- package/library/modules/core.log.js +2 -2
- package/library/modules/core.object.classof.js +2 -2
- package/library/modules/core.object.define.js +3 -3
- package/library/modules/core.object.is-object.js +2 -2
- package/library/modules/core.object.make.js +4 -4
- package/library/modules/core.string.escape-html.js +9 -9
- package/library/modules/core.string.unescape-html.js +9 -9
- package/library/modules/es5.js +61 -60
- package/library/modules/es6.array.copy-within.js +3 -4
- package/library/modules/es6.array.fill.js +3 -3
- package/library/modules/es6.array.find-index.js +6 -6
- package/library/modules/es6.array.find.js +6 -6
- package/library/modules/es6.array.from.js +2 -2
- package/library/modules/es6.array.iterator.js +8 -8
- package/library/modules/es6.array.of.js +2 -2
- package/library/modules/es6.array.species.js +1 -1
- package/library/modules/es6.date.to-string.js +0 -0
- package/library/modules/es6.math.acosh.js +5 -5
- package/library/modules/es6.math.asinh.js +2 -2
- package/library/modules/es6.math.atanh.js +2 -2
- package/library/modules/es6.math.cbrt.js +3 -3
- package/library/modules/es6.math.clz32.js +2 -2
- package/library/modules/es6.math.cosh.js +3 -3
- package/library/modules/es6.math.expm1.js +2 -2
- package/library/modules/es6.math.fround.js +4 -4
- package/library/modules/es6.math.hypot.js +3 -3
- package/library/modules/es6.math.imul.js +3 -3
- package/library/modules/es6.math.log10.js +2 -2
- package/library/modules/es6.math.log1p.js +2 -2
- package/library/modules/es6.math.log2.js +2 -2
- package/library/modules/es6.math.sign.js +2 -2
- package/library/modules/es6.math.sinh.js +4 -4
- package/library/modules/es6.math.tanh.js +4 -4
- package/library/modules/es6.math.trunc.js +2 -2
- package/library/modules/es6.number.epsilon.js +2 -2
- package/library/modules/es6.number.is-finite.js +2 -2
- package/library/modules/es6.number.is-integer.js +2 -2
- package/library/modules/es6.number.is-nan.js +2 -2
- package/library/modules/es6.number.is-safe-integer.js +2 -2
- package/library/modules/es6.number.max-safe-integer.js +2 -2
- package/library/modules/es6.number.min-safe-integer.js +2 -2
- package/library/modules/es6.number.parse-float.js +2 -2
- package/library/modules/es6.number.parse-int.js +2 -2
- package/library/modules/es6.object.assign.js +2 -2
- package/library/modules/es6.object.is.js +2 -4
- package/library/modules/es6.object.set-prototype-of.js +2 -2
- package/library/modules/es6.promise.js +96 -66
- package/library/modules/es6.reflect.apply.js +5 -4
- package/library/modules/es6.reflect.construct.js +4 -3
- package/library/modules/es6.reflect.define-property.js +2 -2
- package/library/modules/es6.reflect.delete-property.js +2 -2
- package/library/modules/es6.reflect.enumerate.js +2 -2
- package/library/modules/es6.reflect.get-own-property-descriptor.js +2 -2
- package/library/modules/es6.reflect.get-prototype-of.js +2 -2
- package/library/modules/es6.reflect.get.js +2 -2
- package/library/modules/es6.reflect.has.js +2 -2
- package/library/modules/es6.reflect.is-extensible.js +2 -2
- package/library/modules/es6.reflect.own-keys.js +2 -2
- package/library/modules/es6.reflect.prevent-extensions.js +2 -2
- package/library/modules/es6.reflect.set-prototype-of.js +2 -2
- package/library/modules/es6.reflect.set.js +2 -2
- package/library/modules/es6.regexp.constructor.js +1 -1
- package/library/modules/es6.string.code-point-at.js +3 -3
- package/library/modules/es6.string.ends-with.js +2 -2
- package/library/modules/es6.string.from-code-point.js +4 -4
- package/library/modules/es6.string.includes.js +4 -3
- package/library/modules/es6.string.raw.js +2 -2
- package/library/modules/es6.string.repeat.js +2 -2
- package/library/modules/es6.string.starts-with.js +2 -2
- package/library/modules/es6.symbol.js +17 -16
- package/library/modules/es6.typed.array-buffer.js +43 -0
- package/library/modules/es6.typed.data-view.js +4 -0
- package/library/modules/{es6.typed-arrays.float32-array.js → es6.typed.float32-array.js} +0 -0
- package/library/modules/{es6.typed-arrays.float64-array.js → es6.typed.float64-array.js} +0 -0
- package/library/modules/{es6.typed-arrays.int16-array.js → es6.typed.int16-array.js} +0 -0
- package/library/modules/{es6.typed-arrays.int32-array.js → es6.typed.int32-array.js} +0 -0
- package/library/modules/{es6.typed-arrays.int8-array.js → es6.typed.int8-array.js} +0 -0
- package/library/modules/{es6.typed-arrays.uint16-array.js → es6.typed.uint16-array.js} +0 -0
- package/library/modules/{es6.typed-arrays.uint32-array.js → es6.typed.uint32-array.js} +0 -0
- package/library/modules/{es6.typed-arrays.uint8-array.js → es6.typed.uint8-array.js} +0 -0
- package/library/modules/{es6.typed-arrays.uint8-clamped-array.js → es6.typed.uint8-clamped-array.js} +0 -0
- package/library/modules/es6.weak-map.js +2 -1
- package/library/modules/es7.array.includes.js +5 -3
- package/library/modules/es7.map.to-json.js +2 -2
- package/library/modules/es7.object.entries.js +2 -2
- package/library/modules/es7.object.get-own-property-descriptors.js +2 -2
- package/library/modules/es7.object.values.js +2 -2
- package/library/modules/es7.regexp.escape.js +4 -3
- package/library/modules/es7.set.to-json.js +2 -2
- package/library/modules/es7.string.at.js +5 -4
- package/library/modules/es7.string.pad-left.js +4 -3
- package/library/modules/es7.string.pad-right.js +4 -3
- package/library/modules/js.array.statics.js +4 -3
- package/library/modules/web.immediate.js +3 -3
- package/library/modules/web.timers.js +2 -2
- package/modules/$.add-to-unscopables.js +7 -0
- package/modules/$.array-fill.js +1 -1
- package/modules/$.array-methods.js +2 -12
- package/modules/$.array-species-create.js +16 -0
- package/modules/$.buffer.js +278 -285
- package/modules/$.collection-strong.js +9 -8
- package/modules/$.collection-weak.js +16 -15
- package/modules/$.collection.js +37 -25
- package/modules/$.core.js +1 -1
- package/modules/{$.support-desc.js → $.descriptors.js} +0 -0
- package/modules/$.export.js +41 -0
- package/modules/$.fails-is-regexp.js +2 -1
- package/modules/$.fix-re-wks.js +10 -5
- package/modules/$.flags.js +5 -5
- package/modules/$.get-names.js +3 -3
- package/modules/$.hide.js +1 -1
- package/modules/$.is-array-iter.js +5 -3
- package/modules/$.iter-create.js +5 -3
- package/modules/$.iter-define.js +46 -30
- package/modules/$.iter-detect.js +8 -6
- package/modules/{$.expm1.js → $.math-expm1.js} +0 -0
- package/modules/{$.log1p.js → $.math-log1p.js} +0 -0
- package/modules/{$.sign.js → $.math-sign.js} +0 -0
- package/modules/$.microtask.js +9 -2
- package/modules/{$.assign.js → $.object-assign.js} +0 -0
- package/modules/$.object-sap.js +6 -4
- package/modules/$.redefine-all.js +5 -0
- package/modules/{$.redef.js → $.redefine.js} +0 -0
- package/modules/{$.same.js → $.same-value.js} +1 -0
- package/modules/$.set-species.js +13 -0
- package/modules/{$.tag.js → $.set-to-string-tag.js} +0 -0
- package/modules/$.species-constructor.js +7 -7
- package/modules/$.string-at.js +5 -6
- package/modules/$.string-trim.js +17 -14
- package/modules/$.task.js +0 -1
- package/modules/$.to-primitive.js +12 -0
- package/modules/$.typed-array.js +345 -294
- package/modules/$.typed.js +36 -0
- package/modules/$.wks.js +2 -1
- package/modules/core.delay.js +2 -2
- package/modules/core.dict.js +20 -19
- package/modules/core.function.part.js +3 -4
- package/modules/core.is-iterable.js +1 -1
- package/modules/core.log.js +2 -2
- package/modules/core.object.classof.js +2 -2
- package/modules/core.object.define.js +3 -3
- package/modules/core.object.is-object.js +2 -2
- package/modules/core.object.make.js +4 -4
- package/modules/core.string.escape-html.js +9 -9
- package/modules/core.string.unescape-html.js +9 -9
- package/modules/es5.js +61 -60
- package/modules/es6.array.copy-within.js +3 -4
- package/modules/es6.array.fill.js +3 -3
- package/modules/es6.array.find-index.js +6 -6
- package/modules/es6.array.find.js +6 -6
- package/modules/es6.array.from.js +2 -2
- package/modules/es6.array.iterator.js +8 -8
- package/modules/es6.array.of.js +2 -2
- package/modules/es6.array.species.js +1 -1
- package/modules/es6.date.to-string.js +10 -0
- package/modules/es6.function.name.js +1 -1
- package/modules/es6.math.acosh.js +5 -5
- package/modules/es6.math.asinh.js +2 -2
- package/modules/es6.math.atanh.js +2 -2
- package/modules/es6.math.cbrt.js +3 -3
- package/modules/es6.math.clz32.js +2 -2
- package/modules/es6.math.cosh.js +3 -3
- package/modules/es6.math.expm1.js +2 -2
- package/modules/es6.math.fround.js +4 -4
- package/modules/es6.math.hypot.js +3 -3
- package/modules/es6.math.imul.js +3 -3
- package/modules/es6.math.log10.js +2 -2
- package/modules/es6.math.log1p.js +2 -2
- package/modules/es6.math.log2.js +2 -2
- package/modules/es6.math.sign.js +2 -2
- package/modules/es6.math.sinh.js +4 -4
- package/modules/es6.math.tanh.js +4 -4
- package/modules/es6.math.trunc.js +2 -2
- package/modules/es6.number.constructor.js +43 -29
- package/modules/es6.number.epsilon.js +2 -2
- package/modules/es6.number.is-finite.js +2 -2
- package/modules/es6.number.is-integer.js +2 -2
- package/modules/es6.number.is-nan.js +2 -2
- package/modules/es6.number.is-safe-integer.js +2 -2
- package/modules/es6.number.max-safe-integer.js +2 -2
- package/modules/es6.number.min-safe-integer.js +2 -2
- package/modules/es6.number.parse-float.js +2 -2
- package/modules/es6.number.parse-int.js +2 -2
- package/modules/es6.object.assign.js +2 -2
- package/modules/es6.object.is.js +2 -4
- package/modules/es6.object.set-prototype-of.js +2 -2
- package/modules/es6.object.to-string.js +1 -1
- package/modules/es6.promise.js +96 -66
- package/modules/es6.reflect.apply.js +5 -4
- package/modules/es6.reflect.construct.js +4 -3
- package/modules/es6.reflect.define-property.js +2 -2
- package/modules/es6.reflect.delete-property.js +2 -2
- package/modules/es6.reflect.enumerate.js +2 -2
- package/modules/es6.reflect.get-own-property-descriptor.js +2 -2
- package/modules/es6.reflect.get-prototype-of.js +2 -2
- package/modules/es6.reflect.get.js +2 -2
- package/modules/es6.reflect.has.js +2 -2
- package/modules/es6.reflect.is-extensible.js +2 -2
- package/modules/es6.reflect.own-keys.js +2 -2
- package/modules/es6.reflect.prevent-extensions.js +2 -2
- package/modules/es6.reflect.set-prototype-of.js +2 -2
- package/modules/es6.reflect.set.js +2 -2
- package/modules/es6.regexp.constructor.js +3 -3
- package/modules/es6.regexp.flags.js +1 -1
- package/modules/es6.string.code-point-at.js +3 -3
- package/modules/es6.string.ends-with.js +2 -2
- package/modules/es6.string.from-code-point.js +4 -4
- package/modules/es6.string.includes.js +4 -3
- package/modules/es6.string.raw.js +2 -2
- package/modules/es6.string.repeat.js +2 -2
- package/modules/es6.string.starts-with.js +2 -2
- package/modules/es6.symbol.js +17 -16
- package/modules/es6.typed.array-buffer.js +43 -0
- package/modules/es6.typed.data-view.js +4 -0
- package/modules/{es6.typed-arrays.float32-array.js → es6.typed.float32-array.js} +0 -0
- package/modules/{es6.typed-arrays.float64-array.js → es6.typed.float64-array.js} +0 -0
- package/modules/{es6.typed-arrays.int16-array.js → es6.typed.int16-array.js} +0 -0
- package/modules/{es6.typed-arrays.int32-array.js → es6.typed.int32-array.js} +0 -0
- package/modules/{es6.typed-arrays.int8-array.js → es6.typed.int8-array.js} +0 -0
- package/modules/{es6.typed-arrays.uint16-array.js → es6.typed.uint16-array.js} +0 -0
- package/modules/{es6.typed-arrays.uint32-array.js → es6.typed.uint32-array.js} +0 -0
- package/modules/{es6.typed-arrays.uint8-array.js → es6.typed.uint8-array.js} +0 -0
- package/modules/{es6.typed-arrays.uint8-clamped-array.js → es6.typed.uint8-clamped-array.js} +0 -0
- package/modules/es6.weak-map.js +2 -1
- package/modules/es7.array.includes.js +5 -3
- package/modules/es7.map.to-json.js +2 -2
- package/modules/es7.object.entries.js +2 -2
- package/modules/es7.object.get-own-property-descriptors.js +2 -2
- package/modules/es7.object.values.js +2 -2
- package/modules/es7.regexp.escape.js +4 -3
- package/modules/es7.set.to-json.js +2 -2
- package/modules/es7.string.at.js +5 -4
- package/modules/es7.string.pad-left.js +4 -3
- package/modules/es7.string.pad-right.js +4 -3
- package/modules/js.array.statics.js +4 -3
- package/modules/library/{$.unscope.js → $.add-to-unscopables.js} +0 -0
- package/modules/library/$.collection.js +21 -14
- package/modules/library/$.export.js +46 -0
- package/modules/library/{$.redef.js → $.redefine.js} +0 -0
- package/modules/library/$.set-species.js +13 -0
- package/modules/library/es6.date.to-string.js +0 -0
- package/modules/library/es6.regexp.constructor.js +1 -1
- package/modules/web.dom.iterable.js +2 -2
- package/modules/web.immediate.js +3 -3
- package/modules/web.timers.js +2 -2
- package/package.json +6 -6
- package/README.md +0 -1289
- package/library/modules/$.def.js +0 -47
- package/library/modules/$.mix.js +0 -5
- package/library/modules/$.species.js +0 -9
- package/library/modules/es6.typed-arrays.array-buffer.js +0 -33
- package/library/modules/es6.typed-arrays.data-view.js +0 -4
- package/modules/$.def.js +0 -42
- package/modules/$.mix.js +0 -5
- package/modules/$.species.js +0 -9
- package/modules/$.unscope.js +0 -6
- package/modules/es6.typed-arrays.array-buffer.js +0 -33
- package/modules/es6.typed-arrays.data-view.js +0 -4
- package/modules/library/$.def.js +0 -47
|
@@ -1,314 +1,365 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
-
|
|
2
|
+
if(require('./$.descriptors')){
|
|
3
|
+
var LIBRARY = require('./$.library')
|
|
4
|
+
, global = require('./$.global')
|
|
5
|
+
, $ = require('./$')
|
|
6
|
+
, fails = require('./$.fails')
|
|
7
|
+
, $export = require('./$.export')
|
|
8
|
+
, $typed = require('./$.typed')
|
|
9
|
+
, $buffer = require('./$.buffer')
|
|
10
|
+
, ctx = require('./$.ctx')
|
|
11
|
+
, strictNew = require('./$.strict-new')
|
|
12
|
+
, propertyDesc = require('./$.property-desc')
|
|
13
|
+
, hide = require('./$.hide')
|
|
14
|
+
, redefineAll = require('./$.redefine-all')
|
|
15
|
+
, isInteger = require('./$.is-integer')
|
|
16
|
+
, toInteger = require('./$.to-integer')
|
|
17
|
+
, toLength = require('./$.to-length')
|
|
18
|
+
, toIndex = require('./$.to-index')
|
|
19
|
+
, toPrimitive = require('./$.to-primitive')
|
|
20
|
+
, isObject = require('./$.is-object')
|
|
21
|
+
, toObject = require('./$.to-object')
|
|
22
|
+
, isArrayIter = require('./$.is-array-iter')
|
|
23
|
+
, isIterable = require('./core.is-iterable')
|
|
24
|
+
, getIterFn = require('./core.get-iterator-method')
|
|
25
|
+
, wks = require('./$.wks')
|
|
26
|
+
, createArrayMethod = require('./$.array-methods')
|
|
27
|
+
, createArrayIncludes = require('./$.array-includes')
|
|
28
|
+
, speciesConstructor = require('./$.species-constructor')
|
|
29
|
+
, ArrayIterators = require('./es6.array.iterator')
|
|
30
|
+
, Iterators = require('./$.iterators')
|
|
31
|
+
, $iterDetect = require('./$.iter-detect')
|
|
32
|
+
, setSpecies = require('./$.set-species')
|
|
33
|
+
, arrayFill = require('./$.array-fill')
|
|
34
|
+
, arrayCopyWithin = require('./$.array-copy-within')
|
|
35
|
+
, ArrayProto = Array.prototype
|
|
36
|
+
, $ArrayBuffer = $buffer.ArrayBuffer
|
|
37
|
+
, $DataView = $buffer.DataView
|
|
38
|
+
, setDesc = $.setDesc
|
|
39
|
+
, getDesc = $.getDesc
|
|
40
|
+
, arrayForEach = createArrayMethod(0)
|
|
41
|
+
, arrayMap = createArrayMethod(1)
|
|
42
|
+
, arrayFilter = createArrayMethod(2)
|
|
43
|
+
, arraySome = createArrayMethod(3)
|
|
44
|
+
, arrayEvery = createArrayMethod(4)
|
|
45
|
+
, arrayFind = createArrayMethod(5)
|
|
46
|
+
, arrayFindIndex = createArrayMethod(6)
|
|
47
|
+
, arrayIncludes = createArrayIncludes(true)
|
|
48
|
+
, arrayIndexOf = createArrayIncludes(false)
|
|
49
|
+
, arrayValues = ArrayIterators.values
|
|
50
|
+
, arrayKeys = ArrayIterators.keys
|
|
51
|
+
, arrayEntries = ArrayIterators.entries
|
|
52
|
+
, arrayLastIndexOf = ArrayProto.lastIndexOf
|
|
53
|
+
, arrayReduce = ArrayProto.reduce
|
|
54
|
+
, arrayReduceRight = ArrayProto.reduceRight
|
|
55
|
+
, arrayJoin = ArrayProto.join
|
|
56
|
+
, arrayReverse = ArrayProto.reverse
|
|
57
|
+
, arraySort = ArrayProto.sort
|
|
58
|
+
, arraySlice = ArrayProto.slice
|
|
59
|
+
, arrayToString = ArrayProto.toString
|
|
60
|
+
, arrayToLocaleString = ArrayProto.toLocaleString
|
|
61
|
+
, ITERATOR = wks('iterator')
|
|
62
|
+
, TAG = wks('toStringTag')
|
|
63
|
+
, TYPED_CONSTRUCTOR = wks('typed_constructor')
|
|
64
|
+
, DEF_CONSTRUCTOR = wks('def_constructor')
|
|
65
|
+
, ALL_ARRAYS = $typed.ARRAYS
|
|
66
|
+
, TYPED_ARRAY = $typed.TYPED
|
|
67
|
+
, VIEW = $typed.VIEW
|
|
68
|
+
, BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
|
|
3
69
|
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
, $ArrayBuffer = $buffer.ArrayBuffer
|
|
8
|
-
, $DataView = $buffer.DataView
|
|
9
|
-
, $ = require('./$')
|
|
10
|
-
, setDesc = $.setDesc
|
|
11
|
-
, getDesc = $.getDesc
|
|
12
|
-
, ctx = require('./$.ctx')
|
|
13
|
-
, strictNew = require('./$.strict-new')
|
|
14
|
-
, propertyDesc = require('./$.property-desc')
|
|
15
|
-
, $hide = require('./$.hide')
|
|
16
|
-
, isInteger = require('./$.is-integer')
|
|
17
|
-
, toInteger = require('./$.to-integer')
|
|
18
|
-
, toLength = require('./$.to-length')
|
|
19
|
-
, toIndex = require('./$.to-index')
|
|
20
|
-
, isObject = require('./$.is-object')
|
|
21
|
-
, toObject = require('./$.to-object')
|
|
22
|
-
, isArrayIter = require('./$.is-array-iter')
|
|
23
|
-
, isIterable = require('./core.is-iterable')
|
|
24
|
-
, getIterFn = require('./core.get-iterator-method')
|
|
25
|
-
, wks = require('./$.wks')
|
|
26
|
-
, arrayMethods = require('./$.array-methods')
|
|
27
|
-
, arrayIncludes = require('./$.array-includes')
|
|
28
|
-
, $fill = require('./$.array-fill')
|
|
29
|
-
, $copyWithin = require('./$.array-copy-within')
|
|
30
|
-
, speciesConstructor = require('./$.species-constructor')
|
|
31
|
-
, $forEach = arrayMethods(0)
|
|
32
|
-
, $map = arrayMethods(1)
|
|
33
|
-
, $filter = arrayMethods(2)
|
|
34
|
-
, $some = arrayMethods(3)
|
|
35
|
-
, $every = arrayMethods(4)
|
|
36
|
-
, $find = arrayMethods(5)
|
|
37
|
-
, $findIndex = arrayMethods(6)
|
|
38
|
-
, $indexOf = arrayIncludes(false)
|
|
39
|
-
, $includes = arrayIncludes(true)
|
|
40
|
-
, $lastIndexOf = [].lastIndexOf
|
|
41
|
-
, $reduce = [].reduce
|
|
42
|
-
, $reduceRight = [].reduceRight
|
|
43
|
-
, $join = [].join
|
|
44
|
-
, $reverse = [].reverse
|
|
45
|
-
, $sort = [].sort
|
|
46
|
-
, $slice = [].slice
|
|
47
|
-
, $toString = [].toString
|
|
48
|
-
, $toLocaleString = [].toLocaleString
|
|
49
|
-
, TAG = wks('toStringTag')
|
|
50
|
-
, TYPED_ARRAY = wks('typed_array')
|
|
51
|
-
, TYPED_CONSTRUCTOR = wks('typed_constructor')
|
|
52
|
-
, DEF_CONSTRUCTOR = wks('def_constructor')
|
|
53
|
-
, BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
|
|
70
|
+
var LITTLE_ENDIAN = fails(function(){
|
|
71
|
+
return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;
|
|
72
|
+
});
|
|
54
73
|
|
|
55
|
-
var validate = function(it){
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
};
|
|
74
|
+
var validate = function(it){
|
|
75
|
+
if(isObject(it) && TYPED_ARRAY in it)return it;
|
|
76
|
+
throw TypeError(it + ' is not a typed array!');
|
|
77
|
+
};
|
|
59
78
|
|
|
60
|
-
var fromList = function(O, list){
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
};
|
|
79
|
+
var fromList = function(O, list){
|
|
80
|
+
var index = 0
|
|
81
|
+
, length = list.length
|
|
82
|
+
, result = allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);
|
|
83
|
+
while(length > index)result[index] = list[index++];
|
|
84
|
+
return result;
|
|
85
|
+
};
|
|
67
86
|
|
|
68
|
-
var allocate = function(C, length){
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
};
|
|
87
|
+
var allocate = function(C, length){
|
|
88
|
+
if(!(isObject(C) && TYPED_CONSTRUCTOR in C)){
|
|
89
|
+
throw TypeError('It is not a typed array constructor!');
|
|
90
|
+
} return new C(length);
|
|
91
|
+
};
|
|
73
92
|
|
|
74
|
-
var $from = function from(source /*, mapfn, thisArg */){
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
};
|
|
93
|
+
var $from = function from(source /*, mapfn, thisArg */){
|
|
94
|
+
var O = toObject(source)
|
|
95
|
+
, $$ = arguments
|
|
96
|
+
, $$len = $$.length
|
|
97
|
+
, mapfn = $$len > 1 ? $$[1] : undefined
|
|
98
|
+
, mapping = mapfn !== undefined
|
|
99
|
+
, iterFn = getIterFn(O)
|
|
100
|
+
, i, length, values, result, step, iterator;
|
|
101
|
+
if(iterFn != undefined && !isArrayIter(iterFn)){
|
|
102
|
+
for(iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++){
|
|
103
|
+
values.push(step.value);
|
|
104
|
+
} O = values;
|
|
105
|
+
}
|
|
106
|
+
if(mapping && $$len > 2)mapfn = ctx(mapfn, $$[2], 2);
|
|
107
|
+
for(i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++){
|
|
108
|
+
result[i] = mapping ? mapfn(O[i], i) : O[i];
|
|
109
|
+
}
|
|
110
|
+
return result;
|
|
111
|
+
};
|
|
93
112
|
|
|
94
|
-
var addGetter = function(C, key, internal){
|
|
95
|
-
|
|
96
|
-
};
|
|
113
|
+
var addGetter = function(C, key, internal){
|
|
114
|
+
setDesc(C.prototype, key, {get: function(){ return this._d[internal]; }});
|
|
115
|
+
};
|
|
97
116
|
|
|
98
|
-
var
|
|
99
|
-
// @@species -> this
|
|
100
|
-
from: $from,
|
|
101
|
-
of: function of(/*...items*/){
|
|
117
|
+
var $of = function of(/*...items*/){
|
|
102
118
|
var index = 0
|
|
103
119
|
, length = arguments.length
|
|
104
|
-
, result =
|
|
120
|
+
, result = allocate(this, length);
|
|
105
121
|
while(length > index)result[index] = arguments[index++];
|
|
106
122
|
return result;
|
|
107
|
-
}
|
|
108
|
-
|
|
123
|
+
};
|
|
124
|
+
var $toLocaleString = function toLocaleString(){
|
|
125
|
+
return arrayToLocaleString.apply(validate(this), arguments);
|
|
126
|
+
};
|
|
109
127
|
|
|
110
|
-
var proto = {
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
,
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
// looks like Array equal + ValidateTypedArray
|
|
197
|
-
},
|
|
198
|
-
keys: function keys(){
|
|
199
|
-
// looks like Array equal + ValidateTypedArray
|
|
200
|
-
},
|
|
201
|
-
values: function values(){
|
|
202
|
-
// looks like Array equal + ValidateTypedArray
|
|
203
|
-
}
|
|
204
|
-
// @@iterator
|
|
205
|
-
};
|
|
128
|
+
var proto = {
|
|
129
|
+
copyWithin: function copyWithin(target, start /*, end */){
|
|
130
|
+
return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
|
|
131
|
+
},
|
|
132
|
+
every: function every(callbackfn /*, thisArg */){
|
|
133
|
+
return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
134
|
+
},
|
|
135
|
+
fill: function fill(value /*, start, end */){ // eslint-disable-line no-unused-vars
|
|
136
|
+
return arrayFill.apply(validate(this), arguments);
|
|
137
|
+
},
|
|
138
|
+
filter: function filter(callbackfn /*, thisArg */){
|
|
139
|
+
return fromList(this, arrayFilter(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined));
|
|
140
|
+
},
|
|
141
|
+
find: function find(predicate /*, thisArg */){
|
|
142
|
+
return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
|
|
143
|
+
},
|
|
144
|
+
findIndex: function findIndex(predicate /*, thisArg */){
|
|
145
|
+
return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
|
|
146
|
+
},
|
|
147
|
+
forEach: function forEach(callbackfn /*, thisArg */){
|
|
148
|
+
arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
149
|
+
},
|
|
150
|
+
indexOf: function indexOf(searchElement /*, fromIndex */){
|
|
151
|
+
return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
|
|
152
|
+
},
|
|
153
|
+
includes: function includes(searchElement /*, fromIndex */){
|
|
154
|
+
return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
|
|
155
|
+
},
|
|
156
|
+
join: function join(separator){ // eslint-disable-line no-unused-vars
|
|
157
|
+
return arrayJoin.apply(validate(this), arguments);
|
|
158
|
+
},
|
|
159
|
+
lastIndexOf: function lastIndexOf(searchElement /*, fromIndex */){ // eslint-disable-line no-unused-vars
|
|
160
|
+
return arrayLastIndexOf.apply(validate(this), arguments);
|
|
161
|
+
},
|
|
162
|
+
map: function map(mapfn /*, thisArg */){
|
|
163
|
+
return fromList(this, arrayMap(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined)); // TODO
|
|
164
|
+
},
|
|
165
|
+
reduce: function reduce(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars
|
|
166
|
+
return arrayReduce.apply(validate(this), arguments);
|
|
167
|
+
},
|
|
168
|
+
reduceRight: function reduceRight(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars
|
|
169
|
+
return arrayReduceRight.apply(validate(this), arguments);
|
|
170
|
+
},
|
|
171
|
+
reverse: function reverse(){
|
|
172
|
+
return arrayReverse.call(validate(this));
|
|
173
|
+
},
|
|
174
|
+
set: function set(arrayLike /*, offset */){
|
|
175
|
+
validate(this);
|
|
176
|
+
var offset = toInteger(arguments.length > 1 ? arguments[1] : undefined);
|
|
177
|
+
if(offset < 0)throw RangeError();
|
|
178
|
+
var length = this.length;
|
|
179
|
+
var src = toObject(arrayLike);
|
|
180
|
+
var index = 0;
|
|
181
|
+
var len = toLength(src.length);
|
|
182
|
+
if(len + offset > length)throw RangeError();
|
|
183
|
+
while(index < len)this[offset + index] = src[index++];
|
|
184
|
+
},
|
|
185
|
+
slice: function slice(start, end){
|
|
186
|
+
return fromList(this, arraySlice.call(validate(this), start, end)); // TODO
|
|
187
|
+
},
|
|
188
|
+
some: function some(callbackfn /*, thisArg */){
|
|
189
|
+
return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
190
|
+
},
|
|
191
|
+
sort: function sort(comparefn){
|
|
192
|
+
return arraySort.call(validate(this), comparefn);
|
|
193
|
+
},
|
|
194
|
+
subarray: function subarray(begin, end){
|
|
195
|
+
var O = validate(this)
|
|
196
|
+
, length = O.length
|
|
197
|
+
, $begin = toIndex(begin, length);
|
|
198
|
+
return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(
|
|
199
|
+
O.buffer,
|
|
200
|
+
O.byteOffset + $begin * O.BYTES_PER_ELEMENT,
|
|
201
|
+
toLength((end === undefined ? length : toIndex(end, length)) - $begin)
|
|
202
|
+
);
|
|
203
|
+
},
|
|
204
|
+
entries: function entries(){
|
|
205
|
+
return arrayEntries.call(validate(this));
|
|
206
|
+
},
|
|
207
|
+
keys: function keys(){
|
|
208
|
+
return arrayKeys.call(validate(this));
|
|
209
|
+
},
|
|
210
|
+
values: function values(){
|
|
211
|
+
return arrayValues.call(validate(this));
|
|
212
|
+
}
|
|
213
|
+
};
|
|
206
214
|
|
|
207
|
-
var
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
};
|
|
214
|
-
var $
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
}
|
|
219
|
-
|
|
215
|
+
var isTAIndex = function(target, key){
|
|
216
|
+
return isObject(target)
|
|
217
|
+
&& TYPED_ARRAY in target
|
|
218
|
+
&& typeof key != 'symbol'
|
|
219
|
+
&& key in target
|
|
220
|
+
&& String(+key) == String(key);
|
|
221
|
+
};
|
|
222
|
+
var $getDesc = function getOwnPropertyDescriptor(target, key){
|
|
223
|
+
return isTAIndex(target, key = toPrimitive(key, true))
|
|
224
|
+
? propertyDesc(2, target[key])
|
|
225
|
+
: getDesc(target, key);
|
|
226
|
+
};
|
|
227
|
+
var $setDesc = function defineProperty(target, key, desc){
|
|
228
|
+
if(isTAIndex(target, key = toPrimitive(key, true)) && isObject(desc)){
|
|
229
|
+
if('value' in desc)target[key] = desc.value;
|
|
230
|
+
return target;
|
|
231
|
+
} else return setDesc(target, key, desc);
|
|
232
|
+
};
|
|
220
233
|
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
}
|
|
234
|
+
if(!ALL_ARRAYS){
|
|
235
|
+
$.getDesc = $getDesc;
|
|
236
|
+
$.setDesc = $setDesc;
|
|
237
|
+
}
|
|
225
238
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
});
|
|
239
|
+
$export($export.S + $export.F * !ALL_ARRAYS, 'Object', {
|
|
240
|
+
getOwnPropertyDescriptor: $getDesc,
|
|
241
|
+
defineProperty: $setDesc
|
|
242
|
+
});
|
|
230
243
|
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
,
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
set
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
}
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
244
|
+
var $TypedArrayPrototype$ = redefineAll({}, proto);
|
|
245
|
+
redefineAll($TypedArrayPrototype$, {
|
|
246
|
+
constructor: function(){ /* noop */ },
|
|
247
|
+
toString: arrayToString,
|
|
248
|
+
toLocaleString: $toLocaleString
|
|
249
|
+
});
|
|
250
|
+
$.setDesc($TypedArrayPrototype$, TAG, {
|
|
251
|
+
get: function(){ return this[TYPED_ARRAY]; }
|
|
252
|
+
});
|
|
253
|
+
|
|
254
|
+
module.exports = function(KEY, BYTES, wrapper, CLAMPED){
|
|
255
|
+
CLAMPED = !!CLAMPED;
|
|
256
|
+
var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'
|
|
257
|
+
, GETTER = 'get' + KEY
|
|
258
|
+
, SETTER = 'set' + KEY
|
|
259
|
+
, TypedArray = global[NAME]
|
|
260
|
+
, Base = TypedArray || {}
|
|
261
|
+
, FORCED = !TypedArray || !$typed.ABV
|
|
262
|
+
, $iterator = proto.values
|
|
263
|
+
, O = {};
|
|
264
|
+
var addElement = function(that, index){
|
|
265
|
+
setDesc(that, index, {
|
|
266
|
+
get: function(){
|
|
267
|
+
var data = this._d;
|
|
268
|
+
return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
|
|
269
|
+
},
|
|
270
|
+
set: function(it){
|
|
271
|
+
var data = this._d;
|
|
272
|
+
if(CLAMPED)it = (it = Math.round(it)) < 0 ? 0 : it > 0xff ? 0xff : it & 0xff;
|
|
273
|
+
data.v[SETTER](index * BYTES + data.o, it, LITTLE_ENDIAN);
|
|
274
|
+
},
|
|
275
|
+
enumerable: true
|
|
276
|
+
});
|
|
277
|
+
};
|
|
278
|
+
if(!$ArrayBuffer)return;
|
|
279
|
+
if(FORCED){
|
|
280
|
+
TypedArray = wrapper(function(that, data, $offset, $length){
|
|
281
|
+
strictNew(that, TypedArray, NAME);
|
|
282
|
+
var index = 0
|
|
283
|
+
, offset = 0
|
|
284
|
+
, buffer, byteLength, length;
|
|
285
|
+
if(!isObject(data)){
|
|
286
|
+
byteLength = toInteger(data) * BYTES;
|
|
287
|
+
buffer = new $ArrayBuffer(byteLength);
|
|
288
|
+
// TODO TA case
|
|
289
|
+
} else if(data instanceof $ArrayBuffer){
|
|
290
|
+
buffer = data;
|
|
291
|
+
offset = toInteger($offset);
|
|
292
|
+
if(offset < 0 || offset % BYTES)throw RangeError();
|
|
293
|
+
var $len = data.byteLength;
|
|
294
|
+
if($length === undefined){
|
|
295
|
+
if($len % BYTES)throw RangeError();
|
|
296
|
+
byteLength = $len - offset;
|
|
297
|
+
if(byteLength < 0)throw RangeError();
|
|
298
|
+
} else {
|
|
299
|
+
byteLength = toLength($length) * BYTES;
|
|
300
|
+
if(byteLength + offset > $len)throw RangeError();
|
|
301
|
+
}
|
|
302
|
+
} else return $from.call(TypedArray, data);
|
|
303
|
+
length = byteLength / BYTES;
|
|
304
|
+
hide(that, '_d', {
|
|
305
|
+
b: buffer,
|
|
306
|
+
o: offset,
|
|
307
|
+
l: byteLength,
|
|
308
|
+
e: length,
|
|
309
|
+
v: new $DataView(buffer)
|
|
310
|
+
});
|
|
311
|
+
while(index < length)addElement(that, index++);
|
|
312
|
+
});
|
|
313
|
+
TypedArray.prototype = $.create($TypedArrayPrototype$);
|
|
314
|
+
addGetter(TypedArray, 'buffer', 'b');
|
|
315
|
+
addGetter(TypedArray, 'byteOffset', 'o');
|
|
316
|
+
addGetter(TypedArray, 'byteLength', 'l');
|
|
317
|
+
addGetter(TypedArray, 'length', 'e');
|
|
318
|
+
hide(TypedArray, BYTES_PER_ELEMENT, BYTES);
|
|
319
|
+
hide(TypedArray.prototype, BYTES_PER_ELEMENT, BYTES);
|
|
320
|
+
hide(TypedArray.prototype, 'constructor', TypedArray);
|
|
321
|
+
} else if(!$iterDetect(function(iter){
|
|
322
|
+
new TypedArray(iter); // eslint-disable-line no-new
|
|
323
|
+
}, true)){
|
|
324
|
+
TypedArray = wrapper(function(that, data, $offset, $length){
|
|
325
|
+
strictNew(that, TypedArray, NAME);
|
|
326
|
+
if(isObject(data) && isIterable(data))return $from.call(TypedArray, data);
|
|
327
|
+
return $length === undefined ? new Base(data, $offset) : new Base(data, $offset, $length);
|
|
285
328
|
});
|
|
286
|
-
|
|
329
|
+
TypedArray.prototype = Base.prototype;
|
|
330
|
+
if(!LIBRARY)TypedArray.prototype.constructor = TypedArray;
|
|
331
|
+
}
|
|
332
|
+
var TypedArrayPrototype = TypedArray.prototype;
|
|
333
|
+
var $nativeIterator = TypedArrayPrototype[ITERATOR];
|
|
334
|
+
hide(TypedArray, TYPED_CONSTRUCTOR, true);
|
|
335
|
+
hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
|
|
336
|
+
hide(TypedArrayPrototype, VIEW, true);
|
|
337
|
+
hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
|
|
338
|
+
TAG in TypedArrayPrototype || $.setDesc(TypedArrayPrototype, TAG, {
|
|
339
|
+
get: function(){ return NAME; }
|
|
287
340
|
});
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
$
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
$TypedArray = wrapper(function(that, data, $offset, $length){
|
|
298
|
-
strictNew(that, $TypedArray, NAME);
|
|
299
|
-
if(isObject(data) && isIterable(data))return $from.call($TypedArray, data);
|
|
300
|
-
return new $TypedArray(data, $offset, $length);
|
|
341
|
+
|
|
342
|
+
O[NAME] = TypedArray;
|
|
343
|
+
|
|
344
|
+
$export($export.G + $export.W + $export.F * (TypedArray != Base), O);
|
|
345
|
+
|
|
346
|
+
$export($export.S + $export.F * (TypedArray != Base), NAME, {
|
|
347
|
+
BYTES_PER_ELEMENT: BYTES,
|
|
348
|
+
from: Base.from || $from,
|
|
349
|
+
of: Base.of || $of
|
|
301
350
|
});
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
351
|
+
|
|
352
|
+
$export($export.P + $export.F * FORCED, NAME, proto);
|
|
353
|
+
|
|
354
|
+
$export($export.P + $export.F * (TypedArrayPrototype.toString != arrayToString), NAME, {toString: arrayToString});
|
|
355
|
+
|
|
356
|
+
$export($export.P + $export.F * fails(function(){
|
|
357
|
+
return [1, 2].toLocaleString() != new Typed([1, 2]).toLocaleString()
|
|
358
|
+
}), NAME, {toLocaleString: $toLocaleString});
|
|
359
|
+
|
|
360
|
+
Iterators[NAME] = $nativeIterator || $iterator;
|
|
361
|
+
LIBRARY || $nativeIterator || hide(TypedArrayPrototype, ITERATOR, $iterator);
|
|
362
|
+
|
|
363
|
+
setSpecies(NAME);
|
|
364
|
+
};
|
|
365
|
+
} else module.exports = function(){ /* empty */};
|