aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDario Nieuwenhuis <[email protected]>2021-04-10 01:48:37 +0200
committerDario Nieuwenhuis <[email protected]>2021-04-10 01:48:37 +0200
commit402f7f1886ccb6deb25cff98eaa4358aceae5825 (patch)
tree67aa1d13de4b192e681fb69b524322f09c23fb3b
parentc73751a62835ad4a2d8f07762efc505d6e442fad (diff)
nrf/gpio: remove DummyPin
-rw-r--r--embassy-nrf/src/gpio.rs17
1 files changed, 3 insertions, 14 deletions
diff --git a/embassy-nrf/src/gpio.rs b/embassy-nrf/src/gpio.rs
index dcfaa47cb..5a5f7b8da 100644
--- a/embassy-nrf/src/gpio.rs
+++ b/embassy-nrf/src/gpio.rs
@@ -349,31 +349,20 @@ impl<T: Pin> OptionalPin for T {
349 } 349 }
350} 350}
351 351
352// Uninhabited enum, so it's actually impossible to create a DummyPin value.
353#[doc(hidden)]
354pub enum DummyPin {}
355impl Pin for DummyPin {}
356impl sealed::Pin for DummyPin {
357 #[inline]
358 fn pin_port(&self) -> u8 {
359 unreachable!()
360 }
361}
362
363#[derive(Clone, Copy, Debug)] 352#[derive(Clone, Copy, Debug)]
364pub struct NoPin; 353pub struct NoPin;
365impl_unborrow!(NoPin); 354impl_unborrow!(NoPin);
366impl sealed::OptionalPin for NoPin {} 355impl sealed::OptionalPin for NoPin {}
367impl OptionalPin for NoPin { 356impl OptionalPin for NoPin {
368 type Pin = DummyPin; 357 type Pin = AnyPin;
369 358
370 #[inline] 359 #[inline]
371 fn pin(&self) -> Option<&DummyPin> { 360 fn pin(&self) -> Option<&AnyPin> {
372 None 361 None
373 } 362 }
374 363
375 #[inline] 364 #[inline]
376 fn pin_mut(&mut self) -> Option<&mut DummyPin> { 365 fn pin_mut(&mut self) -> Option<&mut AnyPin> {
377 None 366 None
378 } 367 }
379} 368}