14 lines
		
	
	
		
			526 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			14 lines
		
	
	
		
			526 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
'use strict';
 | 
						|
var create = require('./_object-create');
 | 
						|
var descriptor = require('./_property-desc');
 | 
						|
var setToStringTag = require('./_set-to-string-tag');
 | 
						|
var IteratorPrototype = {};
 | 
						|
 | 
						|
// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
 | 
						|
require('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });
 | 
						|
 | 
						|
module.exports = function (Constructor, NAME, next) {
 | 
						|
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
 | 
						|
  setToStringTag(Constructor, NAME + ' Iterator');
 | 
						|
};
 |