# `Tempo.MaterialisationError`
[🔗](https://github.com/kipcole9/tempo/blob/v0.20.0/lib/tempo/exception/materialisation_error.ex#L1)

Exception raised when a value cannot be materialised into an
explicit `Tempo.Interval` or `Tempo.IntervalSet`.

Reasons include a bare `Tempo.Duration` (no time-line anchor),
a one-of `Tempo.Set` (epistemic disjunction, not an interval
list), a `Tempo` already at its finest resolution (no finer unit
to bound the implicit span), and an unanchored group (e.g.
`5G10DU` — days 41..50 with no year/month to bound the span).

# `reason`

```elixir
@type reason() ::
  :bare_duration
  | :one_of_set
  | :finest_resolution
  | :unanchored_group
  | atom()
  | String.t()
```

# `t`

```elixir
@type t() :: %Tempo.MaterialisationError{
  __exception__: term(),
  reason: reason() | nil,
  value: any() | nil
}
```

---

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