OsStr Bytes
This crate allows interacting with the data stored internally 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.
Usage
Add the following lines to your "Cargo.toml" file:
[dependencies]
os_str_bytes = "2.3"
See the documentation for available functionality and examples.
Rust version support
The minimum supported Rust toolchain version depends on the platform:
target_os |
Minimum Version |
---|---|
redox | 1.32.0 |
unix | 1.32.0 |
wasi | 1.35.0 (all versions) |
windows | 1.32.0 |
License
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.