From 5ac4a3d4cb33fd2f6c9219f0da83088a4186da59 Mon Sep 17 00:00:00 2001 From: DaniPopes <57450786+DaniPopes@users.noreply.github.com> Date: Fri, 1 Dec 2023 23:30:43 +0100 Subject: [PATCH] chore: simplify `Consensus::validate_header_range` with let-else (#5659) --- crates/interfaces/src/consensus.rs | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/crates/interfaces/src/consensus.rs b/crates/interfaces/src/consensus.rs index bdb1c04eaf..a1412fa444 100644 --- a/crates/interfaces/src/consensus.rs +++ b/crates/interfaces/src/consensus.rs @@ -37,18 +37,16 @@ pub trait Consensus: Debug + Send + Sync { /// /// Note: this expects that the headers are in natural order (ascending block number) fn validate_header_range(&self, headers: &[SealedHeader]) -> Result<(), ConsensusError> { - if headers.is_empty() { - return Ok(()) - } - let first = headers.first().expect("checked empty"); - self.validate_header(first)?; - let mut parent = first; - for child in headers.iter().skip(1) { + let mut headers = headers.iter(); + let Some(mut parent) = headers.next() else { + return Ok(()); + }; + self.validate_header(parent)?; + for child in headers { self.validate_header(child)?; self.validate_header_against_parent(child, parent)?; parent = child; } - Ok(()) }