# `ToonEx.Encode.Writer`
[🔗](https://github.com/ohhi-vn/toon_ex/blob/v1.6.0/lib/toon_ex/encode/writer.ex#L1)

Writer for building TOON output incrementally with efficient indentation handling.

# `t`

```elixir
@type t() :: %ToonEx.Encode.Writer{
  indent_cache: map(),
  indent_string: String.t(),
  lines: [iodata()]
}
```

# `empty?`

# `line_count`

# `new`

# `push`

# `push_many`

# `to_iodata`

```elixir
@spec to_iodata(t()) :: iodata()
```

# `to_lines`

```elixir
@spec to_lines(t()) :: [iodata()]
```

# `to_string`

```elixir
@spec to_string(t()) :: String.t()
```

---

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