# `Lemma.ShowRule`
[🔗](https://github.com/lemma/lemma/blob/main/lib/lemma/show_rule.ex#L1)

One local rule in `Lemma.Show.rules`.

`type` is the raw `LemmaType` JSON map. `branches` is the authored default/unless
table as a list of maps (`condition` optional on the default arm; `result` required).
Expression trees stay raw maps tagged by `"type"` (same wire as the JSON API).
`depends_on_rules` is the stored local planning topo list.

# `t`

```elixir
@type t() :: %Lemma.ShowRule{
  branches: [map()],
  depends_on_rules: [String.t()],
  type: map()
}
```

# `from_map`

```elixir
@spec from_map(map()) :: t()
```

Builds a `Lemma.ShowRule` from one value of the decoded `Lemma.show/4` JSON
`"rules"` map.

---

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