#[derive(structopt::StructOpt, paw_structopt::StructOpt)] #[structopt(setting = structopt::clap::AppSettings::ColoredHelp)] struct Args { #[structopt(flatten)] address: clap_flags::Address, #[structopt(flatten)] logger: clap_flags::Log, #[structopt(flatten)] port: clap_flags::Port, } #[async_std::main] #[paw::main] async fn main(args: Args) -> Result<(), Box> { args.logger.start(env!("CARGO_PKG_NAME"))?; let mut app = tide::new(); app.at("/").get(|_| async move { "Hello, world!" }); app.listen((&*args.address.address, args.port.port)).await?; Ok(()) }