【问题标题】:What does the pub(crate) function declaration syntax mean? When is it used? [duplicate]pub(crate) 函数声明语法是什么意思?什么时候使用? [复制]
【发布时间】:2020-08-15 23:15:41
【问题描述】:

我是一个 rust 新手,我在一个开源 repository pub(crate) fn 中遇到了这种函数声明

我以前从未见过这种语法,所以我想知道它是用来做什么的?

【问题讨论】:

    标签: rust


    【解决方案1】:

    它定义了可见性级别。可见性(隐私)级别解释here

    语法 能见度: 酒馆 |酒馆(板条箱) |酒馆(自我) |酒吧(超级) | pub(在 SimplePath 中)

    pub(in path) 使项目在提供的路径中可见。 path 必须是要声明其可见性的项目的父模块。

    pub(crate) 使项目在当前 crate 中可见。

    pub(super) 使项目对父模块可见。这相当于 pub(in super)。

    pub(self) 使项目对当前模块可见。这相当于 pub(in self)。

    所以pub(crate) fn find_key<K, S>(keys: &Chunk<K, S>, key: &K) -> Option<usize> 使find_key 函数在板条箱内公开(可供使用),但不在板条箱外。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-16
      • 1970-01-01
      • 1970-01-01
      • 2011-03-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多