add iarrayenumerator

This commit is contained in:
Rowan 2025-05-01 16:32:08 -05:00
parent c4e96e6cf6
commit 7f5561a0cc

View file

@ -21,6 +21,10 @@ export interface IEnumerator<T> {
toIterator<T>(): Iterator<T>
}
export interface IArrayEnumerator<T> extends IEnumerator<T> {
setIndex(index: number): void
}
export interface IEnumerable<T> {
enumerator(): IEnumerator<T>
}
@ -224,7 +228,7 @@ function toArrayLikeBuffer<T extends ArrayBufferView>(buffer: T): T & ArrayLike<
type ArrayType<T extends ArrayLike<any> | ArrayBufferView> = T extends ArrayLike<infer U> ? U : T extends ArrayBufferTypes ? number : never
export class ArrayEnumerator<T> implements IEnumerator<T>, Iterator<T>, Iterable<T> {
export class ArrayEnumerator<T> implements IArrayEnumerator<T>, Iterator<T>, Iterable<T> {
private _array: ArrayLike<T>
private _index: number = -1