第6章 项

项 — The Rust Reference

译文 · 基于 The Rust Reference

原文链接: https://doc.rust-lang.org/reference/items.html

r[items]

项

r[items.syntax]

Item ->
    OuterAttribute* ( VisItem | MacroItem )

VisItem ->
    Visibility?
    (
        Module
      | ExternCrate
      | UseDeclaration
      | Function
      | TypeAlias
      | Struct
      | Enumeration
      | Union
      | ConstantItem
      | StaticItem
      | Trait
      | Implementation
      | ExternBlock
    )

MacroItem ->
      MacroInvocationSemi
    | MacroRulesDefinition

r[items.intro] 项(item)是 crate 的组成部分。项通过嵌套的[模块]集合组织在 crate 中。每个 crate 都有一个最外层的匿名模块;crate 中的所有其他项都在该 crate 的模块树中拥有[路径]。

r[items.static-def] 项完全在编译期确定,执行期间通常保持不变,并且可以驻留在只读内存中。

r[items.kinds] 项有若干种类:

r[items.locations] 项可以在 crate 根、模块 或块表达式中声明。

r[items.associated-locations] 一部分项称为关联项,可以在 trait 和实现中声明。

r[items.extern-locations] 一部分项称为外部项,可以在 extern 块中声明。

r[items.decl-order] 项可以按任意顺序定义,但 macro_rules 例外,它有自己的作用域规则。

r[items.name-resolution] 项名称的名称解析允许项在模块或块中被引用之前或之后定义。

关于项的作用域规则,参见项作用域。


01-模块

模块 — The Rust Reference

02-Extern crate

Extern crate — The Rust Reference

03-use 声明

use 声明 — The Rust Reference

04-函数

函数 — The Rust Reference

05-类型别名

类型别名 — The Rust Reference

06-结构体

结构体 — The Rust Reference

07-枚举

枚举 — The Rust Reference

08-联合体

联合体 — The Rust Reference

09-常量项

常量项 — The Rust Reference

10-静态项

静态项 — The Rust Reference

11-Trait

Trait — The Rust Reference

12-实现

实现 — The Rust Reference

13-外部块

外部块 — The Rust Reference

14-泛型参数

泛型参数 — The Rust Reference

15-关联项

关联项 — The Rust Reference

最后修改 August 21, 2026: 更新 (76fc81a2e)