Skip to content

Commit 47fe23b

Browse files
chore: clippy and parser-style cleanups (no behavior change)
Three small drive-by cleanups picked up by clippy on touched files; none changes behavior. src/backend/whisper_diarization.rs: src/tests/conformance_harness.rs (parse_srt_time_for_fixture): - Replace the `else if let Some(pos) = value.rfind('.') { ... } else { return None; }` branch with `let pos = value.rfind('.')?;` collapsing the fallback millisecond-separator handling into a single ? returning None. Both copies of the SRT timestamp parser now match. tests/metamorphic_audio_tests.rs: - Annotate the silence-generator helper `generate_silence` with `#[allow(dead_code)]` so the no-op metamorphic case (which leaves silence generation for a future scenario) compiles without a warning. - Replace `std::iter::repeat(0.0).take(n)` with `std::iter::repeat_n(0.0, n)` per clippy::manual_repeat_n on Rust 1.82+. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 4f54fbd commit 47fe23b

3 files changed

Lines changed: 6 additions & 7 deletions

File tree

src/backend/whisper_diarization.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -308,10 +308,9 @@ fn parse_srt_time(value: &str) -> Option<f64> {
308308
// Support both standard ',' and fallback '.' millisecond separator.
309309
let (hms, ms_str) = if let Some(pos) = value.rfind(',') {
310310
(&value[..pos], &value[pos + 1..])
311-
} else if let Some(pos) = value.rfind('.') {
312-
(&value[..pos], &value[pos + 1..])
313311
} else {
314-
return None;
312+
let pos = value.rfind('.')?;
313+
(&value[..pos], &value[pos + 1..])
315314
};
316315

317316
let ms = ms_str.parse::<f64>().ok()?;

tests/conformance_harness.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -693,10 +693,9 @@ fn parse_srt_block_for_fixture(block: &str) -> Option<TranscriptionSegment> {
693693
fn parse_srt_time_for_fixture(value: &str) -> Option<f64> {
694694
let (hms, ms_str) = if let Some(pos) = value.rfind(',') {
695695
(&value[..pos], &value[pos + 1..])
696-
} else if let Some(pos) = value.rfind('.') {
697-
(&value[..pos], &value[pos + 1..])
698696
} else {
699-
return None;
697+
let pos = value.rfind('.')?;
698+
(&value[..pos], &value[pos + 1..])
700699
};
701700

702701
let mut hms_parts = hms.split(':');

tests/metamorphic_audio_tests.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ fn generate_sine_wave(freq_hz: f32, sample_rate: u32, duration_secs: f32) -> Vec
3232
}
3333

3434
/// Generate silence (zeros) for the given duration.
35+
#[allow(dead_code)]
3536
fn generate_silence(sample_rate: u32, duration_secs: f32) -> Vec<f32> {
3637
let num_samples = (sample_rate as f32 * duration_secs) as usize;
3738
vec![0.0; num_samples]
@@ -70,7 +71,7 @@ fn prepend_silence(samples: &[f32], silence_samples: usize) -> Vec<f32> {
7071
/// Append silence to audio.
7172
fn append_silence(samples: &[f32], silence_samples: usize) -> Vec<f32> {
7273
let mut result = samples.to_vec();
73-
result.extend(std::iter::repeat(0.0).take(silence_samples));
74+
result.extend(std::iter::repeat_n(0.0, silence_samples));
7475
result
7576
}
7677

0 commit comments

Comments
 (0)