# `Schooner.Reader.Error`
[🔗](https://github.com/ausimian/schooner/blob/1.1.0/lib/schooner/reader/error.ex#L1)

Exception raised by the reader on malformed source.

Each error carries:

  * `:reason` — a structured term identifying the failure mode (atom or
    tagged tuple); meant to be machine-matchable in tests
  * `:position` — `{line, column}` of the offending input

`:message` is derived from `:reason` and `:position`, so tests can
assert on those fields without coupling to the wording.

---

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