# `RustQ.Rustler.Term`
[🔗](https://github.com/dannote/rustq/blob/v0.11.1/lib/rustq/rustler/term.ex#L1)

Generates Rustler `Term<'a>` builders, decoders, and map access helpers.

Most helpers are authored with `defrust` or RustQ AST. The remaining
`EscapeExpr` fragments are localized Rustler wrapper-boundary escapes for
unsafe raw term construction or caller-supplied decoder expressions.

# `builders`

```elixir
@spec builders(keyword()) :: [RustQ.Rust.AST.Function.t()]
```

Builds safe `Term<'a>` map and struct construction helpers.

# `decoder`

```elixir
@spec decoder(
  atom() | String.t(),
  keyword()
) :: [RustQ.Rust.AST.Struct.t() | RustQ.Rust.AST.Function.t()]
```

Builds a struct and decoder from an atom-keyed Rustler map term.

# `encoder`

```elixir
@spec encoder(
  atom() | String.t(),
  keyword()
) :: RustQ.Rust.AST.Impl.t()
```

Builds a `rustler::Encoder` implementation from structural field metadata.

# `encoder_atom_names`

```elixir
@spec encoder_atom_names(keyword()) :: [String.t()]
```

Returns the Rust atom identifiers referenced by a term encoder manifest.

# `helpers`

```elixir
@spec helpers(keyword()) :: [RustQ.Rust.AST.Function.t()]
```

Builds common map access and term decoding helpers.

---

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