# `AtpClient.Lint.Symbol`
[🔗](https://github.com/jcschuster/AtpClient/blob/v0.1.3/lib/atp_client/lint/symbol.ex#L1)

A symbol extracted from a TPTP source, currently always a declared
type coming from a `type`-role statement.

Powers the Monaco hover provider (hovering over `plus` in a formula
shows `plus : nat > (nat > nat)`) and completion provider (declared
symbols are offered alongside keywords) in the Smart Cell.

`type` is the right-hand side of the declaration, reconstructed from
the token stream — so whitespace is normalized but the logical
content matches the source.

# `kind`

```elixir
@type kind() :: :type_decl
```

# `t`

```elixir
@type t() :: %AtpClient.Lint.Symbol{
  column: pos_integer(),
  kind: kind(),
  line: pos_integer(),
  name: String.t(),
  type: String.t() | nil
}
```

---

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