summaryrefslogtreecommitdiff
path: root/tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/shim.js
diff options
context:
space:
mode:
Diffstat (limited to 'tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/shim.js')
-rw-r--r--tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/shim.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/shim.js b/tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/shim.js
new file mode 100644
index 0000000000..45823be51f
--- /dev/null
+++ b/tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/shim.js
@@ -0,0 +1,21 @@
+// Taken from: https://github.com/paulmillr/es6-shim/
+
+'use strict';
+
+var toInteger = require('../../../number/to-integer')
+ , toPosInt = require('../../../number/to-pos-integer')
+ , validValue = require('../../../object/valid-value')
+
+ , max = Math.max, min = Math.min;
+
+module.exports = function (value/*, start, end*/) {
+ var o = validValue(this), start = arguments[1], end = arguments[2]
+ , l = toPosInt(o.length), relativeStart, i;
+
+ start = (start === undefined) ? 0 : toInteger(start);
+ end = (end === undefined) ? l : toInteger(end);
+
+ relativeStart = start < 0 ? max(l + start, 0) : min(start, l);
+ for (i = relativeStart; i < l && i < end; ++i) o[i] = value;
+ return o;
+};