词法符号依赖:
一个词法符号需要和一个或者多个后续词法符号匹配,例如配对的圆括号,花括号,方括号和尖括号
示例:
\'(\' expr \')\' // 嵌套表达式
ID \'[\' expr \']\' // 数组索引表达式
\'{\' stat* \'}\' // 花括号包裹的若干语句
\'<\' ID ( \',\' ID )* \'>\' // 泛型声明
嵌套模式:
它是一种自相似的语言结构,例如表达式,Java的内部类,嵌套的代码块及嵌套的Python函数定义
示例:
expr : \'(\' expr \')\' | ID ;
classDef : \'class\' ID \'{\' ( classDef | method | field ) \'}\' ;