1ordsets(3)                 Erlang Module Definition                 ordsets(3)
2
3
4

NAME

6       ordsets - Functions for manipulating sets as ordered lists.
7
8

DESCRIPTION

10       Sets  are collections of elements with no duplicate elements. An ordset
11       is a representation of a set, where an ordered list is  used  to  store
12       the  elements  of  the  set.  An ordered list is more efficient than an
13       unordered list. Elements are  ordered  according  to  the  Erlang  term
14       order.
15
16       This  module provides the same interface as the sets(3) module but with
17       a defined representation. One difference is that while  sets  considers
18       two  elements as different if they do not match (=:=), this module con‐
19       siders two elements as different if and only if  they  do  not  compare
20       equal (==).
21

DATA TYPES

23       ordset(T) = [T]
24
25              As returned by new/0.
26

EXPORTS

28       add_element(Element, Ordset1) -> Ordset2
29
30              Types:
31
32                 Element = E
33                 Ordset1 = ordset(T)
34                 Ordset2 = ordset(T | E)
35
36              Returns  a  new  ordered  set  formed  from Ordset1 with Element
37              inserted.
38
39       del_element(Element, Ordset1) -> Ordset2
40
41              Types:
42
43                 Element = term()
44                 Ordset1 = Ordset2 = ordset(T)
45
46              Returns Ordset1, but with Element removed.
47
48       filter(Pred, Ordset1) -> Ordset2
49
50              Types:
51
52                 Pred = fun((Element :: T) -> boolean())
53                 Ordset1 = Ordset2 = ordset(T)
54
55              Filters elements in Ordset1 with boolean function Pred.
56
57       fold(Function, Acc0, Ordset) -> Acc1
58
59              Types:
60
61                 Function =
62                     fun((Element :: T, AccIn :: term()) -> AccOut :: term())
63                 Ordset = ordset(T)
64                 Acc0 = Acc1 = term()
65
66              Folds Function over every element  in  Ordset  and  returns  the
67              final value of the accumulator.
68
69       from_list(List) -> Ordset
70
71              Types:
72
73                 List = [T]
74                 Ordset = ordset(T)
75
76              Returns an ordered set of the elements in List.
77
78       intersection(OrdsetList) -> Ordset
79
80              Types:
81
82                 OrdsetList = [ordset(term()), ...]
83                 Ordset = ordset(term())
84
85              Returns the intersection of the non-empty list of sets.
86
87       intersection(Ordset1, Ordset2) -> Ordset3
88
89              Types:
90
91                 Ordset1 = Ordset2 = Ordset3 = ordset(term())
92
93              Returns the intersection of Ordset1 and Ordset2.
94
95       is_disjoint(Ordset1, Ordset2) -> boolean()
96
97              Types:
98
99                 Ordset1 = Ordset2 = ordset(term())
100
101              Returns  true  if Ordset1 and Ordset2 are disjoint (have no ele‐
102              ments in common), otherwise false.
103
104       is_element(Element, Ordset) -> boolean()
105
106              Types:
107
108                 Element = term()
109                 Ordset = ordset(term())
110
111              Returns true if Element  is  an  element  of  Ordset,  otherwise
112              false.
113
114       is_empty(Ordset) -> boolean()
115
116              Types:
117
118                 Ordset = ordset(term())
119
120              Returns true if Ordset is an empty set, otherwise false.
121
122       is_set(Ordset) -> boolean()
123
124              Types:
125
126                 Ordset = term()
127
128              Returns  true if Ordset is an ordered set of elements, otherwise
129              false.
130
131       is_subset(Ordset1, Ordset2) -> boolean()
132
133              Types:
134
135                 Ordset1 = Ordset2 = ordset(term())
136
137              Returns true when every element of Ordset1 is also a  member  of
138              Ordset2, otherwise false.
139
140       new() -> []
141
142              Returns a new empty ordered set.
143
144       size(Ordset) -> integer() >= 0
145
146              Types:
147
148                 Ordset = ordset(term())
149
150              Returns the number of elements in Ordset.
151
152       subtract(Ordset1, Ordset2) -> Ordset3
153
154              Types:
155
156                 Ordset1 = Ordset2 = Ordset3 = ordset(term())
157
158              Returns  only the elements of Ordset1 that are not also elements
159              of Ordset2.
160
161       to_list(Ordset) -> List
162
163              Types:
164
165                 Ordset = ordset(T)
166                 List = [T]
167
168              Returns the elements of Ordset as a list.
169
170       union(OrdsetList) -> Ordset
171
172              Types:
173
174                 OrdsetList = [ordset(T)]
175                 Ordset = ordset(T)
176
177              Returns the merged (union) set of the list of sets.
178
179       union(Ordset1, Ordset2) -> Ordset3
180
181              Types:
182
183                 Ordset1 = ordset(T1)
184                 Ordset2 = ordset(T2)
185                 Ordset3 = ordset(T1 | T2)
186
187              Returns the merged (union) set of Ordset1 and Ordset2.
188

SEE ALSO

190       gb_sets(3), sets(3)
191
192
193
194Ericsson AB                       stdlib 3.10                       ordsets(3)
Impressum