From 2068eae9280881e34b5cc2d76b0b1a61402223e7 Mon Sep 17 00:00:00 2001 From: Emil Fresk Date: Wed, 7 Apr 2021 11:06:57 +0200 Subject: Type aliases now work in the app module --- macros/src/codegen.rs | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'macros/src/codegen.rs') diff --git a/macros/src/codegen.rs b/macros/src/codegen.rs index c5d95687..cf728a7d 100644 --- a/macros/src/codegen.rs +++ b/macros/src/codegen.rs @@ -112,8 +112,6 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { let user_imports = &app.user_imports; quote! { - pub use rtic::Monotonic as _; - #[doc = #doc] #[allow(non_snake_case)] pub mod #name { @@ -143,6 +141,18 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { }) .collect(); + let monotonics = if !monotonic_parts.is_empty() { + quote!( + pub use rtic::Monotonic as _; + + /// Holds static methods for each monotonic. + pub mod monotonics { + #(#monotonic_parts)* + } + ) + } else { + quote!() + }; let rt_err = util::rt_err_ident(); quote!( @@ -151,7 +161,7 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { /// Always include the device crate which contains the vector table use #device as #rt_err; - #(#monotonic_parts)* + #monotonics #(#user_imports)* -- cgit v1.2.3