词法关键字扫盲
1. 关键字
严格关键字
#![allow(unused)] fn main() { as / break / const / continue / crate / if / else / struct / enum / true / false / fn / for / in / let / loop / impl / mod / match / move mut / pub / ref / return / self / Self / static / super /trait / type / unsafe /use / where / while / async /await/dyn/main }
弱关键字
#![allow(unused)] fn main() { abstract / become / box / do / final / macro / override / priv / typeof / unsized / virtual / yield / try }
保留字
- 2018 Edition:union,’static
- 2015 Edition:dyn
被保留的关键字不代表将来一定会使用
2. 标识符
3. 注释
//!, /!, //!!, /!!, /…/, //, ////, /…*/
4. 空白: \n、\t、tab
任何形式的空白字符在RuSt中只用于分隔标记,没有语义意义。
5. 词条
- 语言项(item)
- 块(block)
- 语句(Stmt)
- 表达式(Expr)
- 模式(Pattern)
- 关键字(Keyword)
- 标识符(Ident)
- 字面量(Literal)
- 生命周期(Lifetime)
- 可见性(Vis)
- 标点符号(Punctuation)
- 分隔符(delimiter)
- 词条树(Token Tree)
- 属性(Attribute)