Blame view

node_modules/es6-symbol/is-implemented.js 474 Bytes
f7563de62   Palak Handa   first commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  'use strict';
  
  var validTypes = { object: true, symbol: true };
  
  module.exports = function () {
  	var symbol;
  	if (typeof Symbol !== 'function') return false;
  	symbol = Symbol('test symbol');
  	try { String(symbol); } catch (e) { return false; }
  
  	// Return 'true' also for polyfills
  	if (!validTypes[typeof Symbol.iterator]) return false;
  	if (!validTypes[typeof Symbol.toPrimitive]) return false;
  	if (!validTypes[typeof Symbol.toStringTag]) return false;
  
  	return true;
  };