aboutsummaryrefslogtreecommitdiff
path: root/mingling_cli/src/main.rs
blob: c822a12e5cf6fadf310d83045a4d1757bc9cff74 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
use crate::{linter::MinglingLinterSetup, metadata::MinglingMetadataSetup};
use mingling::{
    macros::gen_program,
    setup::{ExitCodeSetup, picker::HelpFlagSetup},
};

pub mod diagnostic;
pub mod errors;
pub mod linter;
pub mod lints;
pub mod message;
pub mod metadata;

#[tokio::main]
async fn main() {
    let mut program = ThisProgram::new();

    // Setups
    program.with_setup(HelpFlagSetup::default());
    program.with_setup(ExitCodeSetup::default());

    program.with_setup(MinglingMetadataSetup);
    program.with_setup(MinglingLinterSetup);

    // Exec
    program.exec_and_exit().await;
}

gen_program!();