weldscli_lib/commands/
mod.rs1use clap::{Parser, Subcommand};
2use std::path::PathBuf;
3
4#[derive(Parser)] #[command(name = "welds")]
6#[command(about = "A post-modern ORM", long_about = None)]
7pub struct Args {
8 #[arg(short, long, value_name = "schema")]
10 pub schema_file: Option<PathBuf>,
11 #[arg(short, long, value_name = "project")]
13 pub project_dir: Option<PathBuf>,
14
15 #[arg(short, long, value_name = "database_url")]
17 pub database_url: Option<String>,
18
19 #[command(subcommand)]
20 pub command: Commands,
21
22 #[arg(long, value_name = "hide_unknown_types")]
25 pub hide_unknown_types: bool,
26}
27
28#[derive(Debug, Subcommand)]
29pub enum Commands {
30 Update { table: Option<String> },
32 Generate { table: Option<String> },
34 TestConnection,
36}