diff --git a/schala-codegen/Cargo.toml b/schala-codegen/Cargo.toml index 28c33b8..c76a527 100644 --- a/schala-codegen/Cargo.toml +++ b/schala-codegen/Cargo.toml @@ -4,6 +4,8 @@ version = "0.1.0" authors = ["greg "] [dependencies] +syn = "0.11.11" +quote = "0.3.15" [lib] proc-macro = true diff --git a/schala-codegen/src/lib.rs b/schala-codegen/src/lib.rs index 9588701..deae07f 100644 --- a/schala-codegen/src/lib.rs +++ b/schala-codegen/src/lib.rs @@ -1,5 +1,8 @@ #![feature(proc_macro)] extern crate proc_macro; +#[macro_use] +extern crate quote; +extern crate syn; use proc_macro::TokenStream; #[proc_macro] @@ -7,6 +10,12 @@ pub fn print_a_thing(_input: TokenStream) -> TokenStream { "println!(\"Invoked from a proc macro\");".parse().unwrap() } + +#[proc_macro_derive(ProgrammingLanguageInterface)] +pub fn derive_programming_language_interface(input: TokenStream) -> TokenStream { + input +} + #[cfg(test)] mod tests { #[test]