SwiftGG
参与本项目SwiftGG官网SwiftGG微博SwiftGG微信
  • README
  • 欢迎使用 Swift
    • 关于 Swift
    • 版本兼容性
    • Swift 初见
    • Swift 版本历史记录
  • Swift 教程
    • 基础部分
    • 基本运算符
    • 字符串和字符
    • 集合类型
    • 控制流
    • 函数
    • 闭包
    • 枚举
    • 类和结构体
    • 属性
    • 方法
    • 下标
    • 继承
    • 构造过程
    • 析构过程
    • 可选链
    • 错误处理
    • 并发
    • 类型转换
    • 嵌套类型
    • 扩展
    • 协议
    • 泛型
    • 不透明类型
    • 自动引用计数
    • 内存安全
    • 访问控制
    • 高级运算符
  • 语言参考
    • 关于语言参考
    • 词法结构
    • 类型
    • 表达式
    • 语句
    • 声明
    • 特性
    • 模式
    • 泛型参数
    • 语法总结
  • 翻译贡献者
    • 翻译贡献者
由 GitBook 提供支持
在本页
  • 词法结构
  • 类型
  • 表达式
  • 语句
  • 声明
  • 属性
  • 模式
  • 泛型参数

这有帮助吗?

  1. 语言参考

语法总结

上一页泛型参数下一页翻译贡献者

最后更新于2年前

这有帮助吗?

词法结构

空白字符语法

空白字符 → 可选

空白字符项 →

空白字符项 →

空白字符项 →

空白字符项 →

空白字符项 → U+0000,U+0009,U+000B,U+000C 或 U+0020

换行符* → U+000A

换行符 → U+000D

换行符 → U+000D 后面是 U+000A

注释 → //

注释 → /* */

注释内容 → 可选

注释内容项 → 除 U+000A 或 U+000D 外的任何 Unicode 标量值

多行注释内容 → 可选

多行注释内容项 →

多行注释内容项 →

多行注释内容项 → 除 /* 或 */ 外的任何 Unicode 标量值

标识符语法

标识符头(Head) → 大写或者小写字母 A 到 Z

标识符头(Head) → _

标识符头(Head) → U+00A8, U+00AA, U+00AD, U+00AF, U+00B2–U+00B5, or U+00B7–U+00BA

标识符头(Head) → U+00BC–U+00BE, U+00C0–U+00D6, U+00D8–U+00F6, or U+00F8–U+00FF

标识符头(Head) → U+0100–U+02FF, U+0370–U+167F, U+1681–U+180D, or U+180F–U+1DBF

标识符头(Head) → U+1E00–U+1FFF

标识符头(Head) → U+200B–U+200D, U+202A–U+202E, U+203F–U+2040, U+2054, or U+2060–U+206F

标识符头(Head) → U+2070–U+20CF, U+2100–U+218F, U+2460–U+24FF, or U+2776–U+2793

标识符头(Head) → U+2C00–U+2DFF or U+2E80–U+2FFF

标识符头(Head) → U+3004–U+3007, U+3021–U+302F, U+3031–U+303F, or U+3040–U+D7FF

标识符头(Head) → U+F900–U+FD3D, U+FD40–U+FDCF, U+FDF0–U+FE1F, or U+FE30–U+FE44

标识符头(Head) → U+FE47–U+FFFD

标识符头(Head) → U+10000–U+1FFFD, U+20000–U+2FFFD, U+30000–U+3FFFD, or U+40000–U+4FFFD

标识符头(Head) → U+50000–U+5FFFD, U+60000–U+6FFFD, U+70000–U+7FFFD, or U+80000–U+8FFFD

标识符头(Head) → U+90000–U+9FFFD, U+A0000–U+AFFFD, U+B0000–U+BFFFD, or U+C0000–U+CFFFD

标识符头(Head) → U+D0000–U+DFFFD or U+E0000–U+EFFFD

标识符字符 → 数值 0 到 9

标识符字符 → U+0300–U+036F, U+1DC0–U+1DFF, U+20D0–U+20FF, or U+FE20–U+FE2F

字面量语法

布尔字面量 → true | false

空字面量 → nil

整型字面量语法

二进制数字 → 数值 0 到 1

八进字数字 → 数值 0 到 7

十进制数字 → 数值 0 到 9

十六进制数字 → 数值 0 到 9,a 到 f,或者 A 到 F

浮点型字面量语法

浮点数 e → e | E

浮点数 p → p | P

正负号 → + | -

字符串型字面量语法

引用文本项 → 除了 "、**\**、U+000A、U+000D 以外的所有 Unicode 字符

多行引用文本 → 除了 \ 以外的任何 Unicode 标量值

unicode 标量数字 → 一到八位的十六进制数字

正则表达式字面量语法

正则表达式 → 任何正则表达式

运算符语法语法

运算符字符 → / | = | - | + | ! | * | % | < | > | & | | | ^ | ~ | ?

