# Interval v2.0.4 - Table of Contents

> Interval/range operations on Decimal, DateTime, Integer, Float, etc.
Ecto support for Postgres range types like int4range, daterange, tstzrange, etc.
Implement intervals over your own custom data.

## Pages

- [Readme](readme.md)
- [Changelog](changelog.md)

## Modules

- [Interval](Interval.md): Interval - A library for working with intervals in Elixir.
- [Interval.Behaviour](Interval.Behaviour.md): Defines the Interval behaviour.
You'll usually want to use this behaviour by using
- [Interval.DateInterval](Interval.DateInterval.md): Represents a discrete interval containing `Date`
- [Interval.DateTimeInterval](Interval.DateTimeInterval.md): Represents a continuous interval containing `DateTime`
- [Interval.DecimalInterval](Interval.DecimalInterval.md): Represents a continuous interval containing `Decimal`
- [Interval.FloatInterval](Interval.FloatInterval.md): Represents a continuous interval containing `Float`
- [Interval.IntegerInterval](Interval.IntegerInterval.md): Represents a discrete interval containing `Integer`
- [Interval.Macro](Interval.Macro.md): Macro helpers for Interval

- [Interval.NaiveDateTimeInterval](Interval.NaiveDateTimeInterval.md): Represents a continuous interval containing `NaiveDateTime`
- [Interval.Support.EctoType](Interval.Support.EctoType.md): Implements support for auto-implementing Ecto.Type.
- [Interval.Support.Jason](Interval.Support.Jason.md): Automatically generate Jason.Encoder for intervals

- Exceptions
  - [Interval.IntervalOperationError](Interval.IntervalOperationError.md)
  - [Interval.IntervalParseError](Interval.IntervalParseError.md)

