Skip to content

Commit 4438dc5

Browse files
authored
Merge pull request #4 from nerdatmath/push-snuwwttvsqwm
Fix `mismatched_lifetime_syntaxes`.
2 parents 33f42cb + ad44b86 commit 4438dc5

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

2023/01/src/part1/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ use crate::puzzle::Puzzle;
33
#[derive(Debug)]
44
struct NoDigitError<'a>(#[allow(dead_code)]&'a str);
55

6-
fn first_digit(s: &str) -> Result<u64, NoDigitError> {
6+
fn first_digit(s: &'_ str) -> Result<u64, NoDigitError<'_>> {
77
for ch in s.chars() {
88
match ch {
99
'0'..='9' => return Ok(u64::from(ch) - u64::from('0')),
@@ -13,7 +13,7 @@ fn first_digit(s: &str) -> Result<u64, NoDigitError> {
1313
Err(NoDigitError(s))
1414
}
1515

16-
fn last_digit(s: &str) -> Result<u64, NoDigitError> {
16+
fn last_digit(s: &'_ str) -> Result<u64, NoDigitError<'_>> {
1717
for ch in s.chars().rev() {
1818
match ch {
1919
'0'..='9' => return Ok(u64::from(ch) - u64::from('0')),
@@ -23,7 +23,7 @@ fn last_digit(s: &str) -> Result<u64, NoDigitError> {
2323
Err(NoDigitError(s))
2424
}
2525

26-
fn calibration_value(s: &str) -> Result<u64, NoDigitError> {
26+
fn calibration_value(s: &'_ str) -> Result<u64, NoDigitError<'_>> {
2727
Ok(first_digit(s)? * 10 + last_digit(s)?)
2828
}
2929

2023/01/src/part2/mod.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ struct NoDigitError<'a>(#[allow(dead_code)] &'a str);
77

88
const DIGITS: &str = r"([0-9]|one|two|three|four|five|six|seven|eight|nine)";
99

10-
fn from_digit(s: &str) -> Result<u64, NoDigitError> {
10+
fn from_digit(s: &'_ str) -> Result<u64, NoDigitError<'_>> {
1111
Ok(match s {
1212
"0" => 0,
1313
"1" | "one" => 1,
@@ -23,23 +23,23 @@ fn from_digit(s: &str) -> Result<u64, NoDigitError> {
2323
})
2424
}
2525

26-
fn first_digit(s: &str) -> Result<u64, NoDigitError> {
26+
fn first_digit(s: &'_ str) -> Result<u64, NoDigitError<'_>> {
2727
static RE: LazyLock<Regex> =
2828
LazyLock::new(|| Regex::new(&[r"^.*?", DIGITS, r".*$"].join("")).unwrap());
2929
let captures = RE.captures(s).ok_or(NoDigitError(s))?;
3030
let m = captures.get(1).unwrap();
3131
from_digit(m.as_str())
3232
}
3333

34-
fn last_digit(s: &str) -> Result<u64, NoDigitError> {
34+
fn last_digit(s: &'_ str) -> Result<u64, NoDigitError<'_>> {
3535
static RE: LazyLock<Regex> =
3636
LazyLock::new(|| Regex::new(&[r"^.*", DIGITS, r".*?$"].join("")).unwrap());
3737
let captures = RE.captures(s).ok_or(NoDigitError(s))?;
3838
let m = captures.get(1).unwrap();
3939
from_digit(m.as_str())
4040
}
4141

42-
fn calibration_value(s: &str) -> Result<u64, NoDigitError> {
42+
fn calibration_value(s: &'_ str) -> Result<u64, NoDigitError<'_>> {
4343
Ok(first_digit(s)? * 10 + last_digit(s)?)
4444
}
4545

bag/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ impl<T: Eq + Hash> Bag<T> {
2828
self.0.values().sum()
2929
}
3030

31-
pub fn iter(&self) -> Iter<T> {
31+
pub fn iter(&'_ self) -> Iter<'_, T> {
3232
self.0.iter()
3333
}
3434
}

0 commit comments

Comments
 (0)