关键字
关键字有拼音、中文、英文三种写法,完全等价。
下面这些名字被语言占用,不能用作变量名、函数名、参数名、结构体名、字段名、方法名或模块名。三种写法全部占用,命中任意一种都会报错。判断按整个词匹配:jia 不能用,jia_fa 可以。
起名时注意拼音
拼音写法最容易无意撞上。例如 jia 是 false 的拼音,hs jia(a z64, b z64) 会报错。
类型名的占用规则相同,见 名称对照。将来可能启用的词见 保留关键字。
声明与结构
| 拼音 | 中文 | 英文 | 说明 |
|---|---|---|---|
hs | 函数 | fn | 函数声明、函数值类型 |
bl | 变量 | var | 变量声明 |
jiegouti | 结构体 | struct | 结构体声明 |
shixian | 实现 | impl | 结构体方法 |
leixing | 类型 | type | 类型标注 |
daochu | 导出 | export | 导出函数 |
daoru | 导入 | import | 导入模块 |
laizi | 来自 | from | daoru ... laizi |
zuowei | 作为 | as | 导入时改名 |
wailian | 外联 | extern | 声明 C 函数 |
ku | 库 | lib | 链接 C 库 |
bibao | 闭包 | closure | 闭包 |
rukou | 入口 | rukou | 程序入口,英文写法与拼音相同 |
meiju | 枚举 | enum | 仅占用,不实现 |
控制流
| 拼音 | 中文 | 英文 | 说明 |
|---|---|---|---|
ruguo | 如果 | if | 条件 |
fouze | 否则 | else | 否则 |
dang | 当 | while | while 循环 |
jishu | 计数 | for | for 循环 |
shuyu | 属于 | in | 遍历 |
tiaochu | 跳出 | break | 跳出循环 |
jixu | 继续 | continue | 进入下一轮 |
fanhui | 返回 | return | 返回 |
字面量
| 拼音 | 中文 | 英文 | 说明 |
|---|---|---|---|
zheng | 真 | true | 真 |
jia | 假 | false | 假 |
kong | 空 | none | 空值 |
错误处理
| 拼音 | 中文 | 英文 | 说明 |
|---|---|---|---|
kecuo | 可错 | fails | 标记会失败的函数 |
changshi | 尝试 | try | 调用会失败的函数 |
buhuo | 捕获 | catch | 处理错误 |
cuowu | 错误 | Err | 构造错误 |
sp_kecuo | 上抛_可错 | up_fails | 把错误交给上一层 |
所有权与修饰
| 拼音 | 中文 | 英文 | 说明 |
|---|---|---|---|
yidong | 移动 | move | 转移所有权 |
kexuan | 可选 | optional | 可以为空的类型 |
bu_anquan | 不安全 | unsafe | unsafe 块 |
bu_kaobei | 不可拷贝 | nocopy | 不可拷贝结构体 |
内建函数
由编译器提供,同样不能用作名字,也不能被同名函数覆盖。
| 拼音 | 中文 | 英文 | 说明 |
|---|---|---|---|
dayin | 打印 | print | 打印 |
leixing_zhuanhuan | 类型_转换 | type_conversion | 数值类型转换 |
shuzi_zhuan_zifuchuan | 数字_转_字符串 | number_to_string | 数字转字符串 |
zifuchuan_zhuan_shuzi | 字符串_转_数字 | string_to_number | 字符串转数字 |
jiebao | 解包 | unwrap | 取出可选值 |
xiaohui | 销毁 | destroy | 提前释放变量 |
konghuang | 恐慌 | panic | 终止程序 |
zhuan_bibao | 转_闭包 | closure_of | 函数值转闭包 |
指针与 C 互操作
见 unsafe 与指针 和 调用 C 库。
| 拼音 | 中文 | 英文 | 说明 |
|---|---|---|---|
daizhi | 带址 | addr | 带类型地址 |
quzhi | 取址 | addr_of | 取地址 |
jiezhi | 解址 | deref | 读地址 |
xiezhi | 写址 | store | 写地址 |
luozhi | 裸址 | raw_addr | 取裸地址 |
luojie | 裸解 | raw_deref | 读裸地址 |
luoxie | 裸写 | raw_store | 写裸地址 |
luozhuanzhi | 裸转址 | raw_to_addr | 裸地址转带类型地址 |
zhizhuanluo | 址转裸 | addr_to_raw | 带类型地址转裸地址 |
c_chuan | C串 | c_str | 字符串借给 C |
c_chuan_kaobei | C串拷贝 | c_str_copy | 字符串复制给 C |
c_zhuan_chuan | C转串 | string_from_c | C 字符串转 cpro 字符串 |
zhi_zhuan_shuzu | 址转数组 | array_from_addr | C 缓冲区转数组 |
保留方法名
不能在 shixian 块里当普通方法名用:
| 拼音 | 中文 | 英文 | 说明 |
|---|---|---|---|
xiaohui_qian | 销毁前 | before_destroy | 清理方法,只有 nocopy 结构体能定义,见 nocopy 结构体 |
