Skip to main content

mev_proc/
lib.rs

1use proc_macro::TokenStream;
2
3#[proc_macro_derive(Arguments, attributes(mev))]
4pub fn arguments_derive(input: TokenStream) -> TokenStream {
5    mev_proc_impl::arguments_derive(input.into(), &quote::quote!(mev)).into()
6}
7
8#[proc_macro_derive(DeviceRepr, attributes(mev))]
9pub fn derive_repr(input: TokenStream) -> TokenStream {
10    mev_proc_impl::derive_repr(input.into(), &quote::quote!(mev)).into()
11}
12
13#[proc_macro_derive(AutoDeviceRepr, attributes(mev))]
14pub fn derive_auto_repr(input: TokenStream) -> TokenStream {
15    mev_proc_impl::derive_auto_repr(input.into(), &quote::quote!(mev)).into()
16}
17
18#[proc_macro_derive(VertexBinding, attributes(mev))]
19pub fn derive_vertex(input: TokenStream) -> TokenStream {
20    mev_proc_impl::derive_vertex(input.into(), &quote::quote!(mev)).into()
21}
22
23#[proc_macro]
24pub fn match_backend(input: TokenStream) -> TokenStream {
25    mev_proc_impl::match_backend(input.into(), &quote::quote!(mev)).into()
26}