附录A - 关键字
appendix-01-keywords.md
commit 60f22d98fe8ee0ce04824a8536a95f12ba118027
下面的列表中是Rust正在使用或者以后会用关键字。因此,这些关键字不能被用作标识符,例如
函数名、变量名、参数名、结构体、模块名、crates名、常量名、宏名、静态值的名字。
目前正在使用的关键字
as
- 强制类型转换或者对使用use
和extern crate
声明引入的项目重命名break
- 立刻退出循环const
- 定义常量或者 不变原生指针 (constant raw pointers)continue
- 跳出本次循环,进入下一次循环crate
- 引入一个外部 crate 或一个代表 crate 的宏变量else
- 创建if
和if let
控制流的分支enum
- 定义一个枚举extern
- 引入一个外部 crate 、函数或变量false
- 布尔值false
fn
- 定义一个函数或 函数指针类型 (function pointer type)for
- 遍历一个迭代器或实现一个 trait或者指定一个具体的生命周期if
- 基于条件表达式的结果分支impl
- 实现一个方法或 trait 功能in
- for循环语法的一部分let
- 绑定一个变量loop
- 无条件循环match
- 模式匹配mod
- 定义一个模块move
- 使闭包获取所有权mut
- 表示一个可变绑定pub
- 在结构体、impl
块或模块中表示可以被外部使用ref
- 绑定一个引用return
- 从函数中返回Self
- 实现一个 trait 类型的类型别名self
- 表示方法本身或当前模块static
- 表示全局变量或在整个程序执行期间保持其生命周期struct
- 定义一个结构体super
- 表示当前模块的父模块trait
- 定义一个 traittrue
- 布尔值true
type
- 定义一个类型别名或相关连的类型unsafe
- 表示不安全的代码、函数、traits 或者方法实现use
- 引入外部空间的符号where
- 表示一个类型约束 [For example]while
- 基于一个表达式的结果判断是否进行循环
未使用的保留字
这些关键字没有目前任何功能,但是它们是Rust未来会使用的保留字。
abstract
alignof
become
box
do
final
macro
offsetof
override
priv
proc
pure
sizeof
typeof
unsized
virtual
yield