about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2013-05-16 23:12:22 -0700
committerBrian Anderson <banderson@mozilla.com>2013-05-17 17:54:27 -0700
commit26becc308e4b9a0f5be1c7c2895c7761b778e01f (patch)
tree73fb276dad954cec037e43a72c2e75b8d7652645 /src/libstd
parentf5987b03b8d65a2b885519b7b9a0ea33cda33bc5 (diff)
downloadrust-26becc308e4b9a0f5be1c7c2895c7761b778e01f.tar.gz
rust-26becc308e4b9a0f5be1c7c2895c7761b778e01f.zip
core: Wire up oneshot pipes to newsched
Diffstat (limited to 'src/libstd')
-rw-r--r--src/libstd/future.rs10
-rw-r--r--src/libstd/workcache.rs7
2 files changed, 5 insertions, 12 deletions
diff --git a/src/libstd/future.rs b/src/libstd/future.rs
index be33c0f4663..b8ae03c0f2b 100644
--- a/src/libstd/future.rs
+++ b/src/libstd/future.rs
@@ -23,8 +23,7 @@
 
 use core::cast;
 use core::cell::Cell;
-use core::comm::{PortOne, oneshot, send_one};
-use core::pipes::recv;
+use core::comm::{PortOne, oneshot, send_one, recv_one};
 use core::task;
 use core::util::replace;
 
@@ -105,11 +104,8 @@ pub fn from_port<A:Owned>(port: PortOne<A>) -> Future<A> {
      */
 
     let port = Cell(port);
-    do from_fn || {
-        let port = port.take().unwrap();
-        match recv(port) {
-            oneshot::send(data) => data
-        }
+    do from_fn {
+        recv_one(port.take())
     }
 }
 
diff --git a/src/libstd/workcache.rs b/src/libstd/workcache.rs
index f173df60df8..3889650d012 100644
--- a/src/libstd/workcache.rs
+++ b/src/libstd/workcache.rs
@@ -15,11 +15,10 @@ use sort;
 
 use core::cell::Cell;
 use core::cmp;
-use core::comm::{PortOne, oneshot, send_one};
+use core::comm::{PortOne, oneshot, send_one, recv_one};
 use core::either::{Either, Left, Right};
 use core::hashmap::HashMap;
 use core::io;
-use core::pipes::recv;
 use core::run;
 use core::to_bytes;
 use core::util::replace;
@@ -389,9 +388,7 @@ fn unwrap<T:Owned +
         None => fail!(),
         Some(Left(v)) => v,
         Some(Right(port)) => {
-            let (exe, v) = match recv(port.unwrap()) {
-                oneshot::send(data) => data
-            };
+            let (exe, v) = recv_one(port);
 
             let s = json_encode(&v);