Maintainers
This section is the reference compendium: the precise, exhaustive description of the language codescan parses. It is written for people who want the full contract — annotation authors looking up an exact rule, and contributors porting, extending, or debugging the parser.
If you are learning codescan by example, start with the Tutorials instead — they show the same concepts as runnable Go with the spec they produce, side by side. The Annotation index cross-references every annotation to both its tutorial and its entry here.
The four documents
- The swagger:* annotation vocabulary: what each produces, where it attaches, and the keywords it admits.
- Per-keyword reference card: every keyword form, its value shape, and the contexts where it is legal.
- The smaller languages embedded in annotation bodies: the Parameters/Responses grammars, YAML surfaces, and prose classification.
- The formal ISO-14977 EBNF the parser implements, from comment preprocessing through the typed walker.
- Annotations — the
swagger:*vocabulary: what each annotation does, where it attaches, its argument shape, and the keywords it admits. The author-facing normative reference. - Keywords — the per-keyword reference card:
every
keyword: valueform, its value shape, and the contexts where it is legal. - Sub-languages — the smaller languages
embedded inside annotation bodies (
Parameters:/Responses:grammars, YAML surfaces, prose classification). - Grammar — the formal ISO-14977 EBNF the parser implements, from comment preprocessing through the typed walker.