Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

名称

一个 实体(entity) 是一种语言结构,它在源程序中可以以某种方式被引用,通常是通过 路径 。实体包括 类型泛型参数变量绑定循环标签生命周期字段属性 以及 lint

一个 声明(declaration) 是一种语法结构,它可以引入一个 名称(name) 来引用实体。实体名称在 作用域 内有效 — 即该名称可以被引用的源文本区域。

某些实体在源码中被 显式声明 ,而某些实体作为语言或编译器扩展的一部分被 隐式声明

路径 用于引用实体,可能是在另一个模块或类型中。

生命周期和循环标签使用一种 专用语法 ,带有一个前导引号。

名称被隔离在不同的 命名空间 中,允许不同命名空间中的实体共享相同的名称而不会发生冲突。

名称解析 是将路径、标识符和标签绑定到实体声明的编译时过程。

对某些名称的访问可能会基于它们的 可见性 受到限制。

显式声明的实体

在源码中显式引入名称的实体有:

此外, 宏调用属性 可以通过展开为上述项之一来引入名称。

隐式声明的实体

以下实体由语言隐式定义,或由编译器选项和扩展引入:

此外,crate 根模块没有名称,但可以使用某些 路径限定符 或别名来引用。