@@ -5,7 +5,7 @@ use urlencoding::encode;
55
66use crate :: compile;
77use crate :: gui:: new_window;
8- use crate :: pdl:: interpreter:: run_file_sync as run ;
8+ use crate :: pdl:: interpreter:: { load_scope , run_file_sync, RunOptions } ;
99
1010#[ cfg( desktop) ]
1111pub fn setup ( app : & mut tauri:: App ) -> Result < bool , Box < dyn :: std:: error:: Error > > {
@@ -49,26 +49,31 @@ pub fn setup(app: &mut tauri::App) -> Result<bool, Box<dyn ::std::error::Error>>
4949 _ => Err ( Box :: from ( "Unsupported compile command" ) ) ,
5050 }
5151 }
52- "run" => run (
52+ "run" => run_file_sync (
5353 subcommand_args
5454 . get ( "source" )
5555 . and_then ( |a| a. value . as_str ( ) )
5656 . expect ( "valid positional source arg" ) ,
57- subcommand_args. get ( "trace" ) . and_then ( |a| a. value . as_str ( ) ) ,
58- subcommand_args. get ( "data" ) . and_then ( |a| a. value . as_str ( ) ) ,
59- subcommand_args
60- . get ( "data-file" )
61- . and_then ( |a| a. value . as_str ( ) ) ,
62- subcommand_args
63- . get ( "debug" )
64- . and_then ( |a| a. value . as_bool ( ) )
65- . or ( Some ( false ) )
66- == Some ( true ) ,
67- subcommand_args
68- . get ( "no-stream" )
69- . and_then ( |a| a. value . as_bool ( ) )
70- . or ( Some ( false ) )
71- == Some ( false ) ,
57+ RunOptions {
58+ trace : subcommand_args. get ( "trace" ) . and_then ( |a| a. value . as_str ( ) ) ,
59+ debug : subcommand_args
60+ . get ( "debug" )
61+ . and_then ( |a| a. value . as_bool ( ) )
62+ . or ( Some ( false ) )
63+ == Some ( true ) ,
64+ stream : subcommand_args
65+ . get ( "no-stream" )
66+ . and_then ( |a| a. value . as_bool ( ) )
67+ . or ( Some ( false ) )
68+ == Some ( false ) ,
69+ } ,
70+ load_scope (
71+ subcommand_args. get ( "data" ) . and_then ( |a| a. value . as_str ( ) ) ,
72+ subcommand_args
73+ . get ( "data-file" )
74+ . and_then ( |a| a. value . as_str ( ) ) ,
75+ None ,
76+ ) ?,
7277 )
7378 . and_then ( |_trace| Ok ( true ) ) ,
7479 "view" => new_window (
0 commit comments