api

types

CaseCore ImplementationMain Implementation
Empty SetFiniteIntervalInterval
Fully BoundedFiniteIntervalInterval
Left BoundedHalfIntervalInterval
Right BoundedHalfIntervalInterval
UnboundedEnumIntervalInterval
DisjointIntervalSet

operations

Most operations are provided via traits in order to present a consistent, easy to use API for each type.

OperationOp TypeCoreMainDescription
ContainspredicateTest if A is a superset of B
IntersectspredicateTest for some shared element of A and B
ConnectspredicateTest if sets are connected
WidthmeasureFind the width/diameter/length of a set
CountmeasureCount the elements of a set
IntersectionbinaryThe intersection set of two sets
TryMergebinaryThe union of two connected sets
SplitfunctionTwo sets partitioned by some element
IntoFiniteunaryConvert to a finite interval limited by element type
ComplementunaryThe (possibly disjoint) complement of a set
UnionbinaryThe (possibly disjoint) union of two sets
DifferencebinaryThe (possibly disjoint) difference of set A from B
SymDifferencebinaryThe (possibly disjoint) symmetric difference of two sets