1mod display;
2mod field_projection;
3mod inner;
4mod newtype;
5mod ops;
6mod persisted_row;
7
8use proc_macro::TokenStream;
9
10#[proc_macro_derive(Add)]
12pub fn derive_add(input: TokenStream) -> TokenStream {
13 ops::derive_add(input.into()).into()
14}
15
16#[proc_macro_derive(AddAssign)]
18pub fn derive_add_assign(input: TokenStream) -> TokenStream {
19 ops::derive_add_assign(input.into()).into()
20}
21
22#[proc_macro_derive(Sub)]
24pub fn derive_sub(input: TokenStream) -> TokenStream {
25 ops::derive_sub(input.into()).into()
26}
27
28#[proc_macro_derive(SubAssign)]
30pub fn derive_sub_assign(input: TokenStream) -> TokenStream {
31 ops::derive_sub_assign(input.into()).into()
32}
33
34#[proc_macro_derive(Mul)]
36pub fn derive_mul(input: TokenStream) -> TokenStream {
37 ops::derive_mul(input.into()).into()
38}
39
40#[proc_macro_derive(MulAssign)]
42pub fn derive_mul_assign(input: TokenStream) -> TokenStream {
43 ops::derive_mul_assign(input.into()).into()
44}
45
46#[proc_macro_derive(Div)]
48pub fn derive_div(input: TokenStream) -> TokenStream {
49 ops::derive_div(input.into()).into()
50}
51
52#[proc_macro_derive(DivAssign)]
54pub fn derive_div_assign(input: TokenStream) -> TokenStream {
55 ops::derive_div_assign(input.into()).into()
56}
57
58#[proc_macro_derive(Rem)]
60pub fn derive_rem(input: TokenStream) -> TokenStream {
61 ops::derive_rem(input.into()).into()
62}
63
64#[proc_macro_derive(Sum)]
66pub fn derive_sum(input: TokenStream) -> TokenStream {
67 ops::derive_sum(input.into()).into()
68}
69
70#[proc_macro_derive(FieldProjection)]
72pub fn derive_field_projection(input: TokenStream) -> TokenStream {
73 field_projection::derive_field_projection(input.into()).into()
74}
75
76#[proc_macro_derive(PersistedRow)]
78pub fn derive_persisted_row(input: TokenStream) -> TokenStream {
79 persisted_row::derive_persisted_row(input.into()).into()
80}
81
82#[proc_macro_derive(Display)]
84pub fn derive_display(input: TokenStream) -> TokenStream {
85 display::derive_display(input.into()).into()
86}
87
88#[proc_macro_derive(Inner)]
90pub fn derive_inner(input: TokenStream) -> TokenStream {
91 inner::derive_inner(input.into()).into()
92}