diff options
Diffstat (limited to 'node_modules/core-js/modules/es.object.prevent-extensions.js')
| -rw-r--r-- | node_modules/core-js/modules/es.object.prevent-extensions.js | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/node_modules/core-js/modules/es.object.prevent-extensions.js b/node_modules/core-js/modules/es.object.prevent-extensions.js new file mode 100644 index 0000000..bb7b268 --- /dev/null +++ b/node_modules/core-js/modules/es.object.prevent-extensions.js @@ -0,0 +1,16 @@ +var $ = require('../internals/export'); +var isObject = require('../internals/is-object'); +var onFreeze = require('../internals/internal-metadata').onFreeze; +var FREEZING = require('../internals/freezing'); +var fails = require('../internals/fails'); + +var nativePreventExtensions = Object.preventExtensions; +var FAILS_ON_PRIMITIVES = fails(function () { nativePreventExtensions(1); }); + +// `Object.preventExtensions` method +// https://tc39.github.io/ecma262/#sec-object.preventextensions +$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, { + preventExtensions: function preventExtensions(it) { + return nativePreventExtensions && isObject(it) ? nativePreventExtensions(onFreeze(it)) : it; + } +}); |
