Iter

Iterators

type Iter<T> = Type.Iter<T>

class range(fromInclusive : Int, toExclusive : Int)

class rangeRev(fromInclusive : Int, toExclusive : Int)

public func forEach<T>(iter : Iter<T>, f : (T, Nat) -> ())

public func size<T>(iter : Iter<T>) : Nat

public func map<T1, T2>(iter : Iter<T1>, f : T1 -> T2) : Iter<T2>

public func filter<T>(iter : Iter<T>, f : T -> Bool) : Iter<T>

public func filterMap<T1, T2>(iter : Iter<T1>, f : T1 -> ?T2) : Iter<T2>

public func infinite<T>(x : T) : Iter<T>

public func singleton<T>(x : T) : Iter<T>

public func concat<T>(a : Iter<T>, b : Iter<T>) : Iter<T>

public func concatAll<T>(iters : [Iter<T>]) : Iter<T>

public func fromArray<T>(array : [T]) : Iter<T>

public func fromVarArray<T>(array : [var T]) : Iter<T>

public func toArray<T>(iter : Iter<T>) : [T]

public func toVarArray<T>(iter : Iter<T>) : [var T]

public func sort<T>(iter : Iter<T>, compare : (T, T) -> Order.Order) : Iter<T>