libs-team
libs-team copied to clipboard
The home of the library team
# Proposal ## Problem statement The [Wrapping](https://doc.rust-lang.org/core/num/struct.Wrapping.html) and [Saturating](https://doc.rust-lang.org/core/num/struct.Saturating.html) types have stable layout, defined as equivalent to the inner public numeric type. This means that it's easy to convert owned...
# Proposal ## Problem statement With rust-lang/rust#115443, developers, like those writing CLI parsers, can now perform (limited) operations on `OsStr` but it requires `unsafe` to get an `OsStr` back, requiring...
# Proposal ## Problem statement There is currently no means, using std::fs, to provide SECURITY_ATTRIBUTES when opening a file. A private implementation of OpenOptions do have a `security_attributes` function but...
# Proposal ## Problem statement RangeBounds today is a standard trait to represent ranges and provides a single method `contains` used to determine if a range contains a given element....
# Proposal ## Problem statement Ranges of non-zero **unsigned** integers does not contain zero, and should be step-able. ## Motivation, use-cases I want to iterate over a `Range`. ## Solution...
# Proposal Add `std::fs::rename_noreplace`, which is equivalent to `std::fs::rename` but with the semantic that an existing target location will never be overwritten and always yield an error instead. ## Problem...
# Proposal ## Problem statement There is no easy way to use `fmt::Write` to write bytes to an io stream. ## Motivation, use-cases If you know the format data you'll...
# Proposal ## Problem statement The ability to place formatted text into a buffer seems like a useful primitive to have, so I propose adding types to `core::fmt` that implement...
# Proposal ## Problem statement When a type has finite possible values and total ordering, it is tempting to write this code: ` for x in SOME_VAL.. {}` However this...
# Proposal ## Problem statement [`core::iter::Sum`](https://doc.rust-lang.org/core/iter/trait.Sum.html) is implemented for types that can be created by summing a sequence of values. It's implemented for various integer types, and also the [`core::num::Wrapping`](https://doc.rust-lang.org/core/num/struct.Wrapping.html)...