我知道
#![allow(non_snake_case)]
但这只会禁用该特定文件/项目的警告。
如果您想知道,我是一个学习 rust 的初学者,每次重新编译时都会出现这样的警告,老实说非常无益且烦人。我的意思是,当我努力做基本的事情时,变量名非蛇形大小写是我最不用担心的,宝贵的屏幕空间被无用的警告占用是不对的。更不用说 _ 字符使用大量空间并且无助于赋予变量名称含义。
就我个人而言,我认为你不应该这么做。也就是说,要在 Rust 中禁用系统范围内的非蛇形案例警告,您可以使用更通用的方法,包括通过环境变量或全局配置文件为 Rust 编译器 (rustc) 设置默认配置。不幸的是,Rust 不像其他一些语言那样支持简单的配置文件,但您可以通过设置环境或构建脚本来解决此问题,以便在所有项目中一致地应用此设置。
以下是一些需要考虑的方法:
RUSTFLAGS
环境变量您可以在 shell 中设置
RUSTFLAGS
环境变量以包含全局允许非蛇形情况的指令。这可以通过将以下行添加到 shell 配置文件中来完成(如 .bashrc
):
export RUSTFLAGS="-A non_snake_case"
每次在 shell 会话中编译 Rust 代码时,这都会附加标志以禁用
non_snake_case
lint。请注意,这将影响在此环境中编译的所有 Rust 项目。
当然,当您必须在 CI 中或每台机器上更改它时,这并不理想。
如果您更喜欢不影响全局环境的基于 Cargo 的解决方案,您可以通过在主目录(或系统上相应的配置目录)中创建一个
.cargo/config.toml
文件来将 Cargo 配置为全局忽略某些 lints以下内容:
[build]
rustflags = ["-A non_snake_case"]
这将指示 Cargo 每次在您的系统上构建 Cargo 项目时将
-A non_snake_case
参数传递给 rustc
。该方法是 Cargo 特有的,不会影响没有 Cargo 编译的 Rust 代码。