diff options
Diffstat (limited to 'node_modules/core-js/library/modules/es6.typed.array-buffer.js')
-rw-r--r-- | node_modules/core-js/library/modules/es6.typed.array-buffer.js | 81 |
1 files changed, 39 insertions, 42 deletions
diff --git a/node_modules/core-js/library/modules/es6.typed.array-buffer.js b/node_modules/core-js/library/modules/es6.typed.array-buffer.js index 9f47082c2..a8209bd2d 100644 --- a/node_modules/core-js/library/modules/es6.typed.array-buffer.js +++ b/node_modules/core-js/library/modules/es6.typed.array-buffer.js @@ -1,46 +1,43 @@ 'use strict'; -var $export = require('./_export') - , $typed = require('./_typed') - , buffer = require('./_typed-buffer') - , anObject = require('./_an-object') - , toIndex = require('./_to-index') - , toLength = require('./_to-length') - , isObject = require('./_is-object') - , ArrayBuffer = require('./_global').ArrayBuffer - , speciesConstructor = require('./_species-constructor') - , $ArrayBuffer = buffer.ArrayBuffer - , $DataView = buffer.DataView - , $isView = $typed.ABV && ArrayBuffer.isView - , $slice = $ArrayBuffer.prototype.slice - , VIEW = $typed.VIEW - , ARRAY_BUFFER = 'ArrayBuffer'; +if(require('./$.descriptors')){ + var $export = require('./$.export') + , $typed = require('./$.typed') + , buffer = require('./$.buffer') + , toIndex = require('./$.to-index') + , toLength = require('./$.to-length') + , isObject = require('./$.is-object') + , TYPED_ARRAY = require('./$.wks')('typed_array') + , $ArrayBuffer = buffer.ArrayBuffer + , $DataView = buffer.DataView + , $slice = $ArrayBuffer && $ArrayBuffer.prototype.slice + , VIEW = $typed.VIEW + , ARRAY_BUFFER = 'ArrayBuffer'; -$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), {ArrayBuffer: $ArrayBuffer}); + $export($export.G + $export.W + $export.F * !$typed.ABV, {ArrayBuffer: $ArrayBuffer}); -$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, { - // 24.1.3.1 ArrayBuffer.isView(arg) - isView: function isView(it){ - return $isView && $isView(it) || isObject(it) && VIEW in it; - } -}); + $export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, { + // 24.1.3.1 ArrayBuffer.isView(arg) + isView: function isView(it){ // not cross-realm + return isObject(it) && VIEW in it; + } + }); -$export($export.P + $export.U + $export.F * require('./_fails')(function(){ - return !new $ArrayBuffer(2).slice(1, undefined).byteLength; -}), ARRAY_BUFFER, { - // 24.1.4.3 ArrayBuffer.prototype.slice(start, end) - slice: function slice(start, end){ - if($slice !== undefined && end === undefined)return $slice.call(anObject(this), start); // FF fix - var len = anObject(this).byteLength - , first = toIndex(start, len) - , final = toIndex(end === undefined ? len : end, len) - , result = new (speciesConstructor(this, $ArrayBuffer))(toLength(final - first)) - , viewS = new $DataView(this) - , viewT = new $DataView(result) - , index = 0; - while(first < final){ - viewT.setUint8(index++, viewS.getUint8(first++)); - } return result; - } -}); - -require('./_set-species')(ARRAY_BUFFER);
\ No newline at end of file + $export($export.P + $export.F * require('./$.fails')(function(){ + return !new $ArrayBuffer(2).slice(1, undefined).byteLength; + }), ARRAY_BUFFER, { + // 24.1.4.3 ArrayBuffer.prototype.slice(start, end) + slice: function slice(start, end){ + if($slice !== undefined && end === undefined)return $slice.call(this, start); // FF fix + var len = this.byteLength + , first = toIndex(start, len) + , final = toIndex(end === undefined ? len : end, len) + , result = new $ArrayBuffer(toLength(final - first)) + , viewS = new $DataView(this) + , viewT = new $DataView(result) + , index = 0; + while(first < final){ + viewT.setUint8(index++, viewS.getUint8(first++)); + } return result; + } + }); +}
\ No newline at end of file |