运算符头 → U+00A1–U+00A7

运算符头 → U+00A9 or U+00AB

运算符头 → U+00AC or U+00AE

运算符头 → U+00B0–U+00B1, U+00B6, U+00BB, U+00BF, U+00D7, or U+00F7

运算符头 → U+2016–U+2017 or U+2020–U+2027

运算符头 → U+2030–U+203E

运算符头 → U+2041–U+2053

运算符头 → U+2055–U+205E

运算符头 → U+2190–U+23FF

运算符头 → U+2500–U+2775

运算符头 → U+2794–U+2BFF

运算符头 → U+2E00–U+2E7F

运算符头 → U+3001–U+3003

运算符头 → U+3008–U+3030

运算符字符 → U+0300–U+036F

运算符字符 → U+1DC0–U+1DFF

运算符字符 → U+20D0–U+20FF

运算符字符 → U+FE00–U+FE0F

运算符字符 → U+FE20–U+FE2F

运算符字符 → U+E0100–U+E01EF

点运算符头 → ..

类型

类型语法

类型注解语法

类型标识语法

元组类型语法

函数类型语法

函数类型子句 → ( )

数组类型语法

字典类型语法

可选类型语法

隐式解析可选类型(Implicitly Unwrapped Optional Type)语法

协议合成类型语法

元(Metatype)类型语法

类型继承从句语法

类条件 → class

表达式

表达式语法

前缀表达式语法

try 表达式语法

try 操作符 → try | **try ? ** | ** try ! **

await 表达式语法

await 操作符 → await

中缀表达式语法

赋值操作符语法

赋值运算符 → [=]

条件运算符

类型转换运算符语法

基础表达式语法

字面量表达式语法

字面量表达式 → #file | #filePath | #line | #column | #function | dsohandle

self 表达式语法

self 构造器表达式 → self . init

父类表达式语法

父类构造器表达式 → super . init

闭包表达式语法

捕获说明符 → weak | unowned | unowned(safe) | unowned(unsafe)

隐式成员表达式语法

圆括号表达式语法

元组表达式语法

通配符表达式语法

通配符表达式 → _

key-path表达式语法

选择器表达式语法

后缀表达式表达式语法

函数调用表达式语法

初始化表达式语法

显式成员表达式语法

后缀 self 表达式语法

下标表达式语法

语句

语句语法

循环语句语法

