Skip to main content

mina_macros/
lib.rs

1//! Proc macro implementations for Mina.
2//!
3//! This is an internal helper crate that should not be used directly. All relevant macros are
4//! re-exported by Mina.
5
6extern crate proc_macro;
7
8use proc_macro::TokenStream;
9
10mod derive_animate;
11mod fn_animator;
12mod fn_timeline;
13
14#[proc_macro]
15pub fn animator(input: TokenStream) -> TokenStream {
16    fn_animator::animator_impl(input)
17}
18
19#[proc_macro_derive(Animate, attributes(animate))]
20pub fn derive_animate(input: TokenStream) -> TokenStream {
21    derive_animate::animate_impl(input)
22}
23
24#[proc_macro]
25pub fn timeline(input: TokenStream) -> TokenStream {
26    fn_timeline::timeline_impl(input)
27}