UNPKG

spica

Version:

Supervisor, Coroutine, Channel, select, AtomicPromise, Cancellation, Cache, List, Queue, Stack, and some utils.

16 lines (14 loc) 558 B
import { Sequence } from '../../core'; import { compose } from '../../../../helper/compose'; compose(Sequence, class <a, z> extends Sequence<a, z> { public override drop(n: number): Sequence<a, Sequence.Iterator<a>> { return new Sequence<a, Sequence.Iterator<a>>((iter = () => this.iterate(), cons) => Sequence.Iterator.when( iter(), () => cons(), (thunk, recur) => Sequence.Thunk.index(thunk) < n ? recur() : cons(Sequence.Thunk.value(thunk), Sequence.Thunk.iterator(thunk)))); } });