Skip to content

Tracking Issue for saturating SystemTime arithmetic #151199

@cvengler

Description

@cvengler

Feature gate: #![feature(time_saturating_systemtime)]

This is a tracking issue for rust-lang/libs-team#718

This feature adds the following three methods to SystemTime:

  • SystemTime::saturating_add
  • SystemTime::saturating_sub
  • SystemTime::saturating_duration_since

Public API

// std::time

impl SystemTime {
    // ...

    fn saturating_add(&self, rhs: Duration) -> Self {
        self.checked_add(rhs).unwrap_or(SystemTime::MAX)
    }

    fn saturating_sub(&self, rhs: Duration) -> Self {
        self.checked_sub(rhs).unwrap_or(SystemTime::MIN)
    }

    fn saturating_duration_since(&self, rhs: Self) -> Duration {
        self.duration_since(rhs).unwrap_or(Duration::ZERO)
    }
}

Steps / History

(Remember to update the S-tracking-* label when checking boxes.)

Unresolved Questions

  • None yet.

Footnotes

  1. https://std-dev-guide.rust-lang.org/feature-lifecycle/stabilization.html

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCS-tracking-unimplementedStatus: The feature has not been implemented.T-libs-apiRelevant to the library API team, which will review and decide on the PR/issue.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions