Skip to content

Tracking Issue for producing a Result<(), E> from a bool #142748

Open
@LimpSquid

Description

@LimpSquid

Feature gate: #![feature(bool_to_result)]

This is a tracking issue for adding bool::ok_or and bool::ok_or_else as discussed in rust-lang/libs-team#606

This feature allows you to directly produce a Result<(), E> from a bool and is a short-hand for .then_some(()).ok_or(...) or .then_some(()).ok_or_else(|| ...).

Public API

assert_eq!(false.ok_or(0), Err(0));
assert_eq!(true.ok_or(0), Ok(()));

assert_eq!(false.ok_or_else(|| 0), Err(0));
assert_eq!(true.ok_or_else(|| 0), Ok(()));

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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions