| 846 | module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCE){ |
| 847 | require('./$.iter-create')(Constructor, NAME, next); |
| 848 | var createMethod = function(kind){ |
| 849 | switch(kind){ |
| 850 | case KEYS: return function keys(){ return new Constructor(this, kind); }; |
| 851 | case VALUES: return function values(){ return new Constructor(this, kind); }; |
| 852 | } return function entries(){ return new Constructor(this, kind); }; |
| 853 | }; |
| 854 | var TAG = NAME + ' Iterator' |
| 855 | , proto = Base.prototype |
| 856 | , _native = proto[SYMBOL_ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT] |