diff options
| author | Dario Nieuwenhuis <[email protected]> | 2021-03-19 04:02:56 +0100 |
|---|---|---|
| committer | Dario Nieuwenhuis <[email protected]> | 2021-03-29 00:58:57 +0200 |
| commit | d9aaa0edf88e822b9e5d6deb5f4a133dd32449fa (patch) | |
| tree | 8bb617088996b1916287ab758e7a7217d8826382 | |
| parent | 9c4087ac5cc39c0799d25a70834b61899069b7c3 (diff) | |
Implement PeripheralBorrow for interrupts.
| -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 | } |
