polars_rows_iter_derive/
lib.rs

1//! # polars-rows-iter-derive
2//!
3//! This crate exports the macros required by the main polars-rows-iter crate.
4
5mod from_dataframe_row_derive;
6mod impl_iter_from_column_for_type;
7
8#[proc_macro_derive(FromDataFrameRow, attributes(column))]
9pub fn from_dataframe_row_derive_macro(input: proc_macro::TokenStream) -> proc_macro::TokenStream {
10    let ast: syn::DeriveInput = syn::parse2(input.into()).unwrap();
11    from_dataframe_row_derive::from_dataframe_row_derive_impl(ast).into()
12}
13
14#[proc_macro]
15pub fn iter_from_column_for_type(input: proc_macro::TokenStream) -> proc_macro::TokenStream {
16    let ident: syn::Ident = syn::parse(input).unwrap();
17    impl_iter_from_column_for_type::create_impl_for(ident)
18}