MoreLabels.Set(3) OCaml library MoreLabels.Set(3)

# [NAME](#NAME)

MoreLabels.Set - no description

# [Module](#Module)

Module MoreLabels.Set

# [Documentation](#Documentation)

Module **Set**  
: **sig end**

Sets over ordered types.

This module implements the set data structure, given a total ordering function over the set elements. All operations over sets are purely applicative (no side-effects). The implementation uses balanced binary trees, and is therefore reasonably efficient: insertion and membership take time logarithmic in the size of the set, for instance.

The **MoreLabels.Set.Make** functor constructs implementations for any type, given a **compare** function. For instance:

```


       module IntPairs =


         struct


           type t = int * int


           let compare (x0,y0) (x1,y1) =


             match Stdlib.compare x0 x1 with


                 0 -> Stdlib.compare y0 y1


               | c -> c


         end




       module PairsSet = Set.Make(IntPairs)




       let m = PairsSet.(empty |> add (2,3) |> add (5,7) |> add (11,13))


     
```

This creates a new module **PairsSet** , with a new type **PairsSet.t** of sets of **int * int** .

*module type OrderedType =* **sig end**

Input signature of the functor **MoreLabels.Set.Make** .

*module type S =* **sig end**

Output signature of the functor **MoreLabels.Set.Make** .

*module Make :* **(Ord : OrderedType) -&gt; sig end**

Functor building an implementation of the set structure given a totally ordered type.

2026-10-23 OCamldoc

---

Document: MoreLabels.Set(3o) from ocaml 5.5.2-r0 (Chainguard OS)
Source: https://github.com/ocaml/ocaml
