关于语言附注
本书的这一节描述了Swift编程语言的形式语法。这里描述的语法是为了帮您更详细地了解该语言,而不是让您直接实现一个解析器或编译器。 Swift语言相对较小,这是由于在Swift代码中几乎无处不在的许多常见的类型、函数以及运算符都由Swift标准库来定义。虽然这些类型、函数和运算符不是Swift语言本身的一部分,但是它们广泛地被用于本书的讨论和代码范例中。 如何阅读语法用来描述Swift编程语言形式语法的符号遵循下面几个约定: 1.箭头(→)用来标记语法产式,可以被理解为“可以包含”。2.句法范畴由斜体文字表示,并出现在一个语法产式规则两侧。3.义词和标点符号由粗体固定宽度的文本显示和只出现在一个语法产式规则的右边。4.选择性的语法产式由竖线(|)分隔。当可选用的语法产式太长难以阅读时,它们将被拆分为多行语法产式规则。5.在少数情况下,常规字体文字用来描述语法产式规则的右边。6.可选的句法范畴和字面量用尾标opt来标记。举个例子,getter-setter的语法块的定义如下:GRAMMAR OF A GETTER-SETTER BLOCKgetter-setter-block → {- getter-clause -setter-clause-opt -}- | {- setter-clause -getter-clause-}- 这个定义表明,一个getter-setter方法??块可以由一个getter子句后跟一个可选的setter子句构成,用大括号括起来,或者由一个setter子句后跟一个getter子句构成,用大括号括起来。上述的文法产生等价于下面的两个产生,明确阐明如何二中择一:GRAMMAR OF A GETTER-SETTER BLOCK getter-setter-block → {- getter-clause -setter-clause-opt -}-- getter-setter-block → {- setter-clause -getter-clause-}-
本书的这一节描述了Swift编程语言的形式语法。这里描述的语法是为了帮您更详细地了解该语言,而不是让您直接实现一个解析器或编译器。 Swift语言相对较小,这是由于在Swift代码中几乎无处不在的许多常见的类型、函数以及运算符都由Swift标准库来定义。虽然这些类型、函数和运算符不是Swift语言本身的一部分,但是它们广泛地被用于本书的讨论和代码范例中。 如何阅读语法用来描述Swift编程语言形式语法的符号遵循下面几个约定: 1.箭头(→)用来标记语法产式,可以被理解为“可以包含”。2.句法范畴由斜体文字表示,并出现在一个语法产式规则两侧。3.义词和标点符号由粗体固定宽度的文本显示和只出现在一个语法产式规则的右边。4.选择性的语法产式由竖线(|)分隔。当可选用的语法产式太长难以阅读时,它们将被拆分为多行语法产式规则。5.在少数情况下,常规字体文字用来描述语法产式规则的右边。6.可选的句法范畴和字面量用尾标opt来标记。举个例子,getter-setter的语法块的定义如下:GRAMMAR OF A GETTER-SETTER BLOCKgetter-setter-block → {- getter-clause -setter-clause-opt -}- | {- setter-clause -getter-clause-}- 这个定义表明,一个getter-setter方法??块可以由一个getter子句后跟一个可选的setter子句构成,用大括号括起来,或者由一个setter子句后跟一个getter子句构成,用大括号括起来。上述的文法产生等价于下面的两个产生,明确阐明如何二中择一:GRAMMAR OF A GETTER-SETTER BLOCK getter-setter-block → {- getter-clause -setter-clause-opt -}-- getter-setter-block → {- setter-clause -getter-clause-}-










