forest/dev/
main.rs

1// Copyright 2019-2026 ChainSafe Systems
2// SPDX-License-Identifier: Apache-2.0, MIT
3
4use super::subcommands::Cli;
5use crate::cli_shared::logger::setup_minimal_logger;
6use clap::Parser as _;
7use std::ffi::OsString;
8
9pub async fn main<ArgT>(args: impl IntoIterator<Item = ArgT>) -> anyhow::Result<()>
10where
11    ArgT: Into<OsString> + Clone,
12{
13    // Capture Cli inputs
14    let Cli { cmd } = Cli::parse_from(args);
15    setup_minimal_logger();
16    let client = crate::rpc::Client::default_or_from_env(None)?;
17    cmd.run(client).await
18}