API Reference Tempo SQL v#0.1.0

View Source

Modules

Ecto.ParameterizedType for persisting a Tempo.Interval.t/0 as a PostgreSQL tstzrange value.

Ecto.ParameterizedType for persisting a Tempo.IntervalSet.t/0 as a PostgreSQL tstzmultirange value (PostgreSQL 14+).

Ecto query fragments for PostgreSQL range operators, named after Allen's interval algebra so queries read as English sentences.

Ecto query fragments for the tempo_range and tempo_multirange composite types — the same Allen-named macros as Tempo.Ecto.QueryAPI, but auto-unwrapping the (column).range / (column).ranges field so Postgres range operators can apply.

Ecto.ParameterizedType for persisting a bare Tempo.t/0 as a PostgreSQL tstzrange.

Ecto.ParameterizedType for the PostgreSQL composite type tempo_multirange — a tstzmultirange paired with a resolution string and jsonb metadata that together round- trip a full %Tempo.IntervalSet{} without information loss.

Ecto.ParameterizedType for the PostgreSQL composite type tempo_range — a tstzrange paired with a Tempo-resolution string and a jsonb metadata column that together preserve the full Tempo shape on round-trip.

Top-level namespace for ex_tempo_sql — Ecto types and migration helpers that persist Tempo values as PostgreSQL range types.

Internal helpers that translate between Tempo.Interval.t/0 endpoints and the DateTime / :unbound values that Postgrex.Range understands.

Shim module that adapts Erlang's built-in :json (OTP 27+) to Postgrex's expected JSON-library interface.

JSON encoding and decoding for the meta column of the tempo_range and tempo_multirange composite types.

Ecto migration helpers for the Tempo PostgreSQL range types.

Raised (or returned from cast/2) when a Tempo value cannot be stored in a PostgreSQL range type.