typed-ident 0.0.1

Type-safe identifier validation, inspection, and mutation.
Documentation
// =============================================================================
// MODULES
// =============================================================================

// -----------------------------------------------------------------------------
mod cli;
mod commands;
mod common;
mod hidden;

// =============================================================================
// USES
// =============================================================================

// -----------------------------------------------------------------------------
use clap::Parser;
pub use cli::*;
use common::Command;
use std::process::ExitCode;

// =============================================================================
// MAIN
// =============================================================================

// -----------------------------------------------------------------------------
fn main() -> ExitCode {
    let cli = Cli::parse();

    match cli.command {
        Command::Convert => commands::convert(&cli),
        Command::Join => commands::join(&cli),
        Command::Segment => commands::segment(&cli),
        Command::Validate => {
            if cli.hidden {
                hidden::validate_open(&cli)
            } else {
                commands::validate(&cli)
            }
        }
    }
}