# `Date.Range`
[🔗](https://github.com/elixir-lang/elixir/blob/v1.20.0-rc.3/lib/elixir/lib/calendar/date_range.ex#L5)

Returns an inclusive range between dates.

Ranges must be created with the `Date.range/2` or `Date.range/3` function.

The following fields are public:

  * `:first` - the initial date on the range
  * `:last` - the last date on the range
  * `:step` - (since v1.12.0) the step

The remaining fields are private and should not be accessed.

# `t`

```elixir
@type t() :: %Date.Range{
  first: Date.t(),
  first_in_iso_days: days(),
  last: Date.t(),
  last_in_iso_days: days(),
  step: pos_integer() | neg_integer()
}
```

---

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