Source: rsscript-syntax lexer tables.
This is a generated lexical reference, not a replacement for the parser. The parser and tests remain authoritative for production grammar and recovery. Its machine-readable companion is grammar.json, marked partial because it does not claim a full EBNF.
breakcontinueelseforifinloopmatchreturnwhile
classfeaturesfnhandleletresourcestruct
asasyncdropeffectspubwith
freshlocalmanagemutreadtakeweak
await(control)native(modifier)
The lexer leaves these as plain identifiers; the parser matches them as keywords in specific positions. They are declaration, clause, ownership and structured-concurrency words, and a program that uses one as an ordinary name will not parse where the parser expects the keyword.
captures(modifier)const(declaration)derives(modifier)impl(declaration)module(declaration)noescape(ownership)opaque(declaration)owned(ownership)protocol(declaration)retains(modifier)select(control)spawn(control)sum(declaration)task_group(control)type(declaration)use(declaration)view(declaration)
ErrNoneOkSomeUnitfalsetrue