commit | 715a66bf70b2a201f865e5f05313e2a3ea5d22a7 | [log] [tgz] |
---|---|---|
author | Android Build Coastguard Worker <[email protected]> | Thu Aug 08 01:13:33 2024 +0000 |
committer | Android Build Coastguard Worker <[email protected]> | Thu Aug 08 01:13:33 2024 +0000 |
tree | a41d0cfb96f949d5b50d8c9f6554dc5aaa28d454 | |
parent | 9eecb3f598ddf9db22e7a535118214c8ba55eacb [diff] | |
parent | a9ff9ded16c6db1a976115b8437b06a39345dba4 [diff] |
Snap for 12199973 from a9ff9ded16c6db1a976115b8437b06a39345dba4 to 24Q4-release Change-Id: Iaf0e4e83720d5b0a18c3fb4897f7a9af5f8404f1
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.4"
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.4"
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.