xb5_bag_node (xb5 v1.0.1)
View SourceAPI for operating over xb5_bag internal nodes directly.
ℹ️ You're likely looking for
xb5_bag.
Summary
Types
-type elixir_reducer(Elem, ElemAcc) :: fun((Elem, ElemAcc) -> elixir_reducer_acc(ElemAcc)).
-type elixir_reducer_acc(ElemAcc) :: {cont, ElemAcc} | {halt, ElemAcc} | {suspend, ElemAcc}.
-type elixir_reducer_continuation(ElemAcc) :: fun((elixir_reducer_acc(ElemAcc)) -> elixir_reducer_result(ElemAcc)).
-type elixir_reducer_result(ElemAcc) :: {done, ElemAcc} | {halted, ElemAcc} | {suspended, ElemAcc, elixir_reducer_continuation(ElemAcc)}.
-opaque iter(Elem)
-opaque t(Elem)
-type take_result(Elem) :: nonempty_improper_list(Elem, t(Elem)).
Functions
-spec elixir_reduce(Fun, Acc, Root) -> Result when Fun :: elixir_reducer(Elem, ElemAcc), Acc :: elixir_reducer_acc(ElemAcc), Root :: t(Elem), Result :: elixir_reducer_result(ElemAcc).
-spec elixir_slice(StartIndex, Length, Step, non_neg_integer(), t(Elem)) -> [Elem] when StartIndex :: non_neg_integer(), Length :: pos_integer(), Step :: pos_integer().
-spec from_ordered_list(non_neg_integer(), [Elem]) -> t(Elem).
-spec iterator_from_nth(pos_integer(), non_neg_integer(), t(Elem), ordered) -> iter(Elem).
-spec larger(_, t(Elem)) -> {found, Elem} | none.
-spec largest(t(Elem)) -> Elem.
-spec map_to_list(fun((Elem) -> MappedElem), t(Elem)) -> [MappedElem].
-spec merge(non_neg_integer(), t(Elem1), non_neg_integer(), t(Elem2)) -> t(Elem1 | Elem2).
-spec new() -> t(_).
-spec nth(pos_integer(), t(E)) -> E.
-spec nth_and_nthp1(pos_integer(), t(E)) -> nonempty_improper_list(E, E).
-spec rank(_, t(_)) -> pos_integer() | none.
-spec rank_larger(_, t(E)) -> nonempty_improper_list(pos_integer(), E) | none.
-spec rank_smaller(_, t(E)) -> nonempty_improper_list(pos_integer(), E) | none.
-spec smaller(_, t(Elem)) -> {found, Elem} | none.
-spec smallest(t(Elem)) -> Elem.
-spec structural_stats(t(_)) -> xb5_structural_stats:t().
-spec take_largest(t(Elem)) -> take_result(Elem).
-spec take_smallest(t(Elem)) -> take_result(Elem).
-spec to_list(t(Elem)) -> [Elem].