summaryrefslogtreecommitdiff
path: root/src/node_modules/es-abstract/test/helpers/createBoundESNamespace.js
blob: 880ba3d5180960e9a360768415e62bbbcade0e4b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
'use strict';

var bind = require('function-bind');

var OwnPropertyKeys = require('../../helpers/OwnPropertyKeys');

module.exports = function createBoundESNamespace(ES) {
	var keys = OwnPropertyKeys(ES);
	var result = {};

	for (var i = 0; i < keys.length; i++) {
		var key = keys[i];
		var prop = ES[key];
		if (typeof prop === 'function') {
			prop = bind.call(prop, undefined);
		}
		result[key] = prop;
	}

	return result;
};