From 6d7beb20ca639619896b0c7dde296e92bee15fe4 Mon Sep 17 00:00:00 2001 From: Selimaj Dev Date: Tue, 19 May 2026 11:19:49 +0200 Subject: [PATCH] Bootstrapped main --- src/main.mist | 45 +++++++++++++++++++++++++++++++++++++++ src/main.rs | 59 --------------------------------------------------- 2 files changed, 45 insertions(+), 59 deletions(-) create mode 100644 src/main.mist delete mode 100644 src/main.rs diff --git a/src/main.mist b/src/main.mist new file mode 100644 index 0000000..82c5a93 --- /dev/null +++ b/src/main.mist @@ -0,0 +1,45 @@ +use ; +use ; + +pub mod builder; +pub mod codegen; +pub mod transpiler; + +void main() { + Vec args = env::args().collect(); + + if (args.len() < 2) { + var _ = print_usage(); + process::exit(1); + } + + match (args[1].as_str()) { + "run" => { + var (config, root) = transpiler::build(); + println!(""); + if (builder::build(args, config, root)) { + var _ = println!("\x1b[32m\nBuild successful\x1b[0m"); + } else { + var _ = println!("\x1b[31m\nBuild failed\x1b[0m"); + } + } + "transpile" => { + var _ = transpiler::build(); + } + "version" => { + var _ = println!("mist {}", env!("CARGO_PKG_VERSION")); + } + "help" => { + var _ = print_usage(); + } + unknown => { + var _ = eprintln!("error: unknown command '{}'\n", unknown); + var _ = print_usage(); + var _ = process::exit(1); + } + } +} + +void print_usage() { + var _ = println!("Mist - the mist compiler\n"); +} diff --git a/src/main.rs b/src/main.rs deleted file mode 100644 index d99e832..0000000 --- a/src/main.rs +++ /dev/null @@ -1,59 +0,0 @@ -use std::process::{self}; - -pub mod builder; -pub mod codegen; -pub mod transpiler; - -fn main() { - let args: Vec = std::env::args().collect(); - - if args.len() < 2 { - print_usage(); - process::exit(1); - } - - match args[1].as_str() { - "run" | "build" | "check" | "r" | "b" | "c" => { - let (config, root) = transpiler::build(); - println!(""); - if builder::build(args, config, root) { - println!("\x1b[32m\nBuild successful\x1b[0m"); - } else { - println!("\x1b[31m\nBuild failed\x1b[0m"); - } - } - "transpile" | "t" => { - transpiler::build(); - } - "version" | "--version" | "-v" => { - println!("mist {}", env!("CARGO_PKG_VERSION")); - } - "help" | "--help" | "-h" => { - print_usage(); - } - unknown => { - eprintln!("error: unknown command '{}'\n", unknown); - print_usage(); - process::exit(1); - } - } -} - -fn print_usage() { - println!("Mist - the mist compiler\n"); - println!("󰖟 View our documentation! \x1b[35mhttps://mist.selimaj.dev\x1b[0m"); - println!(" Follow us on github! \x1b[35mhttps://github.com/mist-go\x1b[0m\n"); - println!("usage:"); - println!(" \x1b[36m mist run\x1b[0m,\x1b[36m r\x1b[0m run the project in the current directory\n"); - println!( - " \x1b[36m mist build\x1b[0m,\x1b[36m b\x1b[0m build the project in the current directory\n" - ); - println!( - " \x1b[36m mist transpile\x1b[0m,\x1b[36m t\x1b[0m transpile the project in the current directory\n" - ); - println!( - " \x1b[36m mist check\x1b[0m,\x1b[36m c\x1b[0m check the project in the current directory\n" - ); - println!(" \x1b[36m mist version \x1b[0m print the compiler version\n"); - println!(" \x1b[36m mist help\x1b[0m print this message\n"); -}