about summary refs log tree commit diff
path: root/src/libsyntax
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 /src/libsyntax
parent14c331053ea9d2661cfd9c81351f4b3815cf5e3d (diff)
parentecd08b989ae006660929bce6b719d9f7bc34a7fe (diff)
downloadrust-c354a0c7eb22f7a4bc1c7adf8e2ed34ee96428aa.tar.gz
rust-c354a0c7eb22f7a4bc1c7adf8e2ed34ee96428aa.zip
auto merge of #6896 : nickdesaulniers/rust/issue4501, r=brson
review? @brson
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/ext/pipes/pipec.rs31
1 files changed, 7 insertions, 24 deletions
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),