diff options
Diffstat (limited to 'macros/src/codegen.rs')
-rw-r--r-- | macros/src/codegen.rs | 35 |
1 files changed, 7 insertions, 28 deletions
diff --git a/macros/src/codegen.rs b/macros/src/codegen.rs index c38b47c9..b9755368 100644 --- a/macros/src/codegen.rs +++ b/macros/src/codegen.rs @@ -73,14 +73,10 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { } )); - let (mod_app_resources, mod_resources, mod_resources_imports) = - resources::codegen(app, analysis, extra); + let (mod_app_resources, mod_resources) = resources::codegen(app, analysis, extra); - let ( - mod_app_hardware_tasks, - root_hardware_tasks, - user_hardware_tasks, - ) = hardware_tasks::codegen(app, analysis, extra); + let (mod_app_hardware_tasks, root_hardware_tasks, user_hardware_tasks) = + hardware_tasks::codegen(app, analysis, extra); let (mod_app_software_tasks, root_software_tasks, user_software_tasks) = software_tasks::codegen(app, analysis, extra); @@ -97,9 +93,11 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { let task_list = analysis.tasks.clone(); let mut tasks = vec![]; + if !task_list.is_empty() { tasks.push(quote!( - enum Tasks { + #[allow(non_camel_case_types)] + pub enum Tasks { #(#task_list),* } )); @@ -107,65 +105,46 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { quote!( /// Implementation details - mod #name { + pub mod #name { /// Always include the device crate which contains the vector table use #device as you_must_enable_the_rt_feature_for_the_pac_in_your_cargo_toml; - /// 2 #(#user_imports)* /// User code from within the module #(#user_code)* /// User code end - /// 3 #(#user)* - /// 4 #(#user_hardware_tasks)* - /// 5 #(#user_software_tasks)* - /// 6 #(#root)* - /// 7 #mod_resources - /// 8 #(#root_hardware_tasks)* - /// 9 #(#root_software_tasks)* - /// 10 /// Unused #(#tasks)* - /// 13 - #(#mod_resources_imports)* - - /// 14 /// app module #(#mod_app)* - /// 15 #(#mod_app_resources)* - /// 16 #(#mod_app_hardware_tasks)* - /// 17 #(#mod_app_software_tasks)* - /// 18 #(#mod_app_dispatchers)* - /// 19 #(#mod_app_timer_queue)* - /// 20 #(#mains)* } ) |