Rust 使用了函数“print”,但为什么它会警告我“未使用”?
这里是功能所在 如上所示,Rust 使用了函数“print”,但为什么它会警告我“未使用”?,rust,rust-cargo,wasm-bindgen,wasm-pack,Rust,Rust Cargo,Wasm Bindgen,Wasm Pack,这里是功能所在 如上所示,wasm模块将仅使用wasm32 unknown目标编译。而打印功能用于: //huangjj27:env_loggersrc\fmt\writer\termcolor\shim_impl.rs:32-48 发布(在板条箱中::fmt::writer)fn打印(&self,buf:&Buffer)->io::结果{ //此impl使用'eprint'和'print'宏 //而不是直接使用流。 //这是为了通过“货物测试”捕获它们的输出` 让log=String::fro
wasm
模块将仅使用wasm32 unknown
目标编译。而打印
功能用于:
//huangjj27:env_loggersrc\fmt\writer\termcolor\shim_impl.rs:32-48
发布(在板条箱中::fmt::writer)fn打印(&self,buf:&Buffer)->io::结果{
//此impl使用'eprint'和'print'宏
//而不是直接使用流。
//这是为了通过“货物测试”捕获它们的输出`
让log=String::from_utf8_lossy(&buf.0);
#[cfg(全部(target_arch=“wasm32”,target_vendor=“unknown”)]
wasm::打印(&log,self.target);
#[cfg(并非全部(target_arch=“wasm32”,target_vendor=“unknown”)]
匹配自我目标{
Target::Stderr=>eprint!(“{}”,log),
目标::Stdout=>print!(“{}”,log),
}
好(())
}
然后我用以下方法进行测试:
wasm包测试--节点--无默认功能--测试节点
然后我得到了一个令人困惑的问题:
[INFO]: Checking for the Wasm target...
Compiling env_logger v0.8.2 (C:\Users\huangjj27\Documents\codes\env_logger)
error: function is never used: `print`
--> src\fmt\writer\wasm.rs:13:31
|
13 | pub(in crate::fmt::writer) fn print(msg: &str, t: Target) {
| ^^^^^
|
note: lint level defined here
--> src\lib.rs:280:54
|
280 | #![deny(missing_debug_implementations, missing_docs, warnings)]
| ^^^^^^^^
= note: `#[deny(dead_code)]` implied by `#[deny(warnings)]`
error: function is never used: `print`
--> src\fmt\writer\wasm.rs:13:31
|
13 | pub(in crate::fmt::writer) fn print(msg: &str, t: Target) {
| ^^^^^
|
note: lint level defined here
--> src\lib.rs:280:54
|
280 | #![deny(missing_debug_implementations, missing_docs, warnings)]
| ^^^^^^^^
= note: `#[deny(dead_code)]` implied by `#[deny(warnings)]`
error: aborting due to previous error
error: could not compile `env_logger`.
warning: build failed, waiting for other jobs to finish...
error: aborting due to previous error
error: could not compile `env_logger`.
To learn more, run the command again with --verbose.
Error: Compilation of your program failed
Caused by: failed to execute `cargo build`: exited with exit code: 101
full command: "cargo" "build" "--tests" "--target" "wasm32-unknown-unknown"
我的问题是:
wasm::print
如果您只在其他未使用的函数中使用某个函数,那么它仍然会向您发出警告。如果要禁用该函数的警告,可以将
#[allow(dead_code)]
放在函数标题前的行上。我相信调用wasm::print
的函数也未使用。锈蚀会递归检查。哦,你正在向环境记录器添加wasm支持。我很困惑到底发生了什么。
[INFO]: Checking for the Wasm target...
Compiling env_logger v0.8.2 (C:\Users\huangjj27\Documents\codes\env_logger)
error: function is never used: `print`
--> src\fmt\writer\wasm.rs:13:31
|
13 | pub(in crate::fmt::writer) fn print(msg: &str, t: Target) {
| ^^^^^
|
note: lint level defined here
--> src\lib.rs:280:54
|
280 | #![deny(missing_debug_implementations, missing_docs, warnings)]
| ^^^^^^^^
= note: `#[deny(dead_code)]` implied by `#[deny(warnings)]`
error: function is never used: `print`
--> src\fmt\writer\wasm.rs:13:31
|
13 | pub(in crate::fmt::writer) fn print(msg: &str, t: Target) {
| ^^^^^
|
note: lint level defined here
--> src\lib.rs:280:54
|
280 | #![deny(missing_debug_implementations, missing_docs, warnings)]
| ^^^^^^^^
= note: `#[deny(dead_code)]` implied by `#[deny(warnings)]`
error: aborting due to previous error
error: could not compile `env_logger`.
warning: build failed, waiting for other jobs to finish...
error: aborting due to previous error
error: could not compile `env_logger`.
To learn more, run the command again with --verbose.
Error: Compilation of your program failed
Caused by: failed to execute `cargo build`: exited with exit code: 101
full command: "cargo" "build" "--tests" "--target" "wasm32-unknown-unknown"