From 47dc763b235b239fb2a4d8074d11f82e8ffa644f Mon Sep 17 00:00:00 2001 From: mark Date: Fri, 16 Jun 2023 18:49:12 +0200 Subject: [PATCH] . --- mers/src/lang/code_runnable.rs | 4 +++- mers/src/main.rs | 8 +++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/mers/src/lang/code_runnable.rs b/mers/src/lang/code_runnable.rs index ca35142..5785567 100755 --- a/mers/src/lang/code_runnable.rs +++ b/mers/src/lang/code_runnable.rs @@ -433,7 +433,9 @@ impl RScript { Ok(Self { main, info }) } pub fn run(&self, args: Vec) -> VData { - self.main.inputs[0].lock().unwrap().0 = VDataEnum::List(VSingleType::Any.into(), args).to(); + for (input, arg) in self.main.inputs.iter().zip(args.into_iter()) { + input.lock().unwrap().0 = arg; + } self.main.run(&self.info) } } diff --git a/mers/src/main.rs b/mers/src/main.rs index 08598e1..9273e36 100755 --- a/mers/src/main.rs +++ b/mers/src/main.rs @@ -192,17 +192,19 @@ fn normal_main() { }; info.main_fn_args = vec![( "args".to_string(), - VSingleType::List(VSingleType::Any.into()).to(), + VSingleType::List(VSingleType::String.into()).to(), )]; match parsing::parse::parse_custom_info(&mut file, info) { Ok(script) => { if run { - script.run( + script.run(vec![VDataEnum::List( + VSingleType::String.to(), std::env::args() .skip(args_to_skip) .map(|v| VDataEnum::String(v).to()) .collect(), - ); + ) + .to()]); } } Err(e) => {