]> git.lizzy.rs Git - rust.git/commitdiff
rollup merge of #23766: alexcrichton/stabilize-raw-fd
authorAlex Crichton <alex@alexcrichton.com>
Tue, 31 Mar 2015 17:15:29 +0000 (10:15 -0700)
committerAlex Crichton <alex@alexcrichton.com>
Tue, 31 Mar 2015 22:49:10 +0000 (15:49 -0700)
This commit stabilizes the platform-specific `io` modules, specifically around
the traits having to do with the raw representation of each object on each
platform.

Specifically, the following material was stabilized:

* `AsRaw{Fd,Socket,Handle}`
* `RawFd` (renamed from `Fd`)
* `RawHandle` (renamed from `Handle`)
* `RawSocket` (renamed from `Socket`)
* `AsRaw{Fd,Socket,Handle}` implementations
* `std::os::{unix, windows}::io`

The following material was added as `#[unstable]`:

* `FromRaw{Fd,Socket,Handle}`
* Implementations for various primitives

There are a number of future improvements that are possible to make to this
module, but this should cover a good bit of functionality desired from these
modules for now. Some specific future additions may include:

* `IntoRawXXX` traits to consume the raw representation and cancel the
  auto-destructor.
* `Fd`, `Socket`, and `Handle` abstractions that behave like Rust objects and
  have nice methods for various syscalls.

At this time though, these are considered backwards-compatible extensions and
will not be stabilized at this time.

This commit is a breaking change due to the addition of `Raw` in from of the
type aliases in each of the platform-specific modules.

[breaking-change]

1  2 
src/libstd/fs/mod.rs
src/libstd/sys/common/net2.rs
src/libstd/sys/windows/net.rs

Simple merge
Simple merge
Simple merge