Create Enum containing all tasks

This commit is contained in:
Henrik Tjäder 2020-10-14 10:15:35 +00:00
parent 6c1f4a7b5d
commit 37ee3a47af

View file

@ -126,6 +126,20 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 {
let user_code = app.user_code.clone();
let name = &app.name;
let device = extra.device;
// Get the list of all tasks
// Currently unused, might be useful
let task_list = analysis.tasks.clone();
let mut tasks = vec![];
if !task_list.is_empty() {
tasks.push(quote!(
enum Tasks {
#(#task_list),*
}
));
}
quote!(
#(#user)*
@ -141,6 +155,9 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 {
#(#root_software_tasks)*
/// Unused
#(#tasks)*
/// Implementation details
mod #name {
/// Always include the device crate which contains the vector table