use clap::Args; #[derive(Args)] pub struct InitArgs { /// Name of the package (vendor/name) #[arg(long)] pub name: Option, /// Description of the package #[arg(long)] pub description: Option, /// Author name of the package #[arg(long)] pub author: Option, /// Type of the package #[arg(long, value_name = "TYPE")] pub r#type: Option, /// Homepage of the package #[arg(long)] pub homepage: Option, /// Package(s) to require #[arg(long)] pub require: Vec, /// Package(s) to require for development #[arg(long)] pub require_dev: Vec, /// Minimum stability (stable, RC, beta, alpha, dev) #[arg(short, long)] pub stability: Option, /// License of the package #[arg(short, long)] pub license: Option, /// Add a custom repository #[arg(long)] pub repository: Vec, /// Define a PSR-4 autoload namespace #[arg(short, long)] pub autoload: Option, } pub fn execute(_args: &InitArgs) { todo!() }