Provided by: erlang-manpages_18.3-dfsg-1ubuntu3.1_all bug

NAME

       sets - Functions for Set Manipulation

DESCRIPTION

       Sets  are  collections of elements with no duplicate elements. The representation of a set
       is not defined.

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

DATA TYPES

       set(Element)

              As returned by new/0.

       set() = set(term())

EXPORTS

       new() -> set()

              Returns a new empty set.

       is_set(Set) -> boolean()

              Types:

                 Set = term()

              Returns true if Set is a set of elements, otherwise false.

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

              Types:

                 Set = set()

              Returns the number of elements in Set.

       to_list(Set) -> List

              Types:

                 Set = set(Element)
                 List = [Element]

              Returns  the  elements  of  Set  as  a  list. The order of the returned elements is
              undefined.

       from_list(List) -> Set

              Types:

                 List = [Element]
                 Set = set(Element)

              Returns a set of the elements in List.

       is_element(Element, Set) -> boolean()

              Types:

                 Set = set(Element)

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

       add_element(Element, Set1) -> Set2

              Types:

                 Set1 = Set2 = set(Element)

              Returns a new set formed from Set1 with Element inserted.

       del_element(Element, Set1) -> Set2

              Types:

                 Set1 = Set2 = set(Element)

              Returns Set1, but with Element removed.

       union(Set1, Set2) -> Set3

              Types:

                 Set1 = Set2 = Set3 = set(Element)

              Returns the merged (union) set of Set1 and Set2.

       union(SetList) -> Set

              Types:

                 SetList = [set(Element)]
                 Set = set(Element)

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

       intersection(Set1, Set2) -> Set3

              Types:

                 Set1 = Set2 = Set3 = set(Element)

              Returns the intersection of Set1 and Set2.

       intersection(SetList) -> Set

              Types:

                 SetList = [set(Element), ...]
                 Set = set(Element)

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

       is_disjoint(Set1, Set2) -> boolean()

              Types:

                 Set1 = Set2 = set(Element)

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

       subtract(Set1, Set2) -> Set3

              Types:

                 Set1 = Set2 = Set3 = set(Element)

              Returns only the elements of Set1 which are not also elements of Set2.

       is_subset(Set1, Set2) -> boolean()

              Types:

                 Set1 = Set2 = set(Element)

              Returns true when every element of Set11 is also a member of Set2, otherwise false.

       fold(Function, Acc0, Set) -> Acc1

              Types:

                 Function = fun((Element, AccIn) -> AccOut)
                 Set = set(Element)
                 Acc0 = Acc1 = AccIn = AccOut = Acc

              Fold  Function  over  every  element  in  Set  returning  the  final  value  of the
              accumulator. The evaluation order is undefined.

       filter(Pred, Set1) -> Set2

              Types:

                 Pred = fun((Element) -> boolean())
                 Set1 = Set2 = set(Element)

              Filter elements in Set1 with boolean function Pred.

SEE ALSO

       ordsets(3erl), gb_sets(3erl)