summaryrefslogtreecommitdiff
path: root/crates/cli/src/cmd/compile.rs
diff options
context:
space:
mode:
authorHenry <mail@henrygressmann.de>2026-04-26 19:44:34 +0200
committerHenry <mail@henrygressmann.de>2026-04-26 19:44:34 +0200
commit463a3a6f56a5ca06cda890fd6fe7f16485ef70a0 (patch)
treebfa657a2de16c04cd36f4b6c61e77b370fcd46fc /crates/cli/src/cmd/compile.rs
parent27004a8738c7a3c32ac4fb6966f32647b4c96db7 (diff)
feat: new tinywasm cli
Signed-off-by: Henry <mail@henrygressmann.de>
Diffstat (limited to 'crates/cli/src/cmd/compile.rs')
-rw-r--r--crates/cli/src/cmd/compile.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/crates/cli/src/cmd/compile.rs b/crates/cli/src/cmd/compile.rs
new file mode 100644
index 0000000..93e38d5
--- /dev/null
+++ b/crates/cli/src/cmd/compile.rs
@@ -0,0 +1,15 @@
+use eyre::Result;
+
+use crate::cli::CompileArgs;
+use crate::load::{default_twasm_output_path, load_compilable_module, write_output_bytes};
+
+pub fn run(args: CompileArgs) -> Result<()> {
+ let module = load_compilable_module(&args.input)?;
+ let twasm = module.serialize_twasm()?;
+ let output = match args.output {
+ Some(output) => output,
+ None => default_twasm_output_path(&args.input)?,
+ };
+
+ write_output_bytes(&output, &twasm, args.force)
+}