Lazy list in MoonBit
Dependencies
pub(all) enum LazyList[T] { Nil Cons(T, @CAIMEOX/lazy.LazyLazy[LazyList[T]])}
impl Add for LazyList[T]
fn[T] add(self : LazyList[T], other : LazyList[T]) -> LazyList[T]
impl Eq for LazyList[T]
fn[T : Eq] equal(self : LazyList[T], other : LazyList[T]) -> Bool
impl Show for LazyList[T]
fn[T : Show] output(self : LazyList[T], logger : Logger) -> Unit
fn[T] LazyList::concat(self : LazyList[T], other : LazyList[T]) -> LazyList[T]
fn[T] LazyList::drop(self : LazyList[T], n : Int) -> LazyList[T]
fn[T] LazyList::drop_while(self : LazyList[T], p : (T) -> Bool) -> LazyList[T]
fn[T] LazyList::each(self : LazyList[T], f : (T) -> Unit) -> Unit
fn[T] LazyList::eachi(self : LazyList[T], f : (Int, T) -> Unit) -> Unit
fn[T] LazyList::filter(self : LazyList[T], pred : (T) -> Bool) -> LazyList[T]
fn[T, U] LazyList::flat_map(self : LazyList[T], f : (T) -> LazyList[U]) -> LazyList[U]
fn[T] LazyList::flatten(self : LazyList[LazyList[T]]) -> LazyList[T]
fn[T, U] LazyList::fold_left(self : LazyList[T], f : (U, T) -> U, init~ : U) -> U
fn[T, U] LazyList::fold_right(self : LazyList[T], f : (T, U) -> U, init~ : U) -> U
fn[T] LazyList::from_array(ar : Array[T]) -> LazyList[T]
fn[T] LazyList::from_list(ls : @moonbitlang/core/list.ListList[T]) -> LazyList[T]
fn[T] LazyList::head(self : LazyList[T]) -> T
fn[T] LazyList::index(self : LazyList[T], i : Int) -> T
fn[T] LazyList::length(self : LazyList[T]) -> Int
fn[T, U] LazyList::map(self : LazyList[T], f : (T) -> U) -> LazyList[U]
fn[T] LazyList::split_at(self : LazyList[T], i : Int) -> (LazyList[T], LazyList[T])
fn[T] LazyList::tail(self : LazyList[T]) -> LazyList[T]
fn[T] LazyList::tails(self : LazyList[T]) -> LazyList[LazyList[T]]
fn[T] LazyList::take(self : LazyList[T], n : Int) -> LazyList[T]
fn[T] LazyList::take_while(self : LazyList[T], p : (T) -> Bool) -> LazyList[T]
fn[T] LazyList::to_array(self : LazyList[T]) -> Array[T]
fn[T] LazyList::unfold(self : LazyList[T], f : (LazyList[T]) -> (T, LazyList[T])?) -> LazyList[T]
fn[T, W] LazyList::unzip(self : LazyList[(T, W)]) -> (LazyList[T], LazyList[W])
fn[A, B, C] LazyList::zip_lazy_normal(self : LazyList[A], f : (A, B) -> C, ys : @moonbitlang/core/list.ListList[B]) -> @moonbitlang/core/list.ListList[C]
fn[A, B, C] LazyList::zip_with(self : LazyList[A], ys : LazyList[B], f : (A, B) -> C) -> LazyList[C]
fn[X] default() -> LazyList[X]
fn[X : Add] infinite_stream(start : X, step : X) -> LazyList[X]
fn nats() -> LazyList[Int]
fn[T] repeat(val : T) -> LazyList[T]
fn[X : Add] sum(l : LazyList[X], init~ : X) -> X
fn[T] zip_plus(f : (T, T) -> T, ls1 : LazyList[T], ls2 : LazyList[T]) -> LazyList[T]
Install
Powered by MoonBit
© 2026 mooncakes.io