pragma 0.1.0

An experimental inline DSL for conditional compilation
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use {
    proc_macro::TokenStream,
    syn::{parse::Result as ParseResult, parse_macro_input},
};

mod grammar;
mod parse;

#[proc_macro]
pub fn pragma(input: TokenStream) -> TokenStream {
    let input = parse_macro_input!(input as parse::PragmaInput);
    let output = parse::process_pragma_input(input);
    output.into()
}