aboutsummaryrefslogtreecommitdiff
path: root/node_modules/core-js/modules/es6.reflect.enumerate.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/core-js/modules/es6.reflect.enumerate.js')
-rw-r--r--node_modules/core-js/modules/es6.reflect.enumerate.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/node_modules/core-js/modules/es6.reflect.enumerate.js b/node_modules/core-js/modules/es6.reflect.enumerate.js
new file mode 100644
index 000000000..abdb132d6
--- /dev/null
+++ b/node_modules/core-js/modules/es6.reflect.enumerate.js
@@ -0,0 +1,26 @@
+'use strict';
+// 26.1.5 Reflect.enumerate(target)
+var $export = require('./_export')
+ , anObject = require('./_an-object');
+var Enumerate = function(iterated){
+ this._t = anObject(iterated); // target
+ this._i = 0; // next index
+ var keys = this._k = [] // keys
+ , key;
+ for(key in iterated)keys.push(key);
+};
+require('./_iter-create')(Enumerate, 'Object', function(){
+ var that = this
+ , keys = that._k
+ , key;
+ do {
+ if(that._i >= keys.length)return {value: undefined, done: true};
+ } while(!((key = keys[that._i++]) in that._t));
+ return {value: key, done: false};
+});
+
+$export($export.S, 'Reflect', {
+ enumerate: function enumerate(target){
+ return new Enumerate(target);
+ }
+}); \ No newline at end of file