aboutsummaryrefslogtreecommitdiff
path: root/macros/src
diff options
context:
space:
mode:
authorGravatar Henrik Tjäder <henrik@tjaders.com> 2020-06-04 15:43:16 +0000
committerGravatar Henrik Tjäder <henrik@tjaders.com> 2020-09-29 11:56:56 +0000
commit487fea45ce15ea375192f72ddb148dda8414873b (patch)
tree7b27790b7108c9cd4ada56c1be6d41c7da9b4b69 /macros/src
parentadff844b8c09e83b4a69fc5b7ac9bd133f09dbbc (diff)
downloadrtic-487fea45ce15ea375192f72ddb148dda8414873b.tar.gz
rtic-487fea45ce15ea375192f72ddb148dda8414873b.tar.zst
rtic-487fea45ce15ea375192f72ddb148dda8414873b.zip
Keep user code as-is within the module, add example
Diffstat (limited to 'macros/src')
-rw-r--r--macros/src/codegen.rs6
-rw-r--r--macros/src/lib.rs3
2 files changed, 8 insertions, 1 deletions
diff --git a/macros/src/codegen.rs b/macros/src/codegen.rs
index e45f1a38..f97f841a 100644
--- a/macros/src/codegen.rs
+++ b/macros/src/codegen.rs
@@ -123,6 +123,7 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 {
let const_app_schedule = schedule::codegen(app, extra);
let user_imports = app.user_imports.clone();
+ let user_code = app.user_code.clone();
let name = &app.name;
let device = extra.device;
quote!(
@@ -148,6 +149,11 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 {
#(#imports)*
#(#user_imports)*
+ /// User code from within the module
+ #(#user_code)*
+ /// User code end
+
+
#(#user_hardware_tasks_imports)*
#(#user_software_tasks_imports)*
diff --git a/macros/src/lib.rs b/macros/src/lib.rs
index 2a439e1e..94e7eec6 100644
--- a/macros/src/lib.rs
+++ b/macros/src/lib.rs
@@ -35,7 +35,8 @@ mod tests;
///
/// The items allowed in the module block are specified below:
///
-/// # 1. `struct Resources`
+/// # 1. `#[resources]
+/// struct <resource-name>`
///
/// This structure contains the declaration of all the resources used by the application. Each field
/// in this structure corresponds to a different resource. Each resource may optionally be given an