about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2013-06-01 22:37:35 -0700
committerbors <bors@rust-lang.org>2013-06-01 22:37:35 -0700
commitc354a0c7eb22f7a4bc1c7adf8e2ed34ee96428aa (patch)
tree675d25a764043bfaff2360da96bfdf4d5e005bb5
parent14c331053ea9d2661cfd9c81351f4b3815cf5e3d (diff)
parentecd08b989ae006660929bce6b719d9f7bc34a7fe (diff)
downloadrust-c354a0c7eb22f7a4bc1c7adf8e2ed34ee96428aa.tar.gz
rust-c354a0c7eb22f7a4bc1c7adf8e2ed34ee96428aa.zip
auto merge of #6896 : nickdesaulniers/rust/issue4501, r=brson
review? @brson
-rw-r--r--src/libstd/comm.rs12
-rw-r--r--src/libstd/pipes.rs8
-rw-r--r--src/libsyntax/ext/pipes/pipec.rs31
-rw-r--r--src/test/bench/msgsend-ring-pipes.rs4
-rw-r--r--src/test/bench/pingpong.rs12
-rw-r--r--src/test/run-pass/issue-2834.rs2
-rw-r--r--src/test/run-pass/issue-2930.rs2
-rw-r--r--src/test/run-pass/pipe-detect-term.rs4
-rw-r--r--src/test/run-pass/pipe-peek.rs2
-rw-r--r--src/test/run-pass/pipe-pingpong-bounded.rs4
-rw-r--r--src/test/run-pass/pipe-pingpong-proto.rs2
-rw-r--r--src/test/run-pass/pipe-select.rs22
-rw-r--r--src/test/run-pass/pipe-sleep.rs6
13 files changed, 47 insertions, 64 deletions
diff --git a/src/libstd/comm.rs b/src/libstd/comm.rs
index a376a715976..f0c353c8d62 100644
--- a/src/libstd/comm.rs
+++ b/src/libstd/comm.rs
@@ -376,7 +376,7 @@ mod pipesy {
         priv use core::kinds::Owned;
         use ptr::to_mut_unsafe_ptr;
 
-        pub fn init<T: Owned>() -> (client::Oneshot<T>, server::Oneshot<T>) {
+        pub fn init<T: Owned>() -> (server::Oneshot<T>, client::Oneshot<T>) {
             pub use core::pipes::HasBuffer;
 
             let buffer = ~::core::pipes::Buffer {
@@ -466,7 +466,7 @@ mod pipesy {
 
     /// Initialiase a (send-endpoint, recv-endpoint) oneshot pipe pair.
     pub fn oneshot<T: Owned>() -> (PortOne<T>, ChanOne<T>) {
-        let (chan, port) = oneshot::init();
+        let (port, chan) = oneshot::init();
         (PortOne::new(port), ChanOne::new(chan))
     }
 
@@ -550,7 +550,7 @@ mod pipesy {
     pub mod streamp {
         priv use core::kinds::Owned;
 
-        pub fn init<T: Owned>() -> (client::Open<T>, server::Open<T>) {
+        pub fn init<T: Owned>() -> (server::Open<T>, client::Open<T>) {
             pub use core::pipes::HasBuffer;
             ::core::pipes::entangle()
         }
@@ -567,7 +567,7 @@ mod pipesy {
                 ::core::option::Option<Open<T>> {
                 {
                     use super::data;
-                    let (c, s) = ::core::pipes::entangle();
+                    let (s, c) = ::core::pipes::entangle();
                     let message = data(x_0, s);
                     if ::core::pipes::send(pipe, message) {
                         ::core::pipes::rt::make_some(c)
@@ -579,7 +579,7 @@ mod pipesy {
             pub fn data<T: Owned>(pipe: Open<T>, x_0: T) -> Open<T> {
                 {
                     use super::data;
-                    let (c, s) = ::core::pipes::entangle();
+                    let (s, c) = ::core::pipes::entangle();
                     let message = data(x_0, s);
                     ::core::pipes::send(pipe, message);
                     c
@@ -615,7 +615,7 @@ mod pipesy {
 
     */
     pub fn stream<T:Owned>() -> (Port<T>, Chan<T>) {
-        let (c, s) = streamp::init();
+        let (s, c) = streamp::init();
 
         (Port {
             endp: Some(s)
diff --git a/src/libstd/pipes.rs b/src/libstd/pipes.rs
index 9607d395151..365e192da66 100644
--- a/src/libstd/pipes.rs
+++ b/src/libstd/pipes.rs
@@ -237,11 +237,11 @@ pub fn packet<T>() -> *mut Packet<T> {
 pub fn entangle_buffer<T:Owned,Tstart:Owned>(
     mut buffer: ~Buffer<T>,
     init: &fn(*libc::c_void, x: &mut T) -> *mut Packet<Tstart>)
-    -> (SendPacketBuffered<Tstart, T>, RecvPacketBuffered<Tstart, T>) {
+    -> (RecvPacketBuffered<Tstart, T>, SendPacketBuffered<Tstart, T>) {
     unsafe {
         let p = init(transmute_copy(&buffer), &mut buffer.data);
         forget(buffer);
-        (SendPacketBuffered(p), RecvPacketBuffered(p))
+        (RecvPacketBuffered(p), SendPacketBuffered(p))
     }
 }
 
@@ -775,9 +775,9 @@ pub fn RecvPacketBuffered<T,Tbuffer>(p: *mut Packet<T>)
     }
 }
 
-pub fn entangle<T>() -> (SendPacket<T>, RecvPacket<T>) {
+pub fn entangle<T>() -> (RecvPacket<T>, SendPacket<T>) {
     let p = packet();
-    (SendPacket(p), RecvPacket(p))
+    (RecvPacket(p), SendPacket(p))
 }
 
 /** Receives a message from one of two endpoints.
diff --git a/src/libsyntax/ext/pipes/pipec.rs b/src/libsyntax/ext/pipes/pipec.rs
index db0efdd7b0f..83cafcd8a6a 100644
--- a/src/libsyntax/ext/pipes/pipec.rs
+++ b/src/libsyntax/ext/pipes/pipec.rs
@@ -89,10 +89,10 @@ impl gen_send for message {
             }
             else {
                 let pat = match (this.dir, next.dir) {
-                  (send, send) => "(c, s)",
-                  (send, recv) => "(s, c)",
-                  (recv, send) => "(s, c)",
-                  (recv, recv) => "(c, s)"
+                  (send, send) => "(s, c)",
+                  (send, recv) => "(c, s)",
+                  (recv, send) => "(c, s)",
+                  (recv, recv) => "(s, c)"
                 };
 
                 body += fmt!("let %s = ::std::pipes::entangle();\n", pat);
@@ -317,30 +317,13 @@ impl gen_init for protocol {
         let start_state = self.states[0];
 
         let body = if !self.is_bounded() {
-            match start_state.dir {
-              send => quote_expr!( ::std::pipes::entangle() ),
-              recv => {
-                quote_expr!({
-                    let (s, c) = ::std::pipes::entangle();
-                    (c, s)
-                })
-              }
-            }
+            quote_expr!( ::std::pipes::entangle() )
         }
         else {
-            let body = self.gen_init_bounded(ext_cx);
-            match start_state.dir {
-              send => body,
-              recv => {
-                  quote_expr!({
-                      let (s, c) = $body;
-                      (c, s)
-                  })
-              }
-            }
+            self.gen_init_bounded(ext_cx)
         };
 
-        cx.parse_item(fmt!("pub fn init%s() -> (client::%s, server::%s)\
+        cx.parse_item(fmt!("pub fn init%s() -> (server::%s, client::%s)\
                             { pub use std::pipes::HasBuffer; %s }",
                            start_state.generics.to_source(cx),
                            start_state.to_ty(cx).to_source(cx),
diff --git a/src/test/bench/msgsend-ring-pipes.rs b/src/test/bench/msgsend-ring-pipes.rs
index 21753f5f331..2cc9e8882c7 100644
--- a/src/test/bench/msgsend-ring-pipes.rs
+++ b/src/test/bench/msgsend-ring-pipes.rs
@@ -73,7 +73,7 @@ fn main() {
     let num_tasks = uint::from_str(args[1]).get();
     let msg_per_task = uint::from_str(args[2]).get();
 
-    let (num_chan, num_port) = ring::init();
+    let (num_port, num_chan) = ring::init();
     let mut num_chan = Cell(num_chan);
 
     let start = time::precise_time_s();
@@ -83,7 +83,7 @@ fn main() {
 
     for uint::range(1u, num_tasks) |i| {
         //error!("spawning %?", i);
-        let (new_chan, num_port) = ring::init();
+        let (num_port, new_chan) = ring::init();
         let num_chan2 = Cell(num_chan.take());
         let num_port = Cell(num_port);
         let new_future = do future::spawn || {
diff --git a/src/test/bench/pingpong.rs b/src/test/bench/pingpong.rs
index 382de68ba57..9a8c0656e84 100644
--- a/src/test/bench/pingpong.rs
+++ b/src/test/bench/pingpong.rs
@@ -83,11 +83,11 @@ endpoint is passed to the new task.
 
 */
 pub fn spawn_service<T:Owned,Tb:Owned>(
-            init: extern fn() -> (SendPacketBuffered<T, Tb>,
-                                  RecvPacketBuffered<T, Tb>),
+            init: extern fn() -> (RecvPacketBuffered<T, Tb>,
+                                  SendPacketBuffered<T, Tb>),
             service: ~fn(v: RecvPacketBuffered<T, Tb>))
         -> SendPacketBuffered<T, Tb> {
-    let (client, server) = init();
+    let (server, client) = init();
 
     // This is some nasty gymnastics required to safely move the pipe
     // into a new task.
@@ -104,11 +104,11 @@ receive state.
 
 */
 pub fn spawn_service_recv<T:Owned,Tb:Owned>(
-        init: extern fn() -> (RecvPacketBuffered<T, Tb>,
-                              SendPacketBuffered<T, Tb>),
+        init: extern fn() -> (SendPacketBuffered<T, Tb>,
+                              RecvPacketBuffered<T, Tb>),
         service: ~fn(v: SendPacketBuffered<T, Tb>))
         -> RecvPacketBuffered<T, Tb> {
-    let (client, server) = init();
+    let (server, client) = init();
 
     // This is some nasty gymnastics required to safely move the pipe
     // into a new task.
diff --git a/src/test/run-pass/issue-2834.rs b/src/test/run-pass/issue-2834.rs
index 579c4f9f1d1..5d3a2d2331c 100644
--- a/src/test/run-pass/issue-2834.rs
+++ b/src/test/run-pass/issue-2834.rs
@@ -18,7 +18,7 @@ proto! streamp (
 )
 
 fn rendezvous() {
-    let (c, s) = streamp::init();
+    let (s, c) = streamp::init();
     let streams: ~[streamp::client::open<int>] = ~[c];
 
     error!("%?", streams[0]);
diff --git a/src/test/run-pass/issue-2930.rs b/src/test/run-pass/issue-2930.rs
index 6d22a2ea5ed..cfce19826d7 100644
--- a/src/test/run-pass/issue-2930.rs
+++ b/src/test/run-pass/issue-2930.rs
@@ -15,7 +15,7 @@ proto! stream (
 )
 
 pub fn main() {
-    let (bc, _bp) = stream::init();
+    let (_bp, bc) = stream::init();
 
     stream::client::send(bc, ~"abc");
 }
diff --git a/src/test/run-pass/pipe-detect-term.rs b/src/test/run-pass/pipe-detect-term.rs
index ae846217318..a347fde422c 100644
--- a/src/test/run-pass/pipe-detect-term.rs
+++ b/src/test/run-pass/pipe-detect-term.rs
@@ -31,7 +31,7 @@ proto! oneshot (
 pub fn main() {
     let iotask = &uv::global_loop::get();
 
-    let (chan, port) = oneshot::init();
+    let (port, chan) = oneshot::init();
     let port = Cell(port);
     do spawn {
         match try_recv(port.take()) {
@@ -47,7 +47,7 @@ pub fn main() {
 
 // Make sure the right thing happens during failure.
 fn failtest() {
-    let (c, p) = oneshot::init();
+    let (p, c) = oneshot::init();
 
     do task::spawn_with(c) |_c| {
         fail!();
diff --git a/src/test/run-pass/pipe-peek.rs b/src/test/run-pass/pipe-peek.rs
index 149e81204f4..8d8c96c6f51 100644
--- a/src/test/run-pass/pipe-peek.rs
+++ b/src/test/run-pass/pipe-peek.rs
@@ -22,7 +22,7 @@ proto! oneshot (
 )
 
 pub fn main() {
-    let mut (c, p) = oneshot::init();
+    let mut (p, c) = oneshot::init();
 
     assert!(!pipes::peek(&mut p));
 
diff --git a/src/test/run-pass/pipe-pingpong-bounded.rs b/src/test/run-pass/pipe-pingpong-bounded.rs
index d36289f33c8..8a0589f55ea 100644
--- a/src/test/run-pass/pipe-pingpong-bounded.rs
+++ b/src/test/run-pass/pipe-pingpong-bounded.rs
@@ -30,7 +30,7 @@ mod pingpong {
         pong: Packet<pong>,
     }
 
-    pub fn init() -> (client::ping, server::ping) {
+    pub fn init() -> (server::ping, client::ping) {
         let buffer = ~Buffer {
             header: BufferHeader(),
             data: Packets {
@@ -112,7 +112,7 @@ mod test {
 }
 
 pub fn main() {
-    let (client_, server_) = ::pingpong::init();
+    let (server_, client_) = ::pingpong::init();
     let client_ = Cell(client_);
     let server_ = Cell(server_);
     do task::spawn {
diff --git a/src/test/run-pass/pipe-pingpong-proto.rs b/src/test/run-pass/pipe-pingpong-proto.rs
index 18cb4059307..c993dafa489 100644
--- a/src/test/run-pass/pipe-pingpong-proto.rs
+++ b/src/test/run-pass/pipe-pingpong-proto.rs
@@ -50,7 +50,7 @@ mod test {
 }
 
 pub fn main() {
-    let (client_, server_) = pingpong::init();
+    let (server_, client_) = pingpong::init();
     let client_ = Cell(client_);
     let server_ = Cell(server_);
 
diff --git a/src/test/run-pass/pipe-select.rs b/src/test/run-pass/pipe-select.rs
index 309092b14b5..8e28d3d12d9 100644
--- a/src/test/run-pass/pipe-select.rs
+++ b/src/test/run-pass/pipe-select.rs
@@ -35,11 +35,11 @@ proto! stream (
 )
 
 pub fn spawn_service<T:Owned,Tb:Owned>(
-            init: extern fn() -> (SendPacketBuffered<T, Tb>,
-                                  RecvPacketBuffered<T, Tb>),
+            init: extern fn() -> (RecvPacketBuffered<T, Tb>,
+                                  SendPacketBuffered<T, Tb>),
             service: ~fn(v: RecvPacketBuffered<T, Tb>))
         -> SendPacketBuffered<T, Tb> {
-    let (client, server) = init();
+    let (server, client) = init();
 
     // This is some nasty gymnastics required to safely move the pipe
     // into a new task.
@@ -83,8 +83,8 @@ pub fn main() {
         }
     });
 
-    let (c1, p1) = oneshot::init();
-    let (_c2, p2) = oneshot::init();
+    let (p1, c1) = oneshot::init();
+    let (p2, _c2) = oneshot::init();
 
     let c = send(c, (p1, p2));
 
@@ -92,8 +92,8 @@ pub fn main() {
 
     signal(c1);
 
-    let (_c1, p1) = oneshot::init();
-    let (c2, p2) = oneshot::init();
+    let (p1, _c1) = oneshot::init();
+    let (p2, c2) = oneshot::init();
 
     send(c, (p1, p2));
 
@@ -105,8 +105,8 @@ pub fn main() {
 }
 
 fn test_select2() {
-    let (ac, ap) = stream::init();
-    let (bc, bp) = stream::init();
+    let (ap, ac) = stream::init();
+    let (bp, bc) = stream::init();
 
     stream::client::send(ac, 42);
 
@@ -119,8 +119,8 @@ fn test_select2() {
 
     error!("done with first select2");
 
-    let (ac, ap) = stream::init();
-    let (bc, bp) = stream::init();
+    let (ap, ac) = stream::init();
+    let (bp, bc) = stream::init();
 
     stream::client::send(bc, ~"abc");
 
diff --git a/src/test/run-pass/pipe-sleep.rs b/src/test/run-pass/pipe-sleep.rs
index 97fefde6cff..a6a81229e28 100644
--- a/src/test/run-pass/pipe-sleep.rs
+++ b/src/test/run-pass/pipe-sleep.rs
@@ -34,11 +34,11 @@ endpoint is passed to the new task.
 
 */
 pub fn spawn_service<T:Owned,Tb:Owned>(
-            init: extern fn() -> (SendPacketBuffered<T, Tb>,
-                                  RecvPacketBuffered<T, Tb>),
+            init: extern fn() -> (RecvPacketBuffered<T, Tb>,
+                                  SendPacketBuffered<T, Tb>),
             service: ~fn(v: RecvPacketBuffered<T, Tb>))
         -> SendPacketBuffered<T, Tb> {
-    let (client, server) = init();
+    let (server, client) = init();
 
     // This is some nasty gymnastics required to safely move the pipe
     // into a new task.