21 lines
694 B
Rust
21 lines
694 B
Rust
|
// SPDX-License-Identifier: LGPL-3.0-or-later
|
||
|
// See Notices.txt for copyright information
|
||
|
#[proc_macro_attribute]
|
||
|
pub fn hdl_module(
|
||
|
attr: proc_macro::TokenStream,
|
||
|
item: proc_macro::TokenStream,
|
||
|
) -> proc_macro::TokenStream {
|
||
|
match fayalite_proc_macros_impl::module(attr.into(), item.into()) {
|
||
|
Ok(retval) => retval.into(),
|
||
|
Err(err) => err.into_compile_error().into(),
|
||
|
}
|
||
|
}
|
||
|
|
||
|
#[proc_macro_derive(Value, attributes(hdl))]
|
||
|
pub fn value_derive(item: proc_macro::TokenStream) -> proc_macro::TokenStream {
|
||
|
match fayalite_proc_macros_impl::value_derive(item.into()) {
|
||
|
Ok(retval) => retval.into(),
|
||
|
Err(err) => err.into_compile_error().into(),
|
||
|
}
|
||
|
}
|