[][src]Crate winapi_util

This crate provides a smattering of safe routines for parts of winapi. The primary purpose of this crate is to serve as a dumping ground for various utility functions that make interactions with winapi safe. This permits the centralization of unsafe when dealing with Windows APIs, and thus makes it easier to audit.

A key abstraction in this crate is the combination of the Handle and HandleRef types. Both represent a valid Windows handle to an I/O-like object, where Handle is owned (the resource is closed when the handle is dropped) and HandleRef is borrowed (the resource is not closed when the handle is dropped). Many of the routines in this crate work on handles and accept anything that can be safely converted into a HandleRef. This includes standard library types such as File, Stdin, Stdout and Stderr.

Note that this crate is completely empty on non-Windows platforms.

Modules

console

Safe routines for dealing with the Windows console.

file

Safe routines for dealing with files and handles on Windows.

Structs

Handle

A handle represents an owned and valid Windows handle to a file-like object.

HandleRef

Represents a borrowed and valid Windows handle to a file-like object, such as stdin/stdout/stderr or an actual file.

Traits

AsHandleRef

Construct borrowed and valid Windows handles from file-like objects.