From 62e539de5ce0678f8ec8de83f51a4713bec323f8 Mon Sep 17 00:00:00 2001 From: Ilya Bylich Date: Fri, 2 Feb 2024 11:20:57 +0100 Subject: [PATCH] add wasmer config, bump version --- Cargo.toml | 4 ++-- examples/codegen.rs | 32 ++++++++++++-------------------- wasmer.toml | 22 ++++++++++++++++++++++ 3 files changed, 36 insertions(+), 22 deletions(-) create mode 100644 wasmer.toml diff --git a/Cargo.toml b/Cargo.toml index 225bb18..47e6e75 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,9 +5,9 @@ edition = "2021" license = "MIT" name = "lib-ruby-parser-nodes" repository = "https://github.com/lib-ruby-parser/nodes" -version = "0.55.0" +version = "0.56.0" [dependencies] liquid = "= 0.26" liquid-core = "= 0.26" -serde = {version = "1.0", features = ["derive"]} +serde = { version = "1.0", features = ["derive"] } diff --git a/examples/codegen.rs b/examples/codegen.rs index a8e62e7..8642c21 100644 --- a/examples/codegen.rs +++ b/examples/codegen.rs @@ -3,28 +3,20 @@ fn print_usage_and_exit() -> ! { std::process::exit(1); } -fn main() { - let mut args = std::env::args().collect::>(); +fn try_arg(key: &str) -> Option { + let idx = std::env::args().position(|e| e == key)?; + let value = std::env::args().nth(idx + 1)?; + Some(value) +} - let mut get_arg = |key: &str| { - let key_idx = args - .iter() - .enumerate() - .find(|&(_idx, e)| e == key) - .unwrap_or_else(|| { - eprintln!("Unable to get {} CLI argument", key); - print_usage_and_exit() - }) - .0; - let _key = args.remove(key_idx); - if key_idx >= args.len() { - eprintln!("No {} CLI option given", key); - print_usage_and_exit(); - } - let value = args.remove(key_idx); - value - }; +fn get_arg(key: &str) -> String { + try_arg(key).unwrap_or_else(|| { + eprintln!("No {} CLI option given", key); + print_usage_and_exit() + }) +} +fn main() { let template_path = get_arg("--template"); let output_path = get_arg("--write-to"); diff --git a/wasmer.toml b/wasmer.toml new file mode 100644 index 0000000..3025d73 --- /dev/null +++ b/wasmer.toml @@ -0,0 +1,22 @@ +[package] +name = 'iliabylich/lib-ruby-parser-nodes' +version = '0.55.0' +description = 'Ruby parser nodes data' +license = 'MIT' +readme = 'README.md' +repository = 'https://github.com/lib-ruby-parser/nodes' + +# See more keys and definitions at https://docs.wasmer.io/registry/manifest + +[[module]] +name = 'lib-ruby-parser-nodes' +source = 'target/wasm32-wasi/release/examples/codegen.wasm' +abi = 'wasi' + +[module.interfaces] +wasi = '0.1.0-unstable' + +[[command]] +name = 'lib-ruby-parser-nodes' +module = 'lib-ruby-parser-nodes' +runner = 'wasi'