Nothing on this page is maintained by hand. Each file is produced by a command in the compiler repository and copied here from a pinned checkout, so the catalogue you read is the catalogue that build ships. The two markdown files are served as plain text, which is what they are.
Catalogues
- Diagnostics (117 codes, 122 KiB of text)
- Every error the compiler can emit, with the explanation
wolf --explain E0001prints. Each code ships with that explanation and at least one reviewed snapshot fixture, and CI enforces both, so a code cannot exist without a documented meaning and a test that pins its wording. - Warnings (31 codes, 21 KiB of text)
- Every warning, with the severity contract in front of the catalogue: an
error rejects meaning and cannot be configured away, and a warning marks a
program that is legal and inadvisable. The file also covers the level
hierarchy, what an escape hatch is for, and which fixes
wolf fixwill apply on its own.
Both are generated by cargo xtask diag-catalog from the
compiler's diagnostic registry. The reference interpreter chooses some of its
own codes for the phases it implements, and it publishes those choices rather
than leaving them to be discovered in a divergence report.
Standard library reference
There is no generated reference for the standard library on this site yet.
The compiler ships wolf doc, which produces static HTML and a
stable JSON index from doc comments and the signatures the compiler resolved,
and what the compiler repository has committed under
docs/api/ is that tool's test fixture: a two-module package
called demo/doc with seven items in it. The build copies it to
/docs/api/ because it is what exists. Read it as a
sample of the output format.
For the library surface as it stands, the book's chapters and the
specification are the reference, and
wolf doc run against a checkout is the way to get the rest.
Elsewhere in the repository
Two files that are not copied here are worth knowing about. The lint triage
ledger records every case of the language permitting something that turned out
to be wrong or confusing, each with a verdict, and it is the evidence behind
the warning catalogue. The release audit is a criteria table for the v0.1.0
tag, with a red row on it. Both live under docs/ in
wolf-lang.