Alex Crichton
89fcc96dd4
Migrate to using tokio-io
...
Deprecate the existing `io` module in this crate entirely.
More details coming soon!
Closes #61
2017-03-15 09:46:54 -07:00
Alex Crichton
66cff8e84b
Swap Handle/Pinned
...
* Handle -> Remote
* Pinned -> Handle
All APIs now take a `&Handle` by default and in general can return an immediate
`io::Result` instead of an `IoFuture`. This reflects how most usage will likely
be done through handles rather than remotes, and also all previous functionality
can be recovered with a `oneshot` plus `Remote::spawn`.
Closes #15
2016-09-07 22:12:41 -07:00
Alex Crichton
e60002b653
Tweak TaskIo wording and such
...
* Remove TaskIo
* task_split -> split
* TaskIoRead -> ReadHalf
* TaskIoWrite -> WriteHalf
Closes #18
2016-09-07 22:12:14 -07:00
Alex Crichton
6c045d31ac
Reorganize the entire crate:
...
Renamed APIs
* Loop => reactor::Core
* LoopHandle => reactor::Handle
* LoopPin => reactor::Pinned
* TcpStream => net::TcpStream
* TcpListener => net::TcpListener
* UdpSocket => net::UdpSocket
* Sender => channel::Sender
* Receiver => channel::Receiver
* Timeout => reactor::Timeout
* ReadinessStream => reactor::PollEvented
* All `LoopHandle` methods to construct objects are now free functions on the
associated types, e.g. `LoopHandle::tcp_listen` is now `TcpListener::bind`
* All APIs taking a `Handle` now take a `Handle` as the last argument
* All future-returning APIs now return concrete types instead of trait objects
Added APIs
* io::Io trait -- Read + Write + ability to poll
Removed without replacement:
* AddSource
* AddTimeout
* IoToken
* TimeoutToken
Closes #3
Closes #6
2016-09-07 22:12:14 -07:00
Alex Crichton
f107c8d860
Rename to tokio-core, add in futures-io
...
Renames the futures-mio crate to tokio-core, pulls in the futures-io crate under
an `io` module, and gets everything compiling.
2016-08-26 14:39:47 -07:00
Alex Crichton
311bfa07a3
Update futures-minihttp
2016-08-17 18:41:34 -07:00
Alex Crichton
d0b911189c
Re-work I/O
...
* Auto-register interest whenever we see WouldBlock
* Remove implementations of `Stream<Item=Ready>`, no longer needed
* Add explicit `poll_{read,write}` methods, if needed
* Remove all I/O streams, libstd ones suffice
* Update all I/O futures
2016-08-17 18:41:34 -07:00
Alex Crichton
62f306629d
Keep polling in Buffered if there's more futures
...
We're not NotReady until we hit the final future and it's not done.
2016-08-15 16:22:09 -07:00