aboutsummaryrefslogtreecommitdiff
path: root/macros/src/codegen/util.rs
diff options
context:
space:
mode:
authorGravatar Emil Fresk <emil.fresk@gmail.com> 2021-05-06 19:40:37 +0200
committerGravatar Emil Fresk <emil.fresk@gmail.com> 2021-05-06 19:40:37 +0200
commitb4509bdbfe7cd5accf4c6b791a18ca55183a4993 (patch)
tree77d5cf702a9be6afa123844af07f316338527714 /macros/src/codegen/util.rs
parentaad8f81991c3495f225df80d7c8456faecd40728 (diff)
downloadrtic-b4509bdbfe7cd5accf4c6b791a18ca55183a4993.tar.gz
rtic-b4509bdbfe7cd5accf4c6b791a18ca55183a4993.tar.zst
rtic-b4509bdbfe7cd5accf4c6b791a18ca55183a4993.zip
Flattened the _ out of it
Diffstat (limited to 'macros/src/codegen/util.rs')
-rw-r--r--macros/src/codegen/util.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/macros/src/codegen/util.rs b/macros/src/codegen/util.rs
index 9ccdbf78..92c7154a 100644
--- a/macros/src/codegen/util.rs
+++ b/macros/src/codegen/util.rs
@@ -111,6 +111,27 @@ pub fn is_exception(name: &Ident) -> bool {
)
}
+/// Generate an internal identifier for monotonics
+pub fn internal_monotonics_ident(task: &Ident, monotonic: &Ident, ident_name: &str) -> Ident {
+ Ident::new(
+ &format!(
+ "__rtic_internal_{}_{}_{}",
+ task.to_string(),
+ monotonic.to_string(),
+ ident_name,
+ ),
+ Span::call_site(),
+ )
+}
+
+/// Generate an internal identifier for tasks
+pub fn internal_task_ident(task: &Ident, ident_name: &str) -> Ident {
+ Ident::new(
+ &format!("__rtic_internal_{}_{}", task.to_string(), ident_name,),
+ Span::call_site(),
+ )
+}
+
/// Mark an ident as internal
pub fn mark_internal_ident(ident: &Ident) -> Ident {
Ident::new(
@@ -119,6 +140,14 @@ pub fn mark_internal_ident(ident: &Ident) -> Ident {
)
}
+/// Mark an ident as internal
+pub fn mark_internal_name(name: &str) -> Ident {
+ Ident::new(
+ &format!("__rtic_internal_{}", name),
+ Span::call_site(),
+ )
+}
+
fn link_section_index() -> usize {
static INDEX: AtomicUsize = AtomicUsize::new(0);