summaryrefslogtreecommitdiff
path: root/crates/cli/src/cmd/completion.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/cli/src/cmd/completion.rs')
-rw-r--r--crates/cli/src/cmd/completion.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/crates/cli/src/cmd/completion.rs b/crates/cli/src/cmd/completion.rs
new file mode 100644
index 0000000..5815f57
--- /dev/null
+++ b/crates/cli/src/cmd/completion.rs
@@ -0,0 +1,12 @@
+use std::io;
+
+use clap::CommandFactory;
+use eyre::Result;
+
+use crate::cli::{Cli, CompletionArgs};
+
+pub fn run(args: CompletionArgs) -> Result<()> {
+ let mut cmd = Cli::command();
+ clap_complete::generate(args.shell, &mut cmd, "tinywasm", &mut io::stdout());
+ Ok(())
+}