Array

public func new<T>() : [T]

public func repeat<T>(size : Nat, initValue : T) : [var T]

public func generate<T>(size : Nat, generator : Nat -> T) : [T]

public func generateVar<T>(size : Nat, generator : Nat -> T) : [var T]

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

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

public func equal<T>(
  array1 : [T],
  array2 : [T],
  equal : (T, T) -> Bool
) : Bool

public func find<T>(array : [T], predicate : T -> Bool) : ?T

public func append<T>(array1 : [T], array2 : [T]) : [T]

public func sort<T>(array : [T], compare : (T, T) -> Order.Order) : [T]

public func sortInPlace<T>(array : [var T], compare : (T, T) -> Order.Order) : ()

public func reverse<T>(array : [T]) : [T]

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

public func map<T, Y>(array : [T], f : T -> Y) : [Y]

public func filter<T>(array : [T], f : T -> Bool) : [T]

public func filterMap<T, Y>(array : [T], f : T -> ?Y) : [Y]

public func mapResult<T, Y, E>(array : [T], f : T -> Result.Result<Y, E>) : Result.Result<[Y], E>

public func mapEntries<T, Y>(array : [T], f : (T, Nat) -> Y) : [Y]

public func chain<T, Y>(array : [T], k : T -> [Y]) : [Y]

public func foldLeft<T, A>(
  array : [T],
  base : A,
  combine : (A, T) -> A
) : A

public func foldRight<T, A>(
  array : [T],
  base : A,
  combine : (T, A) -> A
) : A

public func flatten<T>(arrays : Iter.Iter<[T]>) : [T]

public func singleton<T>(element : T) : [T]

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

public func keys<T>(array : [T]) : Iter.Iter<Nat>

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

public func size<T>(array : [T]) : Nat

public func subArray<T>(
  array : [T],
  start : Nat,
  length : Nat
) : [T]

public func indexOf<T>(
  element : T,
  array : [T],
  equal : (T, T) -> Bool
) : ?Nat

public func nextIndexOf<T>(
  element : T,
  array : [T],
  fromInclusive : Nat,
  equal : (T, T) -> Bool
) : ?Nat

public func lastIndexOf<T>(
  element : T,
  array : [T],
  equal : (T, T) -> Bool
) : ?Nat

public func prevIndexOf<T>(
  element : T,
  array : [T],
  fromExclusive : Nat,
  equal : (T, T) -> Bool
) : ?Nat

public func slice<T>(
  array : [T],
  fromInclusive : Nat,
  toExclusive : Nat
) : Iter.Iter<T>

public func take<T>(array : [T], length : Int) : [T]