Skip to content

Commit 6887958

Browse files
committed
HRTIM: Avoid unneeded type parameters on HrTimer trait
1 parent 47d7a43 commit 6887958

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

src/hrtim/timer.rs

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,10 @@ pub struct HrTim<TIM, PSCL> {
1515
capture_ch2: HrCapt<TIM, PSCL, capture::Ch2>,
1616
}
1717

18-
pub trait HrTimer<TIM, PSCL>: Sized {
18+
pub trait HrTimer {
19+
type Timer;
20+
type Prescaler;
21+
1922
/// Get period of timer in number of ticks
2023
///
2124
/// This is also the maximum duty usable for `HrCompareRegister::set_duty`
@@ -38,10 +41,10 @@ pub trait HrTimer<TIM, PSCL>: Sized {
3841
fn clear_repetition_interrupt(&mut self);
3942

4043
/// Make a handle to this timers reset event to use as adc trigger
41-
fn as_reset_adc_trigger(&self) -> super::adc_trigger::TimerReset<Self>;
44+
fn as_reset_adc_trigger(&self) -> super::adc_trigger::TimerReset<Self::Timer>;
4245

4346
/// Make a handle to this timers period event to use as adc trigger
44-
fn as_period_adc_trigger(&self) -> super::adc_trigger::TimerPeriod<Self>;
47+
fn as_period_adc_trigger(&self) -> super::adc_trigger::TimerPeriod<Self::Timer>;
4548
}
4649

4750
macro_rules! hrtim_timer {
@@ -60,7 +63,10 @@ macro_rules! hrtim_timer {
6063
$repc:ident,
6164
$(($rstXr:ident))*,
6265
)+) => {$(
63-
impl<PSCL> HrTimer<$TIMX, PSCL> for HrTim<$TIMX, PSCL> {
66+
impl<PSCL> HrTimer for HrTim<$TIMX, PSCL> {
67+
type Prescaler = PSCL;
68+
type Timer = $TIMX;
69+
6470
fn get_period(&self) -> u16 {
6571
let tim = unsafe { &*$TIMX::ptr() };
6672

@@ -99,12 +105,12 @@ macro_rules! hrtim_timer {
99105
}
100106

101107
/// Make a handle to this timers reset event to use as adc trigger
102-
fn as_reset_adc_trigger(&self) -> super::adc_trigger::TimerReset<Self> {
108+
fn as_reset_adc_trigger(&self) -> super::adc_trigger::TimerReset<Self::Timer> {
103109
super::adc_trigger::TimerReset(PhantomData)
104110
}
105111

106112
/// Make a handle to this timers period event to use as adc trigger
107-
fn as_period_adc_trigger(&self) -> super::adc_trigger::TimerPeriod<Self> {
113+
fn as_period_adc_trigger(&self) -> super::adc_trigger::TimerPeriod<Self::Timer> {
108114
super::adc_trigger::TimerPeriod(PhantomData)
109115
}
110116

0 commit comments

Comments
 (0)