Skip to content

Commit

Permalink
Deprecate panicking TimeDelta constructors
Browse files Browse the repository at this point in the history
pitdicker committed Mar 6, 2024

Verified

This commit was signed with the committer’s verified signature.
mdedetrich Matthew de Detrich
1 parent 2c1b0be commit 9e667b6
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion src/time_delta.rs
Original file line number Diff line number Diff line change
@@ -102,6 +102,7 @@ impl TimeDelta {
/// Panics when the duration is out of bounds.
#[inline]
#[must_use]
#[deprecated(since = "0.4.35", note = "Use `TimeDelta::try_weeks` instead")]
pub const fn weeks(weeks: i64) -> TimeDelta {
expect!(TimeDelta::try_weeks(weeks), "TimeDelta::weeks out of bounds")
}
@@ -129,6 +130,7 @@ impl TimeDelta {
/// Panics when the `TimeDelta` would be out of bounds.
#[inline]
#[must_use]
#[deprecated(since = "0.4.35", note = "Use `TimeDelta::try_days` instead")]
pub const fn days(days: i64) -> TimeDelta {
expect!(TimeDelta::try_days(days), "TimeDelta::days out of bounds")
}
@@ -155,6 +157,7 @@ impl TimeDelta {
/// Panics when the `TimeDelta` would be out of bounds.
#[inline]
#[must_use]
#[deprecated(since = "0.4.35", note = "Use `TimeDelta::try_hours` instead")]
pub const fn hours(hours: i64) -> TimeDelta {
expect!(TimeDelta::try_hours(hours), "TimeDelta::hours out of bounds")
}
@@ -180,6 +183,7 @@ impl TimeDelta {
/// Panics when the `TimeDelta` would be out of bounds.
#[inline]
#[must_use]
#[deprecated(since = "0.4.35", note = "Use `TimeDelta::try_minutes` instead")]
pub const fn minutes(minutes: i64) -> TimeDelta {
expect!(TimeDelta::try_minutes(minutes), "TimeDelta::minutes out of bounds")
}
@@ -204,6 +208,7 @@ impl TimeDelta {
/// (in this context, this is the same as `i64::MIN / 1_000` due to rounding).
#[inline]
#[must_use]
#[deprecated(since = "0.4.35", note = "Use `TimeDelta::try_seconds` instead")]
pub const fn seconds(seconds: i64) -> TimeDelta {
expect!(TimeDelta::try_seconds(seconds), "TimeDelta::seconds out of bounds")
}
@@ -227,7 +232,7 @@ impl TimeDelta {
/// Panics when the `TimeDelta` would be out of bounds, i.e. when `milliseconds` is more than
/// `i64::MAX` or less than `-i64::MAX`. Notably, this is not the same as `i64::MIN`.
#[inline]
#[deprecated]
#[deprecated(since = "0.4.35", note = "Use `TimeDelta::try_milliseconds` instead")]
pub const fn milliseconds(milliseconds: i64) -> TimeDelta {
expect!(TimeDelta::try_milliseconds(milliseconds), "TimeDelta::milliseconds out of bounds")
}
@@ -683,6 +688,7 @@ mod tests {
}

#[test]
#[allow(deprecated)]
#[should_panic(expected = "TimeDelta::seconds out of bounds")]
fn test_duration_seconds_max_overflow_panic() {
let _ = TimeDelta::seconds(i64::MAX / 1_000 + 1);
@@ -704,6 +710,7 @@ mod tests {
}

#[test]
#[allow(deprecated)]
#[should_panic(expected = "TimeDelta::seconds out of bounds")]
fn test_duration_seconds_min_underflow_panic() {
let _ = TimeDelta::seconds(-i64::MAX / 1_000 - 1);
@@ -766,6 +773,7 @@ mod tests {
}

#[test]
#[allow(deprecated)]
#[should_panic(expected = "TimeDelta::milliseconds out of bounds")]
fn test_duration_milliseconds_min_underflow_panic() {
// Here we ensure that trying to create a value one millisecond below the

0 comments on commit 9e667b6

Please sign in to comment.