diff --git a/lib/src/cli.rs b/lib/src/cli.rs index 857dc9c1b..a099c9297 100644 --- a/lib/src/cli.rs +++ b/lib/src/cli.rs @@ -429,7 +429,11 @@ where I: IntoIterator, I::Item: Into + Clone, { - let opt = Opt::parse_from(args); + run_from_opt(Opt::parse_from(args)).await +} + +/// Internal (non-generic/monomorphized) primary CLI entrypoint +async fn run_from_opt(opt: Opt) -> Result<()> { match opt { Opt::Upgrade(opts) => upgrade(opts).await, Opt::Switch(opts) => switch(opts).await,