表示法

语法

以下表示法用于 词法分析器语法 文法片段

表示法示例含义
大写KW_IF, INTEGER_LITERAL由词法分析器产生的词法单元
斜体驼峰式LetStatement, Item一个语法生成式
字符串x, while, *精确的字符或字符序列
\x\n, \r, \t, \0此转义序列表示的字符
x?pub?一个可选项
x*OuterAttribute*0 个或多个 x
x+MacroMatch+1 个或多个 x
xa..bHEX_DIGIT1..6x 重复 a 到 b 次
|u8 | u16, Block | Item两者中的一个
[ ][b B]列出的任意字符
[ - ][a-z]该范围内的任意字符
~[ ]~[b B]除了列出的字符以外的任意字符
~string~\n, ~*/除了此序列以外的任意字符
( )(, Parameter)?分组项

字符串表生成式

语法中的某些规则——尤其是一元运算符二元运算符关键字——以简化形式给出:作为可打印字符串的列表。这些情况构成了关于词法单元规则的一个子集,并且被认为是词法分析阶段馈送给解析器的结果,该阶段由一个DFA驱动,操作所有此类字符串表条目的析取(disjunction)。

当语法中出现此类使用等宽字体的字符串时,它隐式引用了此类字符串表生成式中的一个成员。有关更多信息,请参阅词法单元