diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-02-11 00:15:14 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-02-11 00:15:14 +0900 |
| commit | 8441abd29aea53719c19f34ec6d542a4575a23c9 (patch) | |
| tree | 2d5704acdae268253b69c4bb9a37653635037138 /src/commands/init.rs | |
| parent | 9dacb9293f9b995c6c810227f73b4aa5cf019bab (diff) | |
| download | php-mozart-8441abd29aea53719c19f34ec6d542a4575a23c9.tar.gz php-mozart-8441abd29aea53719c19f34ec6d542a4575a23c9.tar.zst php-mozart-8441abd29aea53719c19f34ec6d542a4575a23c9.zip | |
define subcommands and options
Diffstat (limited to 'src/commands/init.rs')
| -rw-r--r-- | src/commands/init.rs | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/src/commands/init.rs b/src/commands/init.rs new file mode 100644 index 0000000..059e494 --- /dev/null +++ b/src/commands/init.rs @@ -0,0 +1,52 @@ +use clap::Args; + +#[derive(Args)] +pub struct InitArgs { + /// Name of the package (vendor/name) + #[arg(long)] + pub name: Option<String>, + + /// Description of the package + #[arg(long)] + pub description: Option<String>, + + /// Author name of the package + #[arg(long)] + pub author: Option<String>, + + /// Type of the package + #[arg(long, value_name = "TYPE")] + pub r#type: Option<String>, + + /// Homepage of the package + #[arg(long)] + pub homepage: Option<String>, + + /// Package(s) to require + #[arg(long)] + pub require: Vec<String>, + + /// Package(s) to require for development + #[arg(long)] + pub require_dev: Vec<String>, + + /// Minimum stability (stable, RC, beta, alpha, dev) + #[arg(short, long)] + pub stability: Option<String>, + + /// License of the package + #[arg(short, long)] + pub license: Option<String>, + + /// Add a custom repository + #[arg(long)] + pub repository: Vec<String>, + + /// Define a PSR-4 autoload namespace + #[arg(short, long)] + pub autoload: Option<String>, +} + +pub fn execute(_args: &InitArgs) { + todo!() +} |
