ferrilator_macros 0.3.0

Procedural macro definition for the ferrilator crate, not intended to be consumed directly.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
use ferrilator_core::ferrilate_attribute;
use proc_macro::TokenStream;

#[proc_macro_attribute]
/// Mark a struct to generate bindings for Verilated C++.
pub fn ferrilate(attr: TokenStream, item: TokenStream) -> TokenStream {
    match ferrilate_attribute(attr.into(), item.into()) {
        Ok(tok) => tok.into(),
        Err(e) => {
            panic!("{e}");
        }
    }
}