From e7cee29c849286f9b492eb404634a0387b9a75a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Wed, 31 Jul 2019 17:02:20 +0200 Subject: Add --current-thread flag (#2702) --- cli/flags.rs | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'cli/flags.rs') diff --git a/cli/flags.rs b/cli/flags.rs index 978b0409f..194e254ec 100644 --- a/cli/flags.rs +++ b/cli/flags.rs @@ -43,6 +43,8 @@ pub struct DenoFlags { pub v8_flags: Option>, pub xeval_replvar: Option, pub xeval_delim: Option, + // Use tokio::runtime::current_thread + pub current_thread: bool, } static ENV_VARIABLES_HELP: &str = "ENVIRONMENT VARIABLES: @@ -158,6 +160,12 @@ To get help on the another subcommands (run in this case): .help("Load compiler configuration file") .takes_value(true) .global(true), + ) + .arg( + Arg::with_name("current-thread") + .long("current-thread") + .global(true) + .help("Use tokio::runtime::current_thread"), ).arg( Arg::with_name("importmap") .long("importmap") @@ -443,6 +451,9 @@ pub fn parse_flags( ) -> DenoFlags { let mut flags = maybe_flags.unwrap_or_default(); + if matches.is_present("current-thread") { + flags.current_thread = true; + } if matches.is_present("log-level") { flags.log_level = match matches.value_of("log-level").unwrap() { "debug" => Some(Level::Debug), @@ -1620,4 +1631,19 @@ mod tests { assert_eq!(subcommand, DenoSubcommand::Run); assert_eq!(argv, svec!["deno", "script.ts"]) } + + #[test] + fn test_flags_from_vec_35() { + let (flags, subcommand, argv) = + flags_from_vec(svec!["deno", "--current-thread", "script.ts"]); + assert_eq!( + flags, + DenoFlags { + current_thread: true, + ..DenoFlags::default() + } + ); + assert_eq!(subcommand, DenoSubcommand::Run); + assert_eq!(argv, svec!["deno", "script.ts"]) + } } -- cgit v1.2.3