diff options
| author | Henry <mail@henrygressmann.de> | 2026-04-26 17:55:48 +0200 |
|---|---|---|
| committer | Henry <mail@henrygressmann.de> | 2026-04-26 17:55:48 +0200 |
| commit | 27004a8738c7a3c32ac4fb6966f32647b4c96db7 (patch) | |
| tree | bc3d663d1dc246df20ed30b1ecd0c19935c0f8bb /crates/cli/src | |
| parent | 40bd20bb77b611f7974036c9f2b152a16a46c32a (diff) | |
docs: rework documentation, prepare pre-release
Signed-off-by: Henry <mail@henrygressmann.de>
Diffstat (limited to 'crates/cli/src')
| -rw-r--r-- | crates/cli/src/args.rs | 9 | ||||
| -rw-r--r-- | crates/cli/src/bin.rs | 10 |
2 files changed, 11 insertions, 8 deletions
diff --git a/crates/cli/src/args.rs b/crates/cli/src/args.rs index 1fec2d5..0333c92 100644 --- a/crates/cli/src/args.rs +++ b/crates/cli/src/args.rs @@ -17,8 +17,11 @@ impl From<WasmArg> for WasmValue { impl FromStr for WasmArg { type Err = String; fn from_str(s: &str) -> std::prelude::v1::Result<Self, Self::Err> { - let [ty, val]: [&str; 2] = - s.split(':').collect::<Vec<_>>().try_into().map_err(|e| format!("invalid arguments: {e:?}"))?; + let [ty, val]: [&str; 2] = s + .split(':') + .collect::<Vec<_>>() + .try_into() + .map_err(|_e| "invalid argument format; expected type:value".to_string())?; let arg: WasmValue = match ty { "i32" => val.parse::<i32>().map_err(|e| format!("invalid argument value for i32: {e:?}"))?.into(), @@ -26,7 +29,7 @@ impl FromStr for WasmArg { "f32" => val.parse::<f32>().map_err(|e| format!("invalid argument value for f32: {e:?}"))?.into(), "f64" => val.parse::<f64>().map_err(|e| format!("invalid argument value for f64: {e:?}"))?.into(), "v128" => val.parse::<i128>().map_err(|e| format!("invalid argument value for v128: {e:?}"))?.into(), - t => return Err(format!("Invalid arg type: {t}")), + t => return Err(format!("invalid arg type `{t}`; expected one of i32, i64, f32, f64, v128")), }; Ok(WasmArg(arg)) diff --git a/crates/cli/src/bin.rs b/crates/cli/src/bin.rs index 9b283c3..7e32fed 100644 --- a/crates/cli/src/bin.rs +++ b/crates/cli/src/bin.rs @@ -19,7 +19,7 @@ struct TinyWasmCli { #[argh(subcommand)] nested: TinyWasmSubcommand, - /// log level + /// log level: trace, debug, info, warn, or error #[argh(option, short = 'l', default = "\"info\".to_string()")] log_level: String, } @@ -53,15 +53,15 @@ struct Run { #[argh(positional)] wasm_file: String, - /// function to run + /// exported function to run; omit to only instantiate and run start #[argh(option, short = 'f')] func: Option<String>, - /// arguments to pass to the wasm file + /// arguments passed to the function in type:value form #[argh(option, short = 'a')] args: Vec<WasmArg>, - /// engine to use + /// engine to use (currently only `main`) #[argh(option, short = 'e', default = "Engine::Main")] engine: Engine, } @@ -74,7 +74,7 @@ fn main() -> Result<()> { "warn" => log::LevelFilter::Warn, "error" => log::LevelFilter::Error, "info" => log::LevelFilter::Info, - _ => log::LevelFilter::Info, + other => return Err(eyre::eyre!("invalid log level `{other}`; expected trace, debug, info, warn, or error")), }; pretty_env_logger::formatted_builder().filter_level(level).init(); |
