{
  "$comment": "Every error code declared by the tabnas engine, by a grammar plugin, or by a plugin's C ABI. Match on `code`, never on message text: the code is the cross-runtime contract. A plugin code carries no message here — that text lives in the plugin's own catalogue.",
  "site": "https://tabnas.dev",
  "engine": "0.9.0",
  "count": 46,
  "codes": [
    {
      "code": "bad_entity_ref",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/bad_entity_ref/"
    },
    {
      "code": "cancel",
      "message": "parse cancelled",
      "hint": "The parse was cancelled by the caller's parse.budget.onCheck callback\n(or exceeded its configured budget) before completing.",
      "runtime": "both",
      "engine": true,
      "packages": [],
      "abi": [],
      "url": "https://tabnas.dev/errors/cancel/"
    },
    {
      "code": "cdata_terminator_in_text",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/cdata_terminator_in_text/"
    },
    {
      "code": "comment_double_dash",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/comment_double_dash/"
    },
    {
      "code": "csv_extra_field",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/csv"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/csv_extra_field/"
    },
    {
      "code": "csv_missing_field",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/csv"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/csv_missing_field/"
    },
    {
      "code": "duplicate_attribute",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/duplicate_attribute/"
    },
    {
      "code": "duplicate_section",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/ini"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/duplicate_section/"
    },
    {
      "code": "end_of_source",
      "message": "unexpected end of source",
      "hint": "Unexpected end of source.",
      "runtime": "both",
      "engine": true,
      "packages": [],
      "abi": [],
      "url": "https://tabnas.dev/errors/end_of_source/"
    },
    {
      "code": "external_entity_in_attr",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/external_entity_in_attr/"
    },
    {
      "code": "grammar",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [],
      "abi": [
        "@tabnas/abnf",
        "@tabnas/c",
        "@tabnas/chess",
        "@tabnas/css",
        "@tabnas/csv",
        "@tabnas/ebnf",
        "@tabnas/feed",
        "@tabnas/ini",
        "@tabnas/json",
        "@tabnas/json5",
        "@tabnas/jsonc",
        "@tabnas/jsonic",
        "@tabnas/jsonl",
        "@tabnas/markdown",
        "@tabnas/proto",
        "@tabnas/toml",
        "@tabnas/xml",
        "@tabnas/yaml",
        "@tabnas/zon"
      ],
      "url": "https://tabnas.dev/errors/grammar/"
    },
    {
      "code": "handle",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [],
      "abi": [
        "@tabnas/abnf",
        "@tabnas/c",
        "@tabnas/chess",
        "@tabnas/css",
        "@tabnas/csv",
        "@tabnas/ebnf",
        "@tabnas/feed",
        "@tabnas/ini",
        "@tabnas/json",
        "@tabnas/json5",
        "@tabnas/jsonc",
        "@tabnas/jsonic",
        "@tabnas/jsonl",
        "@tabnas/markdown",
        "@tabnas/proto",
        "@tabnas/toml",
        "@tabnas/xml",
        "@tabnas/yaml",
        "@tabnas/zon"
      ],
      "url": "https://tabnas.dev/errors/handle/"
    },
    {
      "code": "internal",
      "message": "internal error: {src}",
      "hint": "The parser failed unexpectedly; this is a bug in tabnas\nor a plugin, not in your input.",
      "runtime": "go",
      "engine": true,
      "packages": [],
      "abi": [
        "@tabnas/abnf",
        "@tabnas/c",
        "@tabnas/chess",
        "@tabnas/css",
        "@tabnas/csv",
        "@tabnas/ebnf",
        "@tabnas/feed",
        "@tabnas/ini",
        "@tabnas/json",
        "@tabnas/json5",
        "@tabnas/jsonc",
        "@tabnas/jsonic",
        "@tabnas/jsonl",
        "@tabnas/markdown",
        "@tabnas/proto",
        "@tabnas/toml",
        "@tabnas/xml",
        "@tabnas/yaml",
        "@tabnas/zon"
      ],
      "url": "https://tabnas.dev/errors/internal/"
    },
    {
      "code": "invalid_ascii",
      "message": "invalid ascii escape: {src}",
      "hint": "The escape sequence {src} does not encode a valid ASCII character.",
      "runtime": "both",
      "engine": true,
      "packages": [],
      "abi": [],
      "url": "https://tabnas.dev/errors/invalid_ascii/"
    },
    {
      "code": "invalid_namespace_uri",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/invalid_namespace_uri/"
    },
    {
      "code": "invalid_unicode",
      "message": "invalid unicode escape: {src}",
      "hint": "The escape sequence {src} does not encode a valid unicode code point.",
      "runtime": "both",
      "engine": true,
      "packages": [],
      "abi": [],
      "url": "https://tabnas.dev/errors/invalid_unicode/"
    },
    {
      "code": "invalid_xml_char",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/invalid_xml_char/"
    },
    {
      "code": "json5_empty",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/json5"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/json5_empty/"
    },
    {
      "code": "json5_no_value",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/json5"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/json5_no_value/"
    },
    {
      "code": "lt_in_attr_value",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/lt_in_attr_value/"
    },
    {
      "code": "multisource_cycle",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/multisource"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/multisource_cycle/"
    },
    {
      "code": "multisource_not_found",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/multisource"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/multisource_not_found/"
    },
    {
      "code": "pi_target_invalid",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/pi_target_invalid/"
    },
    {
      "code": "reserved_namespace",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/reserved_namespace/"
    },
    {
      "code": "text_at_top_level",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/text_at_top_level/"
    },
    {
      "code": "unbound_prefix",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/unbound_prefix/"
    },
    {
      "code": "undeclared_entity",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/undeclared_entity/"
    },
    {
      "code": "unexpected",
      "message": "unexpected character(s): {src}",
      "hint": "The character(s) {src} do not match any rule alternative active at\nthis position.",
      "runtime": "both",
      "engine": true,
      "packages": [],
      "abi": [],
      "url": "https://tabnas.dev/errors/unexpected/"
    },
    {
      "code": "unknown",
      "message": "unknown error: {code}",
      "hint": "Unknown error code: {code}\nDetails:\n{details}",
      "runtime": "both",
      "engine": true,
      "packages": [],
      "abi": [],
      "url": "https://tabnas.dev/errors/unknown/"
    },
    {
      "code": "unknown_rule",
      "message": "unknown rule: {rulename}",
      "hint": "No rule named {rulename} is defined.",
      "runtime": "both",
      "engine": true,
      "packages": [],
      "abi": [],
      "url": "https://tabnas.dev/errors/unknown_rule/"
    },
    {
      "code": "unparsed_entity_ref",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/unparsed_entity_ref/"
    },
    {
      "code": "unprintable",
      "message": "unprintable character: {src}",
      "hint": "The character {src} (code point below 32) is not allowed inside a\nstring literal.",
      "runtime": "both",
      "engine": true,
      "packages": [],
      "abi": [],
      "url": "https://tabnas.dev/errors/unprintable/"
    },
    {
      "code": "unterminated_cdata",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/unterminated_cdata/"
    },
    {
      "code": "unterminated_comment",
      "message": "unterminated comment: {src}",
      "hint": "This comment is never closed.",
      "runtime": "both",
      "engine": true,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/unterminated_comment/"
    },
    {
      "code": "unterminated_doctype",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/unterminated_doctype/"
    },
    {
      "code": "unterminated_pi",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/unterminated_pi/"
    },
    {
      "code": "unterminated_section",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/ini"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/unterminated_section/"
    },
    {
      "code": "unterminated_string",
      "message": "unterminated string: {src}",
      "hint": "This string has no end quote.",
      "runtime": "both",
      "engine": true,
      "packages": [],
      "abi": [],
      "url": "https://tabnas.dev/errors/unterminated_string/"
    },
    {
      "code": "usage",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [],
      "abi": [
        "@tabnas/abnf",
        "@tabnas/c",
        "@tabnas/chess",
        "@tabnas/css",
        "@tabnas/csv",
        "@tabnas/ebnf",
        "@tabnas/feed",
        "@tabnas/ini",
        "@tabnas/json",
        "@tabnas/json5",
        "@tabnas/jsonc",
        "@tabnas/jsonic",
        "@tabnas/jsonl",
        "@tabnas/markdown",
        "@tabnas/proto",
        "@tabnas/toml",
        "@tabnas/xml",
        "@tabnas/yaml",
        "@tabnas/zon"
      ],
      "url": "https://tabnas.dev/errors/usage/"
    },
    {
      "code": "xml_invalid_tag",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/xml_invalid_tag/"
    },
    {
      "code": "xml_mismatched_tag",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/xml"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/xml_mismatched_tag/"
    },
    {
      "code": "zon_char",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/zon"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/zon_char/"
    },
    {
      "code": "zon_doc_comment",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/zon"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/zon_doc_comment/"
    },
    {
      "code": "zon_dup_field",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/zon"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/zon_dup_field/"
    },
    {
      "code": "zon_ident",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/zon"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/zon_ident/"
    },
    {
      "code": "zon_number",
      "message": null,
      "hint": null,
      "runtime": null,
      "engine": false,
      "packages": [
        "@tabnas/zon"
      ],
      "abi": [],
      "url": "https://tabnas.dev/errors/zon_number/"
    }
  ]
}
