diff options
| author | Alex Crichton <alex@alexcrichton.com> | 2014-02-23 21:30:18 -0800 |
|---|---|---|
| committer | Alex Crichton <alex@alexcrichton.com> | 2014-02-27 21:04:05 -0800 |
| commit | 98782bb5c9b0196cd10e3cfaf07cd02c6fe9f2f3 (patch) | |
| tree | 7ab866c082727a73bab73f6242507c23ad626246 /src/libstd/comm/select.rs | |
| parent | 1bcd8252ee22ea4f153de812e9bf83e3cfe4f8e0 (diff) | |
| download | rust-98782bb5c9b0196cd10e3cfaf07cd02c6fe9f2f3.tar.gz rust-98782bb5c9b0196cd10e3cfaf07cd02c6fe9f2f3.zip | |
std: Export the select! macro
Mark it as #[experimental] for now. In theory this attribute will be read in the future. I believe that the implementation is solid enough for general use, although I would not be surprised if there were bugs in it still. I think that it's at the point now where public usage of it will start to uncover hopefully the last few remaining bugs. Closes #12044
Diffstat (limited to 'src/libstd/comm/select.rs')
| -rw-r--r-- | src/libstd/comm/select.rs | 16 |
1 files changed, 0 insertions, 16 deletions
diff --git a/src/libstd/comm/select.rs b/src/libstd/comm/select.rs index 02066086ad7..75e7265705a 100644 --- a/src/libstd/comm/select.rs +++ b/src/libstd/comm/select.rs @@ -58,22 +58,6 @@ use rt::task::{Task, BlockedTask}; use super::Port; use uint; -macro_rules! select { - ( - $($name:pat = $port:ident.$meth:ident() => $code:expr),+ - ) => ({ - use std::comm::Select; - let sel = Select::new(); - $( let mut $port = sel.handle(&$port); )+ - unsafe { - $( $port.add(); )+ - } - let ret = sel.wait(); - $( if ret == $port.id() { let $name = $port.$meth(); $code } else )+ - { unreachable!() } - }) -} - /// The "port set" of the select interface. This structure is used to manage a /// set of ports which are being selected over. pub struct Select { |
