We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 1e7d1d3 commit 5c88ee9Copy full SHA for 5c88ee9
src/generate/interrupt.rs
@@ -146,10 +146,11 @@ pub fn render(
146
Target::None => {}
147
}
148
149
- let enum_repr = if variants.is_empty() {
150
- quote!()
+ let self_token = quote!(self);
+ let (enum_repr, nr_expr) = if variants.is_empty() {
151
+ (quote!(), quote!(match #self_token {}))
152
} else {
- quote!(#[repr(u8)])
153
+ (quote!(#[repr(u8)]), quote!(*#self_token as u8))
154
};
155
156
let interrupt_enum = quote! {
@@ -162,8 +163,8 @@ pub fn render(
162
163
164
unsafe impl bare_metal::Nr for Interrupt {
165
#[inline(always)]
- fn nr(&self) -> u8 {
166
- *self as u8
+ fn nr(&#self_token) -> u8 {
167
+ #nr_expr
168
169
170
0 commit comments