#[derive(Clone, Copy, Debug)]
pub struct StdModule {
pub path: &'static str,
pub file_name: &'static str,
pub source: &'static str,
}
pub const PRELUDE: &str = "std.prelude";
pub const HIDDEN_PRELUDE_NAMES: &[&str] = &["Never"];
macro_rules! module {
($path:literal, $file:literal) => {
StdModule {
path: $path,
file_name: concat!("<std>/", $file),
source: include_str!(concat!("../std/", $file)),
}
};
}
pub const MODULES: &[StdModule] = &[
module!("std.prelude", "prelude.wolf"),
module!("std.io", "io.wolf"),
module!("std.string", "string.wolf"),
module!("std.list", "list.wolf"),
module!("std.map", "map.wolf"),
module!("std.math", "math.wolf"),
module!("std.fs", "fs.wolf"),
module!("std.process", "process.wolf"),
];