12
12
//! [examples/can.rs]: https://github.com/stm32-rs/stm32f3xx-hal/blob/v0.8.0/examples/can.rs
13
13
14
14
use crate :: gpio:: { gpioa, gpiob} ;
15
- use crate :: gpio:: { PushPull , AF7 , AF9 } ;
15
+ use crate :: gpio:: { PushPull , AF9 } ;
16
16
use crate :: pac;
17
17
18
18
use crate :: rcc:: APB1 ;
@@ -22,33 +22,21 @@ use bxcan::RegisterBlock;
22
22
23
23
use cfg_if:: cfg_if;
24
24
25
- mod sealed {
26
- pub trait Sealed { }
27
- }
28
-
29
25
/// Marker trait for pins (with specific AF mode) that can be used as a CAN RX pin.
30
- pub trait RxPin : sealed :: Sealed { }
26
+ pub trait RxPin : crate :: private :: Sealed { }
31
27
32
28
/// Marker trait for pins (with specific AF mode) that can be used as a CAN TX pin.
33
- pub trait TxPin : sealed:: Sealed { }
34
-
35
- cfg_if ! {
36
- if #[ cfg( any( feature = "gpio-f302" , feature = "gpio-f303" ) ) ] {
37
- use crate :: gpio:: gpiod;
38
-
39
- impl sealed:: Sealed for gpioa:: PA11 <AF9 <PushPull >> { }
40
- impl RxPin for gpioa:: PA11 <AF9 <PushPull >> { }
41
- impl sealed:: Sealed for gpioa:: PA12 <AF9 <PushPull >> { }
42
- impl TxPin for gpioa:: PA12 <AF9 <PushPull >> { }
29
+ pub trait TxPin : crate :: private:: Sealed { }
43
30
44
- impl sealed :: Sealed for gpiob :: PB8 <AF9 <PushPull >> { }
45
- impl RxPin for gpiob :: PB8 <AF9 <PushPull >> { }
46
- impl sealed :: Sealed for gpiob:: PB9 <AF9 <PushPull >> { }
47
- impl TxPin for gpiob:: PB9 <AF9 <PushPull >> { }
31
+ impl RxPin for gpioa :: PA11 < AF9 < PushPull > > { }
32
+ impl TxPin for gpioa :: PA12 < AF9 < PushPull > > { }
33
+ impl RxPin for gpiob:: PB8 < AF9 < PushPull > > { }
34
+ impl TxPin for gpiob:: PB9 < AF9 < PushPull > > { }
48
35
49
- impl sealed:: Sealed for gpiod:: PD0 <AF7 <PushPull >> { }
36
+ cfg_if ! {
37
+ if #[ cfg( any( feature = "gpio-f303" , feature = "gpio-f303e" , feature = "gpio-f373" ) ) ] {
38
+ use crate :: gpio:: { gpiod, AF7 } ;
50
39
impl RxPin for gpiod:: PD0 <AF7 <PushPull >> { }
51
- impl sealed:: Sealed for gpiod:: PD1 <AF7 <PushPull >> { }
52
40
impl TxPin for gpiod:: PD1 <AF7 <PushPull >> { }
53
41
}
54
42
}
0 commit comments