std::os::windows::ffi

Trait OsStringExt

1.0.0 · Source
pub trait OsStringExt: Sealed {
    // Required method
    fn from_wide(wide: &[u16]) -> Self;
}
Available on Windows only.
Expand description

Windows-specific extensions to OsString.

This trait is sealed: it cannot be implemented outside the standard library. This is so that future additional methods are not breaking changes.

Required Methods§

1.0.0 · Source

fn from_wide(wide: &[u16]) -> Self

Creates an OsString from a potentially ill-formed UTF-16 slice of 16-bit code units.

This is lossless: calling OsStrExt::encode_wide on the resulting string will always return the original code units.

§Examples
use std::ffi::OsString;
use std::os::windows::prelude::*;

// UTF-16 encoding for "Unicode".
let source = [0x0055, 0x006E, 0x0069, 0x0063, 0x006F, 0x0064, 0x0065];

let string = OsString::from_wide(&source[..]);

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

1.0.0 · Source§

impl OsStringExt for OsString