1- use core:: marker:: PhantomData ;
2-
31use crate :: {
42 hrtim:: fault:: {
53 FltMonitor1 , FltMonitor2 , FltMonitor3 , FltMonitor4 , FltMonitor5 , FltMonitor6 , FltMonitorSys ,
@@ -140,7 +138,7 @@ impl HrTimOngoingCalibration {
140138 unsafe { self . init ( ) } ;
141139
142140 (
143- HrTimCalibrated { _x : PhantomData } ,
141+ HrTimCalibrated ,
144142 unsafe { FaultInputs :: new ( ) } ,
145143 unsafe { EevInputs :: new ( ) } ,
146144 )
@@ -180,33 +178,31 @@ impl HrTimOngoingCalibration {
180178/// This object may be used for things that needs to be done before any timers have been started but after the calibration has been completed. Its existence is proof that no timers have started.
181179///
182180/// Once done with setup, use the `constrain` to get a `HrPwmControl` which can be used to start the timers.
183- pub struct HrTimCalibrated {
184- _x : PhantomData < ( ) > ,
185- }
181+ #[ non_exhaustive]
182+ pub struct HrTimCalibrated ;
186183
187184impl HrTimCalibrated {
188185 pub fn constrain ( self ) -> HrPwmControl {
189186 HrPwmControl {
190- _x : PhantomData ,
191- control : HrPwmCtrl { _x : PhantomData } ,
192- fault_sys : FltMonitorSys { _x : PhantomData } ,
193- fault_1 : FltMonitor1 { _x : PhantomData } ,
194- fault_2 : FltMonitor2 { _x : PhantomData } ,
195- fault_3 : FltMonitor3 { _x : PhantomData } ,
196- fault_4 : FltMonitor4 { _x : PhantomData } ,
197- fault_5 : FltMonitor5 { _x : PhantomData } ,
198- fault_6 : FltMonitor6 { _x : PhantomData } ,
199-
200- adc_trigger1 : Adc1Trigger { _x : PhantomData } ,
201- adc_trigger2 : Adc2Trigger { _x : PhantomData } ,
202- adc_trigger3 : Adc3Trigger { _x : PhantomData } ,
203- adc_trigger4 : Adc4Trigger { _x : PhantomData } ,
204- adc_trigger5 : Adc5Trigger { _x : PhantomData } ,
205- adc_trigger6 : Adc6Trigger { _x : PhantomData } ,
206- adc_trigger7 : Adc7Trigger { _x : PhantomData } ,
207- adc_trigger8 : Adc8Trigger { _x : PhantomData } ,
208- adc_trigger9 : Adc9Trigger { _x : PhantomData } ,
209- adc_trigger10 : Adc10Trigger { _x : PhantomData } ,
187+ control : HrPwmCtrl ,
188+ fault_sys : FltMonitorSys ,
189+ fault_1 : FltMonitor1 ,
190+ fault_2 : FltMonitor2 ,
191+ fault_3 : FltMonitor3 ,
192+ fault_4 : FltMonitor4 ,
193+ fault_5 : FltMonitor5 ,
194+ fault_6 : FltMonitor6 ,
195+
196+ adc_trigger1 : Adc1Trigger ,
197+ adc_trigger2 : Adc2Trigger ,
198+ adc_trigger3 : Adc3Trigger ,
199+ adc_trigger4 : Adc4Trigger ,
200+ adc_trigger5 : Adc5Trigger ,
201+ adc_trigger6 : Adc6Trigger ,
202+ adc_trigger7 : Adc7Trigger ,
203+ adc_trigger8 : Adc8Trigger ,
204+ adc_trigger9 : Adc9Trigger ,
205+ adc_trigger10 : Adc10Trigger ,
210206 }
211207 }
212208}
@@ -220,14 +216,12 @@ impl<'a> From<&'a mut HrPwmControl> for &'a mut HrPwmCtrl {
220216/// Used as a token to guarantee unique access to resources common to multiple timers
221217///
222218/// An instance of this object can be obtained from [`HrPwmControl`].control
223- pub struct HrPwmCtrl {
224- _x : PhantomData < ( ) > ,
225- }
219+ #[ non_exhaustive]
220+ pub struct HrPwmCtrl ;
226221
227222/// Used as a token to guarantee unique access to resources common to multiple timers
223+ #[ non_exhaustive]
228224pub struct HrPwmControl {
229- _x : PhantomData < ( ) > ,
230-
231225 pub control : HrPwmCtrl ,
232226
233227 pub fault_sys : FltMonitorSys ,
@@ -253,9 +247,8 @@ pub struct HrPwmControl {
253247
254248macro_rules! impl_adc1234_trigger {
255249 ( $( $t: ident: [ $trait_: ident, $adcXr: ident, $variant345: ident $( , $variant12: ident) * ] ) ,* ) => { $(
256- pub struct $t {
257- _x: PhantomData <( ) >,
258- }
250+ #[ non_exhaustive]
251+ pub struct $t;
259252
260253 impl $t {
261254 pub fn enable_source<T : $trait_>( & mut self , _trigger: & T ) {
@@ -282,9 +275,8 @@ macro_rules! impl_adc1234_trigger {
282275
283276macro_rules! impl_adc5678910_trigger {
284277 ( $( $t: ident: [ $trait_: ident, $adcXtrg: ident, $variant345: ident, $variant12: ident] ) ,* ) => { $(
285- pub struct $t {
286- _x: PhantomData <( ) >,
287- }
278+ #[ non_exhaustive]
279+ pub struct $t;
288280
289281 impl $t {
290282 pub fn enable_source<T : $trait_>( & mut self , _trigger: & T ) {
0 commit comments