19 lines
		
	
	
		
			358 B
		
	
	
	
		
			Haxe
		
	
	
	
	
	
		
		
			
		
	
	
			19 lines
		
	
	
		
			358 B
		
	
	
	
		
			Haxe
		
	
	
	
	
	
|  | package haxe.iterators; | ||
|  | 
 | ||
|  | class RestKeyValueIterator<T> { | ||
|  | 	final args:Rest<T>; | ||
|  | 	var current:Int = 0; | ||
|  | 
 | ||
|  | 	@:allow(haxe.Rest) | ||
|  | 	inline function new(args:Any) { | ||
|  | 		this.args = args; | ||
|  | 	} | ||
|  | 
 | ||
|  | 	public inline function hasNext():Bool { | ||
|  | 		return current < args.length; | ||
|  | 	} | ||
|  | 
 | ||
|  | 	public inline function next():{key:Int, value:T} { | ||
|  | 		return {key:current, value:args[current++]}; | ||
|  | 	} | ||
|  | } |