本書的這一節(jié)描述了 Swift 編程語言的形式語法。這里描述的語法是為了幫助您了解該語言的更多細節(jié),而不是讓您直接實現(xiàn)一個解析器或編譯器。
Swift 語言相對較小,這是由于 Swift 代碼中常用的類型、函數(shù)以及運算符都已經(jīng)在 Swift 標準庫中定義了。雖然這些類型、函數(shù)和運算符并不是 Swift 語言自身的一部分,但是它們被廣泛應用于本書的討論和代碼范例中。
用來描述 Swift 編程語言形式語法的符號遵循下面幾個約定:
→
)用來標記語法產(chǎn)式,可以理解為“可由……構(gòu)成”。|
)分隔。當可選用的語法產(chǎn)式太多時,為了閱讀方便,它們將被拆分為多行語法產(chǎn)式規(guī)則。opt
來標記。舉個例子,getter-setter 方法塊的語法定義如下:
getter-setter 方法塊語法
getter-setter 方法塊 → { getter 子句 setter 子句可選 } | { setter 子句 getter 子句 }
這個定義表明,一個 getter-setter 方法塊可以由一個 getter 分句后跟一個可選的 setter 分句構(gòu)成,然后用大括號括起來,或者由一個 setter 分句后跟一個 getter 分句構(gòu)成,然后用大括號括起來。上述的語法產(chǎn)式等價于下面的兩個語法產(chǎn)式, :
getter-setter 方法塊語法