gfaas-macro 0.3.0

Proc-macro logic used by gfaas crate
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
extern crate proc_macro;

mod logic;

use proc_macro::TokenStream;
use syn::parse_macro_input;

#[proc_macro_attribute]
pub fn remote_fn(attr: TokenStream, item: TokenStream) -> TokenStream {
    let attrs = parse_macro_input!(attr as logic::GwasmAttrs);
    let preserved = item.clone();
    let f = parse_macro_input!(item as logic::GwasmFn);
    logic::remote_fn_impl(attrs, f, preserved.into()).into()
}