diff options
author | 2020-10-22 16:48:56 +0000 | |
---|---|---|
committer | 2020-10-22 16:48:56 +0000 | |
commit | 9fb5a223cb8adb01381650b66eab28ea5abc98ed (patch) | |
tree | 357983fd15ba52ea221f20b5cb14b96783d07d51 /macros/src/codegen/resources.rs | |
parent | 6de4f1a797c81aec6c24f47872e5d3968344684c (diff) | |
parent | 17e976ab495234f9f53f56e6693850af077cf701 (diff) | |
download | rtic-9fb5a223cb8adb01381650b66eab28ea5abc98ed.tar.gz rtic-9fb5a223cb8adb01381650b66eab28ea5abc98ed.tar.zst rtic-9fb5a223cb8adb01381650b66eab28ea5abc98ed.zip |
Merge #396
396: Fix namespaces r=AfoHT a=korken89
Co-authored-by: Emil Fresk <emil.fresk@gmail.com>
Diffstat (limited to 'macros/src/codegen/resources.rs')
-rw-r--r-- | macros/src/codegen/resources.rs | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/macros/src/codegen/resources.rs b/macros/src/codegen/resources.rs index 38ea5245..0db4f728 100644 --- a/macros/src/codegen/resources.rs +++ b/macros/src/codegen/resources.rs @@ -14,16 +14,14 @@ pub fn codegen( Vec<TokenStream2>, // mod_resources -- the `resources` module TokenStream2, - // mod_resources_imports -- the `resources` module imports - Vec<TokenStream2>, ) { let mut mod_app = vec![]; let mut mod_resources = vec![]; - let mut mod_resources_imports = vec![]; for (name, res, expr, _) in app.resources(analysis) { let cfgs = &res.cfgs; let ty = &res.ty; + let mangled_name = util::mangle_ident(&name); { let section = if expr.is_none() { @@ -47,7 +45,7 @@ pub fn codegen( #(#attrs)* #(#cfgs)* #section - static mut #name: #ty = #expr; + static mut #mangled_name: #ty = #expr; )); } @@ -76,21 +74,15 @@ pub fn codegen( let ptr = if expr.is_none() { quote!( #(#cfgs)* - #name.as_mut_ptr() + #mangled_name.as_mut_ptr() ) } else { quote!( #(#cfgs)* - &mut #name + &mut #mangled_name ) }; - mod_resources_imports.push(quote!( - #[allow(non_camel_case_types)] - #(#cfgs)* - use super::resources::#name; - )); - mod_app.push(util::impl_mutex( extra, cfgs, @@ -106,11 +98,6 @@ pub fn codegen( let mod_resources = if mod_resources.is_empty() { quote!() } else { - // Also import the resource module - mod_resources_imports.push(quote!( - use super::resources; - )); - quote!(mod resources { use rtic::export::Priority; @@ -118,5 +105,5 @@ pub fn codegen( }) }; - (mod_app, mod_resources, mod_resources_imports) + (mod_app, mod_resources) } |