Migrate most of wasmtime from lazy_static to once_cell (#4368)
* Update tracing-core to a version which doesn't depend on lazy-static. * Update crossbeam-utils to a version that doesn't depend on lazy-static. * Update crossbeam-epoch to a version that doesn't depend on lazy-static. * Update clap to a version that doesn't depend on lazy-static. * Convert Wasmtime's own use of lazy_static to once_cell. * Make `GDB_REGISTRATION`'s comment a doc comment. * Fix compilation on Windows.
This commit is contained in:
53
src/lib.rs
53
src/lib.rs
@@ -23,36 +23,41 @@
|
||||
)
|
||||
)]
|
||||
|
||||
use once_cell::sync::Lazy;
|
||||
use wasmtime_cli_flags::{SUPPORTED_WASI_MODULES, SUPPORTED_WASM_FEATURES};
|
||||
|
||||
lazy_static::lazy_static! {
|
||||
static ref FLAG_EXPLANATIONS: String = {
|
||||
use std::fmt::Write;
|
||||
static FLAG_EXPLANATIONS: Lazy<String> = Lazy::new(|| {
|
||||
use std::fmt::Write;
|
||||
|
||||
let mut s = String::new();
|
||||
let mut s = String::new();
|
||||
|
||||
// Explain --wasm-features.
|
||||
writeln!(&mut s, "Supported values for `--wasm-features`:").unwrap();
|
||||
writeln!(&mut s).unwrap();
|
||||
let max = SUPPORTED_WASM_FEATURES.iter().max_by_key(|(name, _)| name.len()).unwrap();
|
||||
for (name, desc) in SUPPORTED_WASM_FEATURES.iter() {
|
||||
writeln!(&mut s, "{:width$} {}", name, desc, width = max.0.len() + 2).unwrap();
|
||||
}
|
||||
writeln!(&mut s).unwrap();
|
||||
// Explain --wasm-features.
|
||||
writeln!(&mut s, "Supported values for `--wasm-features`:").unwrap();
|
||||
writeln!(&mut s).unwrap();
|
||||
let max = SUPPORTED_WASM_FEATURES
|
||||
.iter()
|
||||
.max_by_key(|(name, _)| name.len())
|
||||
.unwrap();
|
||||
for (name, desc) in SUPPORTED_WASM_FEATURES.iter() {
|
||||
writeln!(&mut s, "{:width$} {}", name, desc, width = max.0.len() + 2).unwrap();
|
||||
}
|
||||
writeln!(&mut s).unwrap();
|
||||
|
||||
// Explain --wasi-modules.
|
||||
writeln!(&mut s, "Supported values for `--wasi-modules`:").unwrap();
|
||||
writeln!(&mut s).unwrap();
|
||||
let max = SUPPORTED_WASI_MODULES.iter().max_by_key(|(name, _)| name.len()).unwrap();
|
||||
for (name, desc) in SUPPORTED_WASI_MODULES.iter() {
|
||||
writeln!(&mut s, "{:width$} {}", name, desc, width = max.0.len() + 2).unwrap();
|
||||
}
|
||||
// Explain --wasi-modules.
|
||||
writeln!(&mut s, "Supported values for `--wasi-modules`:").unwrap();
|
||||
writeln!(&mut s).unwrap();
|
||||
let max = SUPPORTED_WASI_MODULES
|
||||
.iter()
|
||||
.max_by_key(|(name, _)| name.len())
|
||||
.unwrap();
|
||||
for (name, desc) in SUPPORTED_WASI_MODULES.iter() {
|
||||
writeln!(&mut s, "{:width$} {}", name, desc, width = max.0.len() + 2).unwrap();
|
||||
}
|
||||
|
||||
writeln!(&mut s).unwrap();
|
||||
writeln!(&mut s, "Features prefixed with '-' will be disabled.").unwrap();
|
||||
writeln!(&mut s).unwrap();
|
||||
writeln!(&mut s, "Features prefixed with '-' will be disabled.").unwrap();
|
||||
|
||||
s
|
||||
};
|
||||
}
|
||||
s
|
||||
});
|
||||
|
||||
pub mod commands;
|
||||
|
||||
Reference in New Issue
Block a user