13 lines
		
	
	
		
			271 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			13 lines
		
	
	
		
			271 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
function l(e, r = 0) {
 | 
						|
  const t = Array.isArray(e) ? e : e.split(`
 | 
						|
`), n = {
 | 
						|
    index: r - 1,
 | 
						|
    next: () => (n.index++, n.index >= t.length ? null : t[n.index]),
 | 
						|
    clone: (i) => l(e, i == null ? r : n.index)
 | 
						|
  };
 | 
						|
  return n;
 | 
						|
}
 | 
						|
export {
 | 
						|
  l as createStringReader
 | 
						|
};
 |