# `Tempo.Set`
[🔗](https://github.com/kipcole9/tempo/blob/v0.5.0/lib/tempo/set.ex#L1)

A Tempo-valued set — either **all-of** (`{a, b, c}` in ISO
8601-2, free/busy semantics) or **one-of** (`[a, b, c]`,
epistemic disjunction — "it was one of these, I don't know
which").

`type` carries that distinction. Set operations flatten an
all-of `%Tempo.Set{}` into an IntervalSet; a one-of set is
refused because asserting every member happened contradicts
the user's intent.

# `t`

```elixir
@type t() :: %Tempo.Set{set: [Tempo.t()], type: :all | :one}
```

# `new`

---

*Consult [api-reference.md](api-reference.md) for complete listing*
