The % type declaration specifies that an expression non-terminal also uses the value member of the union. type声明表明了expression非终结符还使用了union的value成员。
If this is not desirable, we can pass constructor arguments to the non-terminal. 如果这不是我们想要的,我们可以把构造函数的参数传给非终结符。
By contrast, value is a non-terminal, which is created only by assembling it from terminals. 相反,value是一个非终结符,它是通过装配终结符而创建出来的。
The headerline non-terminal, in turn, requires a header name, a header body, and optional continuations. headerline是非终极符(non-terminal),它依次需要有一个标题名称、标题主体以及可选的附加部分。
Of course, this doesn't solve one last problem : the starting non-terminal expression has nowhere to return to, so you will need to do something with the values it produces. 当然,这不能解决一个最终问题:最前面的非终结符表达式没有任何地方可以返回,所以您应该处理它生成的值。