From 46e43f4bde4a35785b4997b81e86cd19f046b69b Mon Sep 17 00:00:00 2001 From: Minteck Date: Tue, 21 Dec 2021 16:52:28 +0100 Subject: Commit --- src/node_modules/es-abstract/2018/thisSymbolValue.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 src/node_modules/es-abstract/2018/thisSymbolValue.js (limited to 'src/node_modules/es-abstract/2018/thisSymbolValue.js') diff --git a/src/node_modules/es-abstract/2018/thisSymbolValue.js b/src/node_modules/es-abstract/2018/thisSymbolValue.js new file mode 100644 index 0000000..3c3b347 --- /dev/null +++ b/src/node_modules/es-abstract/2018/thisSymbolValue.js @@ -0,0 +1,19 @@ +'use strict'; + +var callBound = require('../helpers/callBound'); + +var $SymbolValueOf = callBound('Symbol.prototype.valueOf', true); + +var Type = require('./Type'); + +// https://ecma-international.org/ecma-262/9.0/#sec-thissymbolvalue + +module.exports = function thisSymbolValue(value) { + if (!$SymbolValueOf) { + throw new SyntaxError('Symbols are not supported; thisSymbolValue requires that `value` be a Symbol or a Symbol object'); + } + if (Type(value) === 'Symbol') { + return value; + } + return $SymbolValueOf(value); +}; -- cgit