std: Tweak the std::env OsString/String interface #22188
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This commit tweaks the interface of the
std::env
module to make it moreergonomic for common usage:
env::var
was renamed toenv::var_os
env::var_string
was renamed toenv::var
env::args
was renamed toenv::args_os
env::args
was re-added as a panicking iterator over string valuesenv::vars
was renamed toenv::vars_os
env::vars
was re-added as a panicking iterator over string values.This should make common usage (e.g. unicode values everywhere) more ergonomic
as well as "the default". This is also a breaking change due to the differences
of what's yielded from each of these functions, but migration should be fairly
easy as the defaults operate over
String
which is a common type to use.[breaking-change]