Provided by: erlang-manpages_24.3.4.1+dfsg-1_all bug

NAME

       ordsets - Functions for manipulating sets as ordered lists.

DESCRIPTION

       Sets are collections of elements with no duplicate elements. An ordset is a representation
       of a set, where an ordered list is used to store the elements of the set. An ordered  list
       is  more  efficient  than  an unordered list. Elements are ordered according to the Erlang
       term order.

       This module provides the same interface as  the  sets(3erl)  module  but  with  a  defined
       representation.  One  difference is that while sets considers two elements as different if
       they do not match (=:=), this module considers two elements as different if  and  only  if
       they do not compare equal (==).

DATA TYPES

       ordset(T) = [T]

              As returned by new/0.

EXPORTS

       add_element(Element, Ordset1) -> Ordset2

              Types:

                 Element = E
                 Ordset1 = ordset(T)
                 Ordset2 = ordset(T | E)

              Returns a new ordered set formed from Ordset1 with Element inserted.

       del_element(Element, Ordset1) -> Ordset2

              Types:

                 Element = term()
                 Ordset1 = Ordset2 = ordset(T)

              Returns Ordset1, but with Element removed.

       filter(Pred, Ordset1) -> Ordset2

              Types:

                 Pred = fun((Element :: T) -> boolean())
                 Ordset1 = Ordset2 = ordset(T)

              Filters elements in Ordset1 with boolean function Pred.

       fold(Function, Acc0, Ordset) -> Acc1

              Types:

                 Function =
                     fun((Element :: T, AccIn :: term()) -> AccOut :: term())
                 Ordset = ordset(T)
                 Acc0 = Acc1 = term()

              Folds  Function  over  every  element  in Ordset and returns the final value of the
              accumulator.

       from_list(List) -> Ordset

              Types:

                 List = [T]
                 Ordset = ordset(T)

              Returns an ordered set of the elements in List.

       intersection(OrdsetList) -> Ordset

              Types:

                 OrdsetList = [ordset(term()), ...]
                 Ordset = ordset(term())

              Returns the intersection of the non-empty list of sets.

       intersection(Ordset1, Ordset2) -> Ordset3

              Types:

                 Ordset1 = Ordset2 = Ordset3 = ordset(term())

              Returns the intersection of Ordset1 and Ordset2.

       is_disjoint(Ordset1, Ordset2) -> boolean()

              Types:

                 Ordset1 = Ordset2 = ordset(term())

              Returns true if Ordset1 and Ordset2 are disjoint  (have  no  elements  in  common),
              otherwise false.

       is_element(Element, Ordset) -> boolean()

              Types:

                 Element = term()
                 Ordset = ordset(term())

              Returns true if Element is an element of Ordset, otherwise false.

       is_empty(Ordset) -> boolean()

              Types:

                 Ordset = ordset(term())

              Returns true if Ordset is an empty set, otherwise false.

       is_set(Ordset) -> boolean()

              Types:

                 Ordset = term()

              Returns true if Ordset is an ordered set of elements, otherwise false.

       is_subset(Ordset1, Ordset2) -> boolean()

              Types:

                 Ordset1 = Ordset2 = ordset(term())

              Returns  true  when every element of Ordset1 is also a member of Ordset2, otherwise
              false.

       new() -> []

              Returns a new empty ordered set.

       size(Ordset) -> integer() >= 0

              Types:

                 Ordset = ordset(term())

              Returns the number of elements in Ordset.

       subtract(Ordset1, Ordset2) -> Ordset3

              Types:

                 Ordset1 = Ordset2 = Ordset3 = ordset(term())

              Returns only the elements of Ordset1 that are not also elements of Ordset2.

       to_list(Ordset) -> List

              Types:

                 Ordset = ordset(T)
                 List = [T]

              Returns the elements of Ordset as a list.

       union(OrdsetList) -> Ordset

              Types:

                 OrdsetList = [ordset(T)]
                 Ordset = ordset(T)

              Returns the merged (union) set of the list of sets.

       union(Ordset1, Ordset2) -> Ordset3

              Types:

                 Ordset1 = ordset(T1)
                 Ordset2 = ordset(T2)
                 Ordset3 = ordset(T1 | T2)

              Returns the merged (union) set of Ordset1 and Ordset2.

SEE ALSO

       gb_sets(3erl), sets(3erl)