game_grid_derive/
lib.rs

1use game_grid_derive_core::{derive_grid_cell, derive_grid_position};
2use proc_macro::TokenStream;
3use proc_macro_error::proc_macro_error;
4
5#[proc_macro_error]
6#[proc_macro_derive(GridCell, attributes(cell))]
7pub fn grid_cell(input: TokenStream) -> TokenStream {
8    let implementation = derive_grid_cell(input.into());
9    implementation.into()
10}
11
12#[proc_macro_error]
13#[proc_macro_derive(GridPosition)]
14pub fn grid_position(input: TokenStream) -> TokenStream {
15    let implementation = derive_grid_position(input.into());
16    implementation.into()
17}