From 0af8f0ba27bba49767c1e8c5994f09c7d80d30c6 Mon Sep 17 00:00:00 2001 From: Rerumu <25379555+Rerumu@users.noreply.github.com> Date: Sun, 24 Dec 2023 15:48:43 -0500 Subject: [PATCH] Fix #31 --- codegen/luajit/src/bin/wasm2luajit.rs | 16 +++++++++++++--- codegen/luau/src/bin/wasm2luau.rs | 14 +++++++++++--- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/codegen/luajit/src/bin/wasm2luajit.rs b/codegen/luajit/src/bin/wasm2luajit.rs index 34ccd23..56c22a4 100644 --- a/codegen/luajit/src/bin/wasm2luajit.rs +++ b/codegen/luajit/src/bin/wasm2luajit.rs @@ -1,11 +1,21 @@ -use std::io::{Result, Write}; +use std::io::{ErrorKind, Result, Write}; use wasm_ast::module::Module; fn load_arg_source() -> Result> { - let name = std::env::args().nth(1).expect("usage: wasm2luajit "); + let mut arguments = std::env::args(); + let path = arguments + .next() + .unwrap_or_else(|| "wasm2luajit".to_string()); - std::fs::read(name) + arguments.next().map_or_else( + || { + eprintln!("usage: {path} \n"); + + Err(ErrorKind::NotFound.into()) + }, + std::fs::read, + ) } fn do_runtime(lock: &mut dyn Write) -> Result<()> { diff --git a/codegen/luau/src/bin/wasm2luau.rs b/codegen/luau/src/bin/wasm2luau.rs index 4bfa8fb..c3c2ce9 100644 --- a/codegen/luau/src/bin/wasm2luau.rs +++ b/codegen/luau/src/bin/wasm2luau.rs @@ -1,11 +1,19 @@ -use std::io::{Result, Write}; +use std::io::{ErrorKind, Result, Write}; use wasm_ast::module::Module; fn load_arg_source() -> Result> { - let name = std::env::args().nth(1).expect("usage: wasm2luajit "); + let mut arguments = std::env::args(); + let path = arguments.next().unwrap_or_else(|| "wasm2luau".to_string()); - std::fs::read(name) + arguments.next().map_or_else( + || { + eprintln!("usage: {path} \n"); + + Err(ErrorKind::NotFound.into()) + }, + std::fs::read, + ) } fn do_runtime(lock: &mut dyn Write) -> Result<()> {