diff options
| -rw-r--r-- | embassy-macros/src/lib.rs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/embassy-macros/src/lib.rs b/embassy-macros/src/lib.rs index 450edbe43..bcf9dd4ed 100644 --- a/embassy-macros/src/lib.rs +++ b/embassy-macros/src/lib.rs | |||
| @@ -137,6 +137,20 @@ pub fn interrupt_declare(item: TokenStream) -> TokenStream { | |||
| 137 | &HANDLER | 137 | &HANDLER |
| 138 | } | 138 | } |
| 139 | } | 139 | } |
| 140 | |||
| 141 | impl ::embassy::util::PeripheralBorrow for #name_interrupt { | ||
| 142 | type Target = #name_interrupt; | ||
| 143 | unsafe fn unborrow(self) -> #name_interrupt { | ||
| 144 | self | ||
| 145 | } | ||
| 146 | } | ||
| 147 | |||
| 148 | impl ::embassy::util::PeripheralBorrow for &mut #name_interrupt { | ||
| 149 | type Target = #name_interrupt; | ||
| 150 | unsafe fn unborrow(self) -> #name_interrupt { | ||
| 151 | ::core::ptr::read(self) | ||
| 152 | } | ||
| 153 | } | ||
| 140 | }; | 154 | }; |
| 141 | result.into() | 155 | result.into() |
| 142 | } | 156 | } |
