rust/src/libstd/io
Aaron Turon bfa853f8ed io::process::Command: add fine-grained env builder
This commit changes the `io::process::Command` API to provide
fine-grained control over the environment:

* The `env` method now inserts/updates a key/value pair.
* The `env_remove` method removes a key from the environment.
* The old `env` method, which sets the entire environment in one shot,
  is renamed to `env_set_all`. It can be used in conjunction with the
  finer-grained methods. This renaming is a breaking change.

To support these new methods, the internal `env` representation for
`Command` has been changed to an optional `HashMap` holding owned
`CString`s (to support non-utf8 data). The `HashMap` is only
materialized if the environment is updated. The implementation does not
try hard to avoid allocation, since the cost of launching a process will
dwarf any allocation cost.

This patch also adds `PartialOrd`, `Eq`, and `Hash` implementations for
`CString`.

[breaking-change]
2014-07-10 12:16:16 -07:00
..
net std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
buffered.rs Deprecate the bytes!() macro. 2014-06-18 17:02:22 -07:00
comm_adapters.rs librustc: Match trait self types exactly. 2014-06-28 11:18:37 -07:00
extensions.rs make any_pat! and u64_from_be_bytes_bench_impl! macros hygienic 2014-07-04 13:20:14 -07:00
fs.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
mem.rs auto merge of #15471 : erickt/rust/push_all, r=acrichto 2014-07-09 20:21:29 +00:00
mod.rs auto merge of #15283 : kwantam/rust/master, r=alexcrichton 2014-07-09 18:36:30 +00:00
pipe.rs Deprecate the bytes!() macro. 2014-06-18 17:02:22 -07:00
process.rs io::process::Command: add fine-grained env builder 2014-07-10 12:16:16 -07:00
result.rs De-~[] Mem{Reader,Writer} 2014-04-06 15:40:01 -07:00
signal.rs Register new snapshots 2014-06-15 23:30:24 -07:00
stdio.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
tempfile.rs std: Remove format_strbuf!() 2014-05-28 08:35:41 -07:00
test.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
timer.rs std::io: Use re-exported pathes in examples. 2014-06-27 07:10:33 +09:00
util.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00