# `Minga.LSP.DocumentHighlight`
[🔗](https://github.com/jsmestad/minga/blob/main/lib/minga/lsp/document_highlight.ex#L1)

A document highlight range from the LSP server.

Represents a single occurrence of a symbol in the current buffer,
returned by `textDocument/documentHighlight`. The `kind` field
distinguishes read references from write references.

# `kind`

```elixir
@type kind() :: :text | :read | :write
```

LSP document highlight kind.

# `t`

```elixir
@type t() :: %Minga.LSP.DocumentHighlight{
  end_col: non_neg_integer(),
  end_line: non_neg_integer(),
  kind: kind(),
  start_col: non_neg_integer(),
  start_line: non_neg_integer()
}
```

# `from_lsp`

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

Parses an LSP DocumentHighlight JSON object into a struct.

---

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