Skip to main content
Latest
File
export interface NumberIterator { hasNext(): boolean; next(): number;}interface PeekingIterator { peek(): number | null;
next(): number | null;
hasNext(): boolean;}export default PeekingIterator;function PeekingIterator(iterator: NumberIterator): PeekingIterator { let nextElement: null | number = iterator.next(); function peek(): number | null { return nextElement; }
function next(): number | null { const ret = nextElement; nextElement = iterator.hasNext() ? iterator.next() : null; return ret; }
function hasNext(): boolean { return nextElement != null; } return { peek, next, hasNext };}