# `Otera.Cycler`
[🔗](https://github.com/georgeguimaraes/otera/blob/v0.1.0/lib/otera/cycler.ex#L1)

The `cycler(*items)` object of Jinja2. `next()` gives the current item and moves to the next one, `reset()` goes back to the first item, and `current` is the item that `next()` gives next. The position lives in `Otera.State`.

# `call`

```elixir
@spec call(%Otera.Cycler{items: term(), ref: term()}, String.t()) :: term()
```

Calls the method `next` or `reset`.

# `get`

```elixir
@spec get(%Otera.Cycler{items: term(), ref: term()}, String.t()) :: term()
```

Returns the attribute `name` of `cycler`.

# `new`

```elixir
@spec new(list()) :: %Otera.Cycler{items: term(), ref: term()}
```

Makes a cycler over `items`.

---

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