commit | 5336c3bdcab3e2a70a677d5deca50c3b2899dd3c | [log] [tgz] |
---|---|---|
author | Charisee <[email protected]> | Fri Jul 22 20:01:06 2022 +0000 |
committer | Automerger Merge Worker <[email protected]> | Fri Jul 22 20:01:06 2022 +0000 |
tree | 7762bd080c3057ee3849952e47dc5ea5cd762863 | |
parent | 6210f1f71eb4646703a62f35bd7bfc0c17f37208 [diff] | |
parent | df330aa3af20e55463488d359db22b4cf8188b82 [diff] |
Import source for the os_str_bytes crate am: 110dd358c8 am: bb3cea62ce am: df330aa3af Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/os_str_bytes/+/2154886 Change-Id: Ie39343b9b2e65447b189e0daea11d995dc804790 Signed-off-by: Automerger Merge Worker <[email protected]>
This crate allows interacting with the data stored by OsStr
and OsString
, without resorting to panics or corruption for invalid UTF-8. Thus, methods can be used that are already defined on [u8]
and Vec<u8>
.
Typically, the only way to losslessly construct OsStr
or OsString
from a byte sequence is to use OsStr::new(str::from_utf8(bytes)?)
, which requires the bytes to be valid in UTF-8. However, since this crate makes conversions directly between the platform encoding and raw bytes, even some strings invalid in UTF-8 can be converted.
Add the following lines to your “Cargo.toml” file:
[dependencies] os_str_bytes = "6.1"
See the documentation for available functionality and examples.
The minimum supported Rust toolchain version depends on the platform:
Minor version updates may increase these version requirements. However, the previous two Rust releases will always be supported. If the minimum Rust version must not be increased, use a tilde requirement to prevent updating this crate's minor version:
[dependencies] os_str_bytes = "~6.1"
Licensing terms are specified in COPYRIGHT.
Unless you explicitly state otherwise, any contribution submitted for inclusion in this crate, as defined in LICENSE-APACHE, shall be licensed according to COPYRIGHT, without any additional terms or conditions.