diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..0b5b1b1 --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,100 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "hermit-abi" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" + +[[package]] +name = "is-terminal" +version = "0.4.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" +dependencies = [ + "hermit-abi", + "libc", + "windows-sys", +] + +[[package]] +name = "is_ci" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7655c9839580ee829dfacba1d1278c2b7883e50a277ff7541299489d6bdfdc45" + +[[package]] +name = "libc" +version = "0.2.189" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2" + +[[package]] +name = "log" +version = "0.4.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9f8bd3e56ce4dfc153cf470fffbfa98c7620958b312ca5c3a4b8d5181fd13c6" + +[[package]] +name = "owo-colors" +version = "4.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d211803b9b6b570f68772237e415a029d5a50c65d382910b879fb19d3271f94d" +dependencies = [ + "supports-color 2.1.0", + "supports-color 3.0.2", +] + +[[package]] +name = "plume-log" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053e4c4a98f2af490af4545b23d0ccea01be77cb61e627e49f48defb68faba42" +dependencies = [ + "log", + "owo-colors", +] + +[[package]] +name = "shiro" +version = "0.1.0" +dependencies = [ + "log", + "plume-log", +] + +[[package]] +name = "supports-color" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6398cde53adc3c4557306a96ce67b302968513830a77a95b2b17305d9719a89" +dependencies = [ + "is-terminal", + "is_ci", +] + +[[package]] +name = "supports-color" +version = "3.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c64fc7232dd8d2e4ac5ce4ef302b1d81e0b80d055b9d77c7c4f51f6aa4c867d6" +dependencies = [ + "is_ci", +] + +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link", +] diff --git a/Cargo.toml b/Cargo.toml index bbe154d..ac42604 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,3 +4,5 @@ version = "0.1.0" edition = "2024" [dependencies] +log = "0.4.34" +plume-log = "0.3.0" diff --git a/examples/print.sr b/examples/print.sr new file mode 100644 index 0000000..c3b30ec --- /dev/null +++ b/examples/print.sr @@ -0,0 +1,13 @@ +main() { + uint8 x = 0; + if x > 0 { + print("Hello World, x is zero"); + } else { + print("Hello World, x is %", x); + } + + while x < 10 { + x++; + } + print("x is % now", x); +} \ No newline at end of file diff --git a/src/main.rs b/src/main.rs index e7a11a9..2aada4d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,3 +1,22 @@ -fn main() { - println!("Hello, world!"); +#![allow(unused_imports)] + +use std::env; +use std::fs; +use log::{debug, error, info, trace, warn}; +use plume_log::{PlumeBuilder, success}; + +fn main(){ + PlumeBuilder::new() + .with_level(log::LevelFilter::Trace) + .init() + .expect("Failed to init the logger"); + + let args: Vec = env::args().collect(); + let file_path = &args[1]; + info!("{}", file_path); + + let contents = fs::read_to_string(file_path) + .expect("File can't be read"); + + println!("{}", contents); }