rust/src/libstd/io
bors 1a1645d3b1 auto merge of #14009 : jcmoyer/rust/bitflags-complement, r=alexcrichton
I feel that this is a very vital, missing piece of functionality. This adds on to #13072.

Only bits used in the definition of the bitflag are considered for the universe set. This is a bit safer than simply inverting all of the bits in the wrapped value.

```rust
bitflags!(flags Flags: u32 {
    FlagA       = 0x00000001,
    FlagB       = 0x00000010,
    FlagC       = 0x00000100,
    FlagABC     = FlagA.bits
                | FlagB.bits
                | FlagC.bits
})

...

// `Not` implements set complement
assert!(!(FlagB | FlagC) == FlagA);
// `all` and `is_all` are the inverses of `empty` and `is_empty`
assert!(Flags::all() - FlagA == !FlagA);
assert!(FlagABC.is_all());
```
2014-05-14 09:21:25 -07:00
..
net Suppress a "unused variable" warning. 2014-05-14 09:14:45 +09:00
buffered.rs core: Add unwrap()/unwrap_err() methods to Result 2014-05-07 08:16:14 -07:00
comm_adapters.rs Replace most ~exprs with 'box'. #11779 2014-05-02 23:00:58 -07:00
extensions.rs io: Add .read_at_least() to Reader 2014-05-13 18:45:20 -07:00
flate.rs Remove eof() from io::Reader 2014-01-09 09:27:10 -08:00
fs.rs Add stat method to std::io::fs::File to stat without a Path. 2014-05-12 19:52:29 -07:00
mem.rs io: Add .read_at_least() to Reader 2014-05-13 18:45:20 -07:00
mod.rs auto merge of #14009 : jcmoyer/rust/bitflags-complement, r=alexcrichton 2014-05-14 09:21:25 -07:00
pipe.rs librustc: Remove ~EXPR, ~TYPE, and ~PAT from the language, except 2014-05-06 23:12:54 -07:00
process.rs io: Implement process wait timeouts 2014-05-13 17:27:42 -07:00
result.rs De-~[] Mem{Reader,Writer} 2014-04-06 15:40:01 -07:00
signal.rs librustc: Remove ~EXPR, ~TYPE, and ~PAT from the language, except 2014-05-06 23:12:54 -07:00
stdio.rs core: Add unwrap()/unwrap_err() methods to Result 2014-05-07 08:16:14 -07:00
tempfile.rs core: Add unwrap()/unwrap_err() methods to Result 2014-05-07 08:16:14 -07:00
test.rs rustc: Don't allow priv use to shadow pub use 2014-04-10 15:22:01 -07:00
timer.rs core: Move Option::expect to libstd from libcore 2014-05-07 08:17:32 -07:00
util.rs std: Implement the Buffer trait for some wrappers 2014-05-07 08:11:19 -07:00