diff --git a/src/date.rs b/src/date.rs index a8c8033b..ef409ef7 100644 --- a/src/date.rs +++ b/src/date.rs @@ -241,7 +241,7 @@ impl Date { /// Returns `None` when it will result in overflow. #[inline] pub fn checked_add_signed(self, rhs: OldDuration) -> Option> { - let date = try_opt!(self.date.checked_add_signed(rhs)); + let date = self.date.checked_add_signed(rhs)?; Some(Date { date, offset: self.offset }) } @@ -250,7 +250,7 @@ impl Date { /// Returns `None` when it will result in overflow. #[inline] pub fn checked_sub_signed(self, rhs: OldDuration) -> Option> { - let date = try_opt!(self.date.checked_sub_signed(rhs)); + let date = self.date.checked_sub_signed(rhs)?; Some(Date { date, offset: self.offset }) } diff --git a/src/datetime/mod.rs b/src/datetime/mod.rs index 1e0050bd..a705f23b 100644 --- a/src/datetime/mod.rs +++ b/src/datetime/mod.rs @@ -324,7 +324,7 @@ impl DateTime { /// Returns `None` when it will result in overflow. #[inline] pub fn checked_add_signed(self, rhs: OldDuration) -> Option> { - let datetime = try_opt!(self.datetime.checked_add_signed(rhs)); + let datetime = self.datetime.checked_add_signed(rhs)?; let tz = self.timezone(); Some(tz.from_utc_datetime(&datetime)) } @@ -334,7 +334,7 @@ impl DateTime { /// Returns `None` when it will result in overflow. #[inline] pub fn checked_sub_signed(self, rhs: OldDuration) -> Option> { - let datetime = try_opt!(self.datetime.checked_sub_signed(rhs)); + let datetime = self.datetime.checked_sub_signed(rhs)?; let tz = self.timezone(); Some(tz.from_utc_datetime(&datetime)) } diff --git a/src/lib.rs b/src/lib.rs index 32e28873..aa4342f4 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -463,16 +463,6 @@ pub mod prelude { pub use crate::{Offset, TimeZone}; } -// useful throughout the codebase -macro_rules! try_opt { - ($e:expr) => { - match $e { - Some(v) => v, - None => return None, - } - }; -} - mod date; #[allow(deprecated)] pub use date::{Date, MAX_DATE, MIN_DATE}; diff --git a/src/naive/date.rs b/src/naive/date.rs index 13d8b02a..134b0506 100644 --- a/src/naive/date.rs +++ b/src/naive/date.rs @@ -1053,7 +1053,7 @@ impl NaiveDate { let year = self.year(); let (mut year_div_400, year_mod_400) = div_mod_floor(year, 400); let cycle = internals::yo_to_cycle(year_mod_400 as u32, self.of().ordinal()); - let cycle = try_opt!((cycle as i32).checked_add(try_opt!(rhs.num_days().to_i32()))); + let cycle = (cycle as i32).checked_add(rhs.num_days().to_i32()?)?; let (cycle_div_400y, cycle) = div_mod_floor(cycle, 146_097); year_div_400 += cycle_div_400y; @@ -1084,7 +1084,7 @@ impl NaiveDate { let year = self.year(); let (mut year_div_400, year_mod_400) = div_mod_floor(year, 400); let cycle = internals::yo_to_cycle(year_mod_400 as u32, self.of().ordinal()); - let cycle = try_opt!((cycle as i32).checked_sub(try_opt!(rhs.num_days().to_i32()))); + let cycle = (cycle as i32).checked_sub(rhs.num_days().to_i32()?)?; let (cycle_div_400y, cycle) = div_mod_floor(cycle, 146_097); year_div_400 += cycle_div_400y; diff --git a/src/naive/datetime/mod.rs b/src/naive/datetime/mod.rs index 1984c286..7c60c41e 100644 --- a/src/naive/datetime/mod.rs +++ b/src/naive/datetime/mod.rs @@ -529,7 +529,7 @@ impl NaiveDateTime { return None; } - let date = try_opt!(self.date.checked_add_signed(OldDuration::seconds(rhs))); + let date = self.date.checked_add_signed(OldDuration::seconds(rhs))?; Some(NaiveDateTime { date, time }) } @@ -602,7 +602,7 @@ impl NaiveDateTime { return None; } - let date = try_opt!(self.date.checked_sub_signed(OldDuration::seconds(rhs))); + let date = self.date.checked_sub_signed(OldDuration::seconds(rhs))?; Some(NaiveDateTime { date, time }) }