Traits for converting between byte sequences and platform-native strings.
This crate allows interacting with the bytes stored internally by [OsStr
] and
[OsString
], without resorting to panics or data 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 OsString::from(String::from(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:
toml
[dependencies]
os_str_bytes = "0.3"
See the [documentation] for available functionality and examples.
The minimum supported Rust toolchain version is currently Rust 1.32.0.
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.