about summary refs log tree commit diff
path: root/src/libstd/rt/io/pipe.rs
AgeCommit message (Collapse)AuthorLines
2013-11-11Move std::rt::io to std::ioAlex Crichton-89/+0
2013-10-30Make Writer::flush a no-op default methodAlex Crichton-2/+0
Closes #9126
2013-10-24Fixing some tests, adding some pipesAlex Crichton-1/+33
This adds constructors to pipe streams in the new runtime to take ownership of file descriptors, and also fixes a few tests relating to the std::run changes (new errors are raised on io_error and one test is xfail'd).
2013-10-24Move stdin to using libuv's pipes instead of a ttyAlex Crichton-3/+3
I was seeing a lot of weird behavior with stdin behaving as a tty, and it doesn't really quite make sense, so instead this moves to using libuv's pipes instead (which make more sense for stdin specifically). This prevents piping input to rustc hanging forever.
2013-10-24Remove io::read_errorAlex Crichton-2/+2
The general idea is to remove conditions completely from I/O, so in the meantime remove the read_error condition to mean the same thing as the io_error condition.
2013-10-24Migrate Rtio objects to true trait objectsAlex Crichton-3/+3
This moves as many as I could over to ~Trait instead of ~Typedef. The only remaining one is the IoFactoryObject which should be coming soon...
2013-10-24Remove unbound pipes from io::pipeAlex Crichton-23/+1
This isn't necessary for creating processes (or at least not right now), and it inherently attempts to expose implementation details.
2013-10-24Implement io::net::unixAlex Crichton-2/+2
2013-10-22Drop the '2' suffix from logging macrosAlex Crichton-2/+2
Who doesn't like a massive renaming?
2013-10-02Stop using newtype wrappers in std::rt::ioSteven Fackler-4/+9
UnboundedPipeStream is still a newtype since process::set_stdio needs to look into its internals. Closes #9667
2013-09-30std: Remove usage of fmt!Alex Crichton-2/+2
2013-09-18Implement process bindings to libuvAlex Crichton-0/+76
This is a re-landing of #8645, except that the bindings are *not* being used to power std::run just yet. Instead, this adds the bindings as standalone bindings inside the rt::io::process module. I made one major change from before, having to do with how pipes are created/bound. It's much clearer now when you can read/write to a pipe, as there's an explicit difference (different types) between an unbound and a bound pipe. The process configuration now takes unbound pipes (and consumes ownership of them), and will return corresponding pipe structures back if spawning is successful (otherwise everything is destroyed normally).
2013-08-29Revert "auto merge of #8645 : alexcrichton/rust/issue-6436-run-non-blocking, ↵Brian Anderson-77/+0
r=brson" This reverts commit b8d1fa399402c71331aefd634d710004e00b73a6, reversing changes made to f22b4b169854c8a4ba86c16ee43327d6bcf94562. Conflicts: mk/rt.mk src/libuv
2013-08-27Implement process bindings to libuvAlex Crichton-0/+77
Closes #6436