循环语句 → [while 语句](./05_Statements.md#wheetatype 类型 ile-statement)

For-In 循环语法

While 循环语法

Repeat-While 语句语法

分支语句语法

If 语句语法

Guard 语句语法

Switch 语句语法

标签语句语法

控制转移语句语法

Break 语句语法

Continue 语句语法

Fallthrough 语句语法

fallthrough 语句 → fallthrough

Return 语句语法

Throw 语句语法

Defer 语句语法

Do 语句语法

编译控制语句

条件编译块语法

if 指令 → #if

elseif 指令 → #elseif

else 指令 → #else

endif 指令 → #endif

操作系统 → macOS | iOS | watchOS | tvOS

架构 → i386 | x86_64 | arm | arm64

环境 → 模拟器 | macCatalyst

行控制语句语法

行控制语句 → #sourceLocation ( )

行号 → 一个大于 0 的十进制数字

编译期诊断语句语法

可用性条件语法

可用性参数 → *

平台名 → iOS | iOSApplicationExtension

平台名 → macOS | macOSApplicationExtension

平台名 → watchOS

平台名 → tvOS

声明

声明语法

顶级声明语法

代码块语法

导入声明语法

导入类型 → typealias | struct | class | enum | protocol | let | var | func

常数声明语法

变量声明语法

类型别名声明语法

函数声明语法

枚举声明语法

结构体声明语法

类声明语法

协议声明语法

协议属性声明语法

协议方法声明语法

协议构造器声明语法

协议下标声明语法

协议关联类型声明语法

构造器声明语法

析构器声明语法

扩展声明语法

下标声明语法

运算符声明语法

优先级组声明语法

优先级组结合 → associativity : left

优先级组结合 → associativity : right

优先级组结合 → associativity : none

声明修饰符语法

声明修饰符 → class | convenience | dynamic | final | infix | lazy | optional | override | postfix | prefix | required | static | unowned | unowned(safe) | unowned(unsafe) | weak

访问级别修饰符 → private | private(set)

访问级别修饰符 → fileprivate | fileprivate(set)

访问级别修饰符 → internal | internal(set)

访问级别修饰符 → public | public(set)

访问级别修饰符 → open | open(set)

可变性修饰符 → mutating | nonmutating

actor 隔离修饰符 → nonisolated

属性

属性语法

平衡令牌 → 任意标识符、关键字、字面量或运算符

平衡令牌 → 除 ( 、)、[、]、{、} 外的任意标点符号

模式

模式语法

通配符模式语法

通配符模式 → _

标识符模式语法

值绑定模式语法

元组模式语法

枚举 case 模式语法

可选模式语法

类型转换模式语法

表达式模式语法

泛型参数

泛型形参子句语法

泛型实参子句语法

标识符 → 可选

标识符 → 可选

标识符 →

标识符 →

标识符集 → | ,

标识符字符 →

标识符字符集 → 可选

隐式参数名 → $

属性包装器呈现值 → $

字面量 → | | | |

数值型字面量 → -可选 | -可选

整型字面量 →

整型字面量 →

整型字面量 →

整型字面量 →

二进制字面量 → 0b 可选

二进制字面量字符 → | -

二进制字面量字符集 → 可选

八进制字面量 → 0o 可选

八进制字符 → | -

八进制字符集 → 可选

十进制字面量 → 可选

十进制数字集 → 可选

十进制字面量字符 → | -

十进制字面量字符集 → 可选

十六进制字面量 → 0x 可选

十六进制字符 → | -

十六进制字面量字符集 → 可选

浮点数字面量 → 可选可选

浮点数字面量 → 可选

十进制分数 → .

十进制指数 → 可选

十六进制分数 → .

十六进制指数 → 可选

字符串字面量 → |

字符串开分隔定界符 → "

字符串闭分隔定界符 → " 可选

静态字符串字面量 → 可选

静态字符串字面量 → 可选

多行字符串开分隔定界符 → """

多行字符串闭分隔定界符 → """

字符串扩展分隔符 → # 可选

引用文本 → 可选

引用文本项 →

多行引用文本 → 可选

多行引用文本项 可选

多行引用文本 →

插值字符串字面量 → 可选

插值字符串字面量 → 可选

插值文本 → 可选

插值文本项 → \() |

多行插值文本 → 可选

多行插值文本项 → \( ) |

转义序列 → \

转义字符 → 0 | \ | t | n | r | " | '

转义字符 → u { }

转义换行符 → 可选

正则表达式字面量 →

正则表达式字面量开分隔定界符 → 可选 /

正则表达式字面量闭分割定界符 → / 可选

正则表达式扩展分隔符 → # 可选

运算符 → 可选

运算符 → 可选

运算符字符 →

运算符字符集 → 可选

点运算符字符 → . |

点运算符字符集 → 可选

二元运算符 →

前置运算符 →

后置运算符 →

类型 →

类型 →

类型 →

类型 →

类型 →

类型 →

类型 →

类型 →

类型 →

类型 →

类型 →

类型 →

类型 → ( )

类型注解 → : 可选

类型标识 → 可选| 可选.

类型名 →

元组类型 → ( ) | ( , )

元组类型元素列表 → | ,

元组类型元素 → |

元素名 →

函数类型 → async可选 throws可选->

函数类型 → rethrows ->

函数类型子句 → ( *...*­可选 )

函数类型参数列表 → | ,

函数类型参数 → 可选 输入输出参数可选 |

参数标签 →

数组类型 → [ ]

字典类型 → [ ]

可选类型 → ?

隐式解析可选类型 → !

协议合成类型 → |

协议持续延续 → |

元类型 → . Type | . Protocol

类型继承从句 → :

类型继承集 → 可选 | 可选 ,

表达式 → 可选

表达式列表 → |,

前缀表达式 → 可选

前缀表达式 →

输入输出表达式 → &

中缀表达式 →

中缀表达式 → 可选

中缀表达式 → 可选

中缀表达式 →

中缀表达式 → 可选

条件运算符 → [?] :

类型转换运算符 → [is]

类型转换运算符 → [as]

类型转换运算符 → [as ?]

类型转换运算符 → [as !]

基础表达式 → 可选

基础表达式 →

基础表达式 →

基础级表达式 →

基础表达式 →

基础表达式 →

基础表达式 →

基础表达式 →

基础表达式 →

基础表达式 →

基础表达式 →

基础表达式 →

字面量表达式 →

字面量表达式 → | |

数组字面量 → [ 可选 ] 数组字面量项列表 → 可选 | , 数组字面量项 →

字典字面量 → [ ] | [ : ]

字典字面量项列表 → ,**可选 | ,

字典字面量项 → :

palyground 字面量 → #colorLiteral ( red : , green :, blue : , alpha : )

playground 字面量 → #fileLiteral ( resourceName : )

playground 字面量 → **#imageLiteral ( resourceName : )

self 表达式 → self | | |

self 方法表达式 → self .

self 下标表达式 → self [ ]

父类表达式 → | |

父类方法表达式 → super .

父类下标表达式 → super [ ]

闭包表达式 → { 可选 }

闭包签名 → async可选 throws可选 可选 in

闭包签名 → 可选 in

闭包参数子句 ( ) | ( | )

闭包参数列表 | ,

闭包参数 可选

闭包参数 ...

闭包参数名

捕获列表 → [ ]

捕获列表项列表 → | ,

捕获列表项 → 可选

隐式成员表达式 → .

圆括号表达式 → ( )

元组表达式 → ( ) | (, )

元组元素列表 → | , 元组元素 → | :

key-path 表达式 → ** 可选 . [多个 key-path 组件] 多个 key-path 组件 → | . key-path 组件 → 可选 | 多个 key-path 后缀 → 可选 key-path-postfixes {./04_Expressions.md#key-path-postfixes}

key-path 后缀 → ? | ! | self | [ ]

选择器表达式 → #selector ( )

选择器表达式 → #selector ( )

选择器表达式 → #selector ( )

key-path 字符串表达式语法 key-path 字符串表达式 → #keyPath ( )

后缀表达式 →

后缀表达式 →

后缀表达式 →

后缀表达式 →

后缀表达式 →

后缀表达式 →

后缀表达式 →

后缀表达式 →

后缀表达式 →

函数调用表达式 →

函数调用表达式 → 可选

函数调用参数子句 → ( ) | ( )

函数调用参数表 → | ,

函数调用参数 → | :

函数调用参数 → | :

尾随闭包 → 可选

标签尾随闭包集→

标签尾随闭包→ :

构造器表达式 → . init

构造器表达式 → . init ( )

显式成员表达式 → .

显式成员表达式 → . 可选

显式成员表达式 → . ( )

显式成员表达式 →

参数名称 → 可选

参数名 → :

后缀 self 表达式 → . self

下标表达式 → [ ]

强制取值表达式语法 强制取值表达式 → !

可选链式表达式语法 可选链表达式 → ?

语句 → ;可选

语句 → ;可选

语句 → ;可选

语句 → ;可选

语句 → ;可选

语句 → ;可选

语句 → ;可选

语句 → ;可选

语句 →

语句集 → 可选

循环语句 →

循环语句 →

for-in 语句 → for case可选 in 可选

while 语句 → while

条件集 → | ,

条件 → | | |

case 条件 → case

可选绑定条件 → let 可选 | var 可选

repeat-while-statement → repeat while

分支语句 →

分支语句 →

分支语句 →

if 语句 → if 可选

else 子句 → else | else

guard 语句 → guard else

switch 语句 → switch { 可选 }

switch-case集 → 可选

switch-case →

switch-case →

switch-case →

case 标签 → 可选 case :

case 项集 → 可选 | 可选 ,

default 标签 → 可选 default :

where 子句 → where

where 表达式 →

条件 switch-case → 可选 可选

switch if 指令子句 → 可选

switch elseif 指令子句集 → 可选

switch elseif 指令子句 → 可选

switch else 指令子句 → 可选

标签语句 →

标签语句 →

标签语句 →

标签语句 →

语句标签 → :

标签名称 →

控制转移语句 →

控制转移语句 →

控制转移语句 →

控制转移语句 →

控制转移语句 →

break 语句 → break 可选

continue 语句 → continue 可选

return 语句 → return 可选

throw 语句 → throw

defer 语句 → defer

do 语句 → do 可选

catch 子句集 → 可选

catch 子句 → catch 可选 可选

catch 模式列表 → | ,

catch 模式 → 可选

编译控制语句 →

编译控制语句 →

编译控制语句 →

条件编译块 → 可选 可选

if 指令子句 → 可选

elseif 指令子句集 → 可选

elseif 指令子句 → 可选

else 指令子句 → 可选

编译条件 →

编译条件 →

编译条件 →

编译条件 → ( )

编译条件 → !

编译条件 → &&

编译条件 → ||

平台条件 → os ( )

平台条件 → arch ( )

平台条件 → swift ( >= ) | swift ( < )

平台条件 → compiler ( >= ) | compiler ( < )

平台条件 → canImport ( )

平台条件 → targetEnvironment ( )

swift 版本 → 可选

swift 版本后缀 → . 可选

模块名 →

行控制语句 → #sourceLocation ( file: , line: )

文件名 →

诊断语句 → #error ( )

诊断语句 → #warning ( )

诊断信息 →

可用性条件 → #available ( )

可用性参数集 → | ,

可用性参数 →

平台版本 →

平台版本 → .

平台版本 → . .

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明 →

声明集 → 可选

顶级声明 → 可选

代码块 → { 可选 }

导入声明 → 可选 import 可选

导入路径 → | .

导入路径标识符 → |

常量声明 → 可选 可选 let

模式构造器集 → | ,

模式构造器 → 可选

构造器 → =

变量声明 →

变量声明 →

变量声明 →

变量声明 →

变量声明 → 可选

变量声明 → 可选

变量声明头 → 可选 可选 var

变量名称 →

getter-setter 块 →

getter-setter 块 → { 可选 }

getter-setter 块 → { }

getter 子句 → 可选 可选 get

setter 子句 → 可选 可选 set 可选

setter 名称 → ( )

getter-setter 关键字(Keyword)块 → { 可选 }

getter-setter 关键字(Keyword)块 → { }

getter 关键字(Keyword)子句 → 可选 可选 get

setter 关键字(Keyword)子句 → 可选 可选 set

willSet-didSet 代码块 → { 可选 }

willSet-didSet 代码块 → { 可选 }

willSet 子句 → 可选 willSet 可选

didSet 子句 → 可选

didSet 可选

类型别名声明 → 可选 typealias 可选

类型别名名称 →

类型别名赋值 → =

函数声明 → 可选 可选 可选

函数头 → 可选 可选 func

函数名 → |

函数签名 → async可选 throws可选 可选

函数签名 → async可选 rethrows 可选

函数结果 → -> 可选

函数体 →

参数子句 → ( ) | ( )

参数集 → | ,

参数 → 可选 可选

参数 → 可选

参数 → 可选 ...

外部参数名 →

本地参数名 →

默认参数子句 → =

枚举声明 → 可选 可选

枚举声明 → 可选 可选

联合式枚举 → indirect可选 enum 可选 可选 可选 { 可选 }

联合式枚举成员集 → 可选

联合样式枚举成员 → | |

联合式枚举 case 子句 → 可选 indirect可选 case

联合式枚举 case 集 → | ,

联合式枚举 case → 可选

枚举名 →

枚举的 case 名 →

原始值式枚举 → enum 可选 可选 { }

原始值式枚举成员集 → 可选

原始值式枚举成员 → | |

原始值式枚举 case 子句 → 可选 case

原始值式枚举 case 集 → | ,

原始值式枚举 case → 可选

原始值赋值 → =

原始值字面量(raw-value-literal) → | |

结构体声明 → 可选 可选 struct 可选 可选 可选

结构体名称 →

结构体主体 → { 可选 }

结构体成员集 → 可选

结构体成员 → |

类声明 → 可选 可选 final可选 class 可选 可选

类声明 → 可选 final 可选 class 可选 可选

类名 →

类主体 → { 可选 }

类成员集 → 可选

类成员 → |

协议声明 → 可选 可选 protocol 可选 可选

协议名 →

协议主体 → { 可选 }

协议成员集 → 可选

协议成员 → |

协议成员声明 →

协议成员声明 →

协议成员声明 →

协议成员声明 →

协议成员声明 →

协议成员声明 →

协议属性声明 →

协议方法声明 → 可选 可选

协议构造器声明 → 可选 throws可选 可选

协议构造器声明 → 可选 rethrows 可选

协议下标声明 → 可选

协议关联类型声明 → 可选 可选 associatedtype 可选 可选 可选

构造器声明 → 可选 throws可选 可选

构造器声明 → 可选 rethrows 可选

构造器头(Head) → 可选 可选 init

构造器头(Head) → 可选 可选 init ?

构造器头(Head) → 可选 可选 init !

构造器主体 →

析构器声明 → 可选 deinit

扩展声明 → 可选 可选 extension 可选 可选

扩展主体 → { 可选 }

扩展成员集 → 可选

扩展成员 → |

下标声明 → 可选

下标声明 → 可选

下标声明 → 可选

下标头(Head) → 可选 可选 subscript 可选

下标结果(Result) → -> 可选

运算符声明 → | |

前置运算符声明 → prefix operator

后置运算符声明 → postfix operator

中置运算符声明 → infix operator 可选

中置运算符特性 →

优先级组声明 → precedencegroup { 可选 }

优先级组特性 → 可选

优先级组属性 →

优先级组属性 →

优先级组属性 →

优先级组关系 → higherThan :

优先级组关系 → lowerThan :

优先级组赋值 → assignment :

优先级组名集 → | ,

优先级组名 →

声明修饰符 →

声明修饰符 →

声明修饰符 →

声明修饰符集 → 可选

属性 → @ 可选

属性名 →

属性参数子句 → { 可选 }

属性(Attributes)集 → 可选

平衡令牌集 → 可选

平衡令牌 → ( 可选 )

平衡令牌 → [ 可选 ]

平衡令牌 → { 可选 }

模式 → 可选

模式 → [类型注解](./03_Types.md#type-annotati Value Bindingon )可选

模式 →

模式 → 可选

模式 →

模式 →

模式 →

模式 →

标识符模式 →

值绑定模式 → var | let

元组模式 → ( 可选 )

元组模式元素集 → | ,

元组模式元素 → | :

enum-case-pattern → 可选 . 可选

可选模式 → ?

类型转换模式 → |

is 模式 → is

as 模式 → as

表达式模式 →

泛型参数子句 → < >

泛型参数集 → | ,

泛形参数 →

泛形参数 → :

泛形参数 → :

泛型 where 子句 → where

约束集 → | ,

约束 → |

一致性约束 → :

一致性约束 → :

同类型约束 → ==

泛型实参子句 → < >

泛型实参集 → | ,

泛形实参 →

元组类型
类型
类型
actor 隔离修饰符
表达式
表达式
表达式
表达式
函数类型子句
函数类型参数
前缀操作符
标签尾随闭包
引用文本
转义序列
类型
参数标签
类型注解
数组类型
字典类型
函数类型
类型标识符
可选类型
隐式解析可选类型
协议合成类型
隐含类型
元类型
任意类型
自身类型
type
元组类型元素
元组类型元素列表
元组类型元素
元组类型元素
元组类型元素列表
元素名
类型注解
类型
类型
类型
函数类型参数列表
函数类型参数
函数类型参数列表
类型
类型 : 类型
类型
类型
类型标识符
协议合成延续
类型标识符
协议合成类型
类型
类型
类型继承集
类型
类型
类型
类型
类型
类型
类型名称
类型名称
类型标识
类型名称
协议合成类型
类型标识
类型标识
类型标识
协议合成类型
类型标识
类型
类型
类型
属性(Attributes)集
特性列表
类型标识符
类型标识符
类型继承集
特性
特性
特性
特性
类型
特性
类型
特性
访问级别修饰符
可变性修饰符
属性名
属性参数子句
平衡令牌集
属性
特性
平衡令牌
平衡令牌集
平衡令牌集
平衡令牌集
平衡令牌集
类型名称
类型名称
类型标识符
泛型参数从句
泛型参数从句
泛型参数集
泛型参数
泛形参数
泛型参数集
约束集
约束
约束
约束集
一致性约束
同类型约束
泛型实参集
泛型实参
泛形实参
泛型实参集
声明
代码块
导入声明
常量声明
变量声明
类型别名声明
函数声明
枚举声明
结构体声明
类声明
actor 声明
协议声明
构造器声明
析构器声明
扩展声明
下标声明
运算符声明
优先级组声明
声明
声明集
特性
导入类型
导入路径
导入路径标识符
导入路径标识符
导入路径
特性
声明修饰符集
模式构造器集
模式构造器
模式构造器
模式构造器集
变量声明头
模式构造器集
类型注解
变量声明头
变量名
代码块
类型注解
变量声明头
变量名
getter-setter 块
类型注解
变量声明头
变量名
getter-setter 关键字块
变量声明头
变量名
构造器
willSet-didSet 代码块
类型注解
变量声明头
变量名
构造器
willSet-didSet 代码块
特性
声明修饰符集
代码块
getter 子句
setter 子句
setter 子句
getter 子句
特性
可变性修饰符
代码块
特性
可变性修饰符
setter 名称
代码块
getter 关键字子句
setter 关键字子句
setter 关键字子句
getter 关键字子句
特性
可变性修饰符
特性
可变性修饰符
willSet 子句
didSet 子句
didSet 子句
willSet 子句
特性
setter 名称
代码块
setter 名称
代码块
特性
访问级别修饰符
泛型参数子句
类型别名名称
类型别名赋值
泛型参数子句
泛型 where 子句
函数头
函数名
函数签名
函数体
特性
声明描述符集
参数子句
函数结果
参数子句
函数结果
代码块
参数集
参数
参数
参数集
类型注解
外部参数名
本地参数名
默认参数子句
类型注解
外部参数名
本地参数名
类型注解
外部参数名
本地参数名
特性
访问级别修饰符
联合式枚举
特性
访问级别修饰符
原始值式枚举
类型继承子句
泛型参数子句
泛型 where 子句
枚举名
联合式枚举成员
联合式枚举成员
联合样式枚举成员集
特性
联合式枚举 case 集
联合式枚举 case
联合式枚举 case
联合式枚举 case 集
元组类型
枚举的 case 名
类型继承子句
泛型参数子句
泛型 where 子句
枚举名
原始值式枚举成员集
原始值式枚举成员
原始值式枚举成员集
特性
原始值式枚举 case 集
原始值式枚举 case
原始值式枚举 case
原始值式枚举 case 集
枚举的 case 名
原始值赋值
类型继承子句
特性
访问级别修饰符
泛型参数子句
泛型 where 子句
结构体名称
结构体主体
结构体成员集
结构体成员
结构体成员集
类型继承子句
特性
访问级别修饰符
泛型参数子句
泛型 where 子句
类名
类主体
类型继承子句
特性
访问级别修饰符
泛型参数子句
泛型 where 子句
类名
类主体
类成员集
类成员
类成员集
类型继承子句
特性
访问级别修饰符
泛型 where 子句
协议名
协议主体
协议成员集
协议成员
协议成员集
协议属性声明
协议方法声明
协议构造器声明
协议下标声明
协议关联类型声明
类型别名声明
类型注解
变量声明头
变量名
getter-setter 关键字块
泛型参数子句
泛型 where 子句
函数头
函数名
函数签名
泛型参数子句
泛型 where 子句
构造器头
参数子句
泛型参数子句
泛型 where 子句
构造器头
参数子句
泛型 where 子句
下标头
下标结果
getter-setter 关键字块
类型继承子句
特性
访问级别修饰符
泛型 where 子句
类型别名
类型别名赋值
泛型参数子句
泛型 where 子句
构造器头
参数子句
构造器主体
泛型参数子句
泛型 where 子句
构造器头
参数子句
构造器主体
特性
声明修饰符集
特性
声明修饰符集
特性
声明修饰符集
代码块
特性
代码块
类型标识
类型继承子句
特性
访问级别修饰符
泛型 where 子句
扩展主体
扩展成员集
扩展成员
扩展成员集
泛型 where 子句
下标头
下标结果
代码块
泛型 where 子句
下标头
下标结果
getter-setter 块
泛型 where 子句
下标头
下标结果
getter-setter 关键字块
特性
泛型参数子句
声明修饰符集
参数子句
前置运算符声明
后置运算符声明
中置运算符声明
优先级组名
优先级组名
优先级组特性
优先级组属性
优先级组特性
优先级组关系
优先级组赋值
优先级组结合
优先级组名集
优先级组名集
优先级组名
优先级组名
优先级组名集
声明修饰符
声明修饰符集
try 运算符
前缀表达式
二元表达式列表
表达式
表达式
表达式列表
前缀表达式
输入输出表达式
赋值操作符
try 运算符
前缀表达式
条件运算符
try 运算符
前缀表达式
类型转换运算符
中缀表达式
中缀表达式列表
表达式
字面量表达式
self 表达式
父类表达式
闭包表达式
圆括号表达式
元组表达式
隐式成员表达式
通配符表达式
key-path表达式
选择器表达式
key-path 字符串表达式
字面量
数组字面量
字典字面量
练习场字面量
数组字面量项列表
数组字面量项
数组字面量项
数组字面量项列表
表达式
字典字面量项列表
字典字面量项
字典字面量项
字典字面量项列表
表达式
表达式
表达式
表达式
表达式
表达式
self 方法表达式
self 下标表达式
self 构造器表达式
函数调用参数表
父类方法表达式
父类下标表达式
父类构造器表达式
函数调用参数表
闭包签名
语句
函数结果
捕获列表
参数子句
函数结果
标识符列表
闭包参数列表
标识符列表
闭包参数
闭包参数
闭包参数列表
类型声明
闭包参数名
类型声明
闭包参数名
捕获列表
捕获列表项列表
捕获列表项
捕获列表项
捕获列表项列表
捕获说明符
表达式
表达式
元组元素
元组元素列表
元组元素
元组元素
元组元素列表
表达式
标识符
表达式
函数调用参数表
表达式
getter:表达式
setter:表达式
表达式
基本表达式
函数调用表达式
构造器表达式
显式成员表达式
后缀 self 表达式
下标表达式
强制取值表达式
可选链表达式
后缀表达式
函数调用参数子句
后缀表达式
函数调用参数子句
尾随闭包
函数调用参数表
函数调用参数
函数调用参数
函数调用参数表
闭包表达式
标签尾随闭包
标签尾随闭包集
后缀表达式
后缀表达式
参数名称
参数名
参数名称
后缀表达式
后缀表达式
表达式列表
后缀表达式
后缀表达式
表达式
代码块
表达式
表达式
表达式
表达式
表达式
表达式
表达式
空白字符项
空白字符
换行符
内联空间
注释
多行注释
单行内容注释
换行符
多行内容注释
注释内容项
注释内容
多行注释内容项
多行注释内容
多行内容
注释内容项
标识符头(Head)
标识符字符集
标识符头(Head)
标识符字符集
隐式参数名
属性包装器呈现值
标识符
标识符
标识符集
标识符头(Head)
标识符字符
标识符字符集
十进制数字集
标识符字符集
数值型字面量
字符串字面量
正则表达式字面量
布尔字面量
空字面量
整形字面量
浮点型字面量
二进制字面量
八进制字面量
十进制字面量
十六进制字面量
二进制数字
二进制字面量字符集
二进制数字
二进制字面量字符
二进制字面量字符集
八进制数字
八进制字符集
八进制数字
八进制字符
八进制字符集
十进制数字
十进制字符集
十进制数字
十进制数字集
十进制数字
十进制字面量字符
十进制字面量字符集
十六进制数字
十六进制字面量字符集
十六进制数字
十六进制字符
十六进制字面量字符集
十进制字面量
十进制分数
十进制指数
十六进制字面量
十六进制分数
十六进制指数
十进制字面量
浮点数 e
正负号
十进制字面量
十六进制数
浮点数 p
正负号
十六进制字面量
静态字符串字面量
插值字符串字面量
字符串扩展分隔符
字符串扩展分隔符
字符串开分隔定界符
引用文本
字符串闭分隔定界符
多行字符串开分隔定界符
多行引用文本
多行字符串闭分隔定界符
字符串扩展分隔符
字符串扩展分隔符
字符串扩展分隔符
引用文本项
转义字符
多行引用文本项
多行引用文本
转义字符
转义换行
字符串开分隔定界符
插值文本
字符串闭分隔定界符
多行字符串开分隔定界符
插值文本
多行字符串闭分隔定界符
插值文本项
插值文本
引用文本项
多行插值文本项
多行插值文本
多行引用文本项
字符串扩展分隔符
转义序列
转义序列
转义序列
转义序列
转义序列
转义序列
转义序列
unicode 标量数字
转义序列
空白
换行符
正则表达式字面量开分隔定界符
正则表达式
正则表达式字面量闭分隔定界符
正则表达式扩展分隔符
正则表达式扩展分隔符
正则表达式扩展分隔符
运算符头
运算符字符集
点运算符头
点运算符字符集
运算符头
运算符字符
运算符字符集
运算符字符
点运算符字符
点运算符字符集
运算符
运算符
运算符
标识符
标识符
标识符
标识符
前缀表达式
中缀运算符
泛型实参子句
标识符
标识符
标识符
标识符
标识符
类型
key-path 组件
key-path 组件
多个 key-path 组件
多个 key-path 后缀
多个 key-path 后缀
key-path 后缀
多个 key-path 后缀
标识符
后缀表达式
后缀运算符
表达式
表达式
标识符
运算符
标识符
运算符
闭包表达式
标识符
后缀表达式
十进制数字
泛型实参子句
后缀表达式
标识符
后缀表达式
参数名称
标识符
标识符
标识符
标识符
布尔字面量
标识符
静态字符串字面量
静态字符串字面量
十进制数字集
十进制数字集
十进制数字集
十进制数字集
十进制数字集
十进制数字集
标识符
运算符
标识符
标识符
标识符
标识符
运算符
标识符
标识符
标识符
标识符
原始值字面量
数值字面量
静态字符串字面量
布尔字面量
标识符
标识符
标识符
运算符
运算符
中置运算符特性
运算符
布尔字面量
标识符
标识符
标识符
标识符模式
后缀表达式
条件编译块
循环语句
分支语句
标签语句
控制转移语句
延迟语句
执行语句
编译控制语句
语句
语句集
for-in 语句
repeat-while 语句
代码块
条件集
条件
条件
条件集
表达式
可用性条件
case 条件
可选绑定条件
if 语句
guard 语句
switch 语句
代码块
条件集
else 子句
代码块
if 语句
代码块
条件集
表达式
switch-case集
switch-case
switch-case集
case 标签
语句集
default 标签
语句集
条件 switch-case
特性
case 项集
where 表达式
switch if 指令子句
switch elseif 指令子句集
switch else 指令子句
endif 指令
if 指令
编译条件
switch-case集
elseif 指令子句
switch elseif 指令子句集
elseif 指令
编译条件
switch-case集
else 指令
switch-case集
语句标签
循环语句
语句标签
if 语句
语句标签
switch 语句
语句标签
do 语句
标签名称
break 语句
continue 语句
fallthrough 语句
return 语句
throw 语句
标签名称
标签名称
代码块
catch 子句集
catch 子句
catch 子句集
代码块
catch 模式列表
catch 模式
catch 模式
catch 模式列表
条件编译块
行控制语句
诊断语句
if 指令子句
elseif 指令子句集
else 指令子句
endif 指令
if 指令
编译条件
语句集
elseif 指令子句
elseif 指令子句集
elseif 指令
编译条件
语句集
else 指令
语句集
平台条件
编译条件
编译条件
编译条件
编译条件
编译条件
编译条件
操作系统
架构
swift 版本
swift 版本
swift 版本
swift 版本
模块名
环境
十进制数字集
swift 版本后缀
十进制数字集
swift 版本集
文件名
行号
诊断信息
诊断信息
可用性参数集
可用性参数
可用性参数
可用性参数集)
平台名
平台版本
多条语句
多条语句
声明
联合式枚举 case 子句
编译控制语句
声明
原始值式枚举 case 子句
编译控制语句
声明集
编译控制语句
声明集
编译控制语句
协议成员声明
编译控制语句
声明集
编译控制语句
代码块
表达式
where 子句
模式
构造器
模式
构造器
构造器
模式
模式
where 子句
where 子句
case 项集
模式
模式
where 子句
模式
构造器
模式
类型注解
通配符模式
标识符模式
值绑定模式
类型注解
元组模式
枚举 case 模式
可选模式
类型转换模式
表达式模式
模式
模式
元组模式元素集
元组模式元素
元组模式元素
元组模式元素集
标识符
模式
模式
类型标识
枚举 case 名
元组模式
is 模式
as 模式
类型
模式