aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/main.rs10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/main.rs b/src/main.rs
index bc68d40..f7d1fbf 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -7,10 +7,18 @@ struct Args {
print: bool,
}
+macro_rules! link {
+ ([ $( $ident:tt ),* ]) => {
+ vec![
+ $( (stringify!($ident).to_string(), $ident), )*
+ ]
+ }
+}
+
fn main() {
let args = parse_args();
let file = args.file.unwrap_or_else(|| Path::new("progs/tests/simple.sy").to_owned());
- let errs = match run_file(&file, args.print, vec![(String::from("extern_test"), extern_test)]) {
+ let errs = match run_file(&file, args.print, link!([extern_test])) {
Err(it) => it,
_ => return,
};