Module fst::set
[−]
[src]
Set operations implemented by finite state transducers.
This API provided by this sub-module is close in spirit to the API
provided by
std::collections::BTreeSet
.
The principle difference, as with everything else in this crate, is that
operations are performed on streams of byte strings instead of generic
iterators. Another difference is that most of the set operations (union,
intersection, difference and symmetric difference) work on multiple sets at
the same time, instead of two.
Overview of types
Set
is a read only interface to pre-constructed sets. SetBuilder
is
used to create new sets. (Once a set is created, it can never be modified.)
Stream
is a stream of values that originated from a set (analogous to an
iterator). StreamBuilder
builds range queries. OpBuilder
collects a set
of streams and executes set operations like union
or intersection
on
them. The rest of the types are streams for set operations.
Structs
Difference |
A stream of set difference over multiple streams in lexicographic order. |
Intersection |
A stream of set intersection over multiple streams in lexicographic order. |
OpBuilder |
A builder for collecting set streams on which to perform set operations. |
Set |
Set is a lexicographically ordered set of byte strings. |
SetBuilder |
A builder for creating a set. |
Stream |
A lexicographically ordered stream of keys from a set. |
StreamBuilder |
A builder for constructing range queries on streams. |
SymmetricDifference |
A stream of set symmetric difference over multiple streams in lexicographic order. |
Union |
A stream of set union over multiple streams in lexicographic order. |