You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Rust rustdoc仅显示常量类型、隐藏常量实际值

rustdoc隐藏常量实际值的配置方法

目前稳定版Rust没有提供全局配置项直接关闭常量值展示,可根据你使用的工具链版本选择对应方案:

稳定版通用方案

把常量的求值逻辑封装到加了#[doc(hidden)]标记的const fn里,目标常量直接赋值为该const fn的调用结果即可。
rustdoc不会对#[doc(hidden)]标记的const fn做跨函数的常量求值展开,最终生成的文档只会显示常量的类型声明,不会输出计算后的实际值,和标准库的展示效果完全一致。

示例:

// 该函数不会出现在对外文档中,专门用来封装常量计算逻辑
#[doc(hidden)]
const fn compute_const_val() -> u32 {
    // 任意多行复杂const计算逻辑都可以写在这里,不会被渲染到文档页面
    let mut total = 0;
    let mut idx = 0;
    while idx < 200 {
        total += idx;
        idx += 1;
    }
    total
}

pub struct AppConfig;

impl AppConfig {
    /// 配置项总容量
    pub const CAPACITY: u32 = compute_const_val();
}

这个方案不会影响运行性能,const fn会在编译期完成求值,封装用的const fn可以写成私有,不需要对外暴露。

Nightly工具链全局方案

如果使用Nightly版本Rust,可以直接用rustdoc提供的不稳定参数全局隐藏所有常量的实际值,不需要修改任何业务代码,生成文档时执行如下命令即可:

RUSTDOCFLAGS="-Z unstable-options --hide-constant-values" cargo +nightly doc

开启该参数后,所有公开常量的文档都只会展示pub const 常量名: 类型的声明,不会附带求值后的实际值,Rust官方标准库的文档就是用这个配置实现常量值隐藏效果的。


内容的提问来源于stack exchange,提问作者isaacholt100

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 19:21:29