Alex Crichton
83784fd983
Don't remove timeouts that have fired
...
Closes #22
2016-09-08 07:47:07 -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
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
5c9daad88b
Add a timer wheel
2016-08-03 22:57:07 -07:00