PageRenderTime 23ms CodeModel.GetById 14ms app.highlight 5ms RepoModel.GetById 2ms app.codeStats 0ms

/node_modules/babel-polyfill/node_modules/core-js/library/modules/_to-primitive.js

https://bitbucket.org/worklabschd/bingle_customer2
JavaScript | 12 lines | 9 code | 0 blank | 3 comment | 12 complexity | 17937961361e9bead036928dc1663206 MD5 | raw file
 1// 7.1.1 ToPrimitive(input [, PreferredType])
 2var isObject = require('./_is-object');
 3// instead of the ES6 spec version, we didn't implement @@toPrimitive case
 4// and the second argument - flag - preferred type is a string
 5module.exports = function (it, S) {
 6  if (!isObject(it)) return it;
 7  var fn, val;
 8  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
 9  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
10  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
11  throw TypeError("Can't convert object to primitive value");
12};