aboutsummaryrefslogtreecommitdiff
path: root/node_modules/es5-ext/string/raw/shim.js
blob: 8c52bb552aa1739098f59be27ae40f6f9ff53c16 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
"use strict";

var toPosInt   = require("../../number/to-pos-integer")
  , validValue = require("../../object/valid-value")
  , reduce     = Array.prototype.reduce;

module.exports = function (callSite /*,  …substitutions*/) {
	var args, rawValue = Object(validValue(Object(validValue(callSite)).raw));
	if (!toPosInt(rawValue.length)) return "";
	args = arguments;
	return reduce.call(rawValue, function (str1, str2, i) {
		return str1 + String(args[i]) + str2;
	});
};