about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/librustdoc/astsrv.rs1
-rw-r--r--src/librustdoc/markdown_pass.rs14
-rw-r--r--src/librustdoc/markdown_writer.rs10
-rw-r--r--src/librustdoc/util.rs1
4 files changed, 12 insertions, 14 deletions
diff --git a/src/librustdoc/astsrv.rs b/src/librustdoc/astsrv.rs
index a9c1630b654..09adc507a90 100644
--- a/src/librustdoc/astsrv.rs
+++ b/src/librustdoc/astsrv.rs
@@ -23,7 +23,6 @@ use parse;
 use util;
 
 use core::pipes::{stream, Chan, SharedChan, Port};
-use core::oldcomm;
 use core::vec;
 use core::ops::Drop;
 use rustc::back::link;
diff --git a/src/librustdoc/markdown_pass.rs b/src/librustdoc/markdown_pass.rs
index 32b7ded78dd..fc13af8a221 100644
--- a/src/librustdoc/markdown_pass.rs
+++ b/src/librustdoc/markdown_pass.rs
@@ -35,16 +35,17 @@ use trim_pass;
 use unindent_pass;
 
 use core::iter;
-use core::oldcomm;
 use core::str;
 use core::vec;
 use std::par;
+use std::cell::Cell;
 use syntax;
 
 pub fn mk_pass(writer_factory: WriterFactory) -> Pass {
+    let writer_factory = Cell(writer_factory);
     let f = fn~(move writer_factory,
                 srv: astsrv::Srv, doc: doc::Doc) -> doc::Doc {
-        run(srv, doc, copy writer_factory)
+        run(srv, doc, writer_factory.take())
     };
 
     Pass {
@@ -155,7 +156,7 @@ fn should_request_new_writer_for_each_page() {
     write_markdown(doc, move writer_factory);
     // We expect two pages to have been written
     for iter::repeat(2) {
-        oldcomm::recv(po);
+        po.recv();
     }
 }
 
@@ -186,7 +187,7 @@ fn should_write_title_for_each_page() {
     let doc = (page_pass::mk_pass(config::DocPerMod).f)(srv, doc);
     write_markdown(doc, move writer_factory);
     for iter::repeat(2) {
-        let (page, markdown) = oldcomm::recv(po);
+        let (page, markdown) = po.recv();
         match page {
           doc::CratePage(_) => {
             assert str::contains(markdown, ~"% Crate core");
@@ -848,7 +849,6 @@ mod test {
     use tystr_pass;
     use unindent_pass;
 
-    use core::oldcomm;
     use core::path::Path;
     use core::str;
 
@@ -900,7 +900,7 @@ mod test {
     ) -> ~str {
         let (writer_factory, po) = markdown_writer::future_writer_factory();
         write_markdown(doc, move writer_factory);
-        return oldcomm::recv(po).second();
+        return po.recv().second();
     }
 
     pub fn write_markdown_str_srv(
@@ -910,7 +910,7 @@ mod test {
         let (writer_factory, po) = markdown_writer::future_writer_factory();
         let pass = mk_pass(move writer_factory);
         (pass.f)(srv, doc);
-        return oldcomm::recv(po).second();
+        return po.recv().second();
     }
 
     #[test]
diff --git a/src/librustdoc/markdown_writer.rs b/src/librustdoc/markdown_writer.rs
index 17d7774c7f5..986194d961d 100644
--- a/src/librustdoc/markdown_writer.rs
+++ b/src/librustdoc/markdown_writer.rs
@@ -19,7 +19,6 @@ use pass::Pass;
 use core::io::ReaderUtil;
 use core::io;
 use core::libc;
-use core::oldcomm;
 use core::os;
 use core::pipes;
 use core::result;
@@ -293,16 +292,17 @@ fn write_file(path: &Path, s: ~str) {
 }
 
 pub fn future_writer_factory(
-) -> (WriterFactory, oldcomm::Port<(doc::Page, ~str)>) {
-    let markdown_po = oldcomm::Port();
-    let markdown_ch = oldcomm::Chan(&markdown_po);
+) -> (WriterFactory, Port<(doc::Page, ~str)>) {
+    let (markdown_po, markdown_ch) = stream();
+    let markdown_ch = SharedChan(markdown_ch);
     let writer_factory = fn~(page: doc::Page) -> Writer {
         let (writer_po, writer_ch) = pipes::stream();
+        let markdown_ch = markdown_ch.clone();
         do task::spawn |move writer_ch| {
             let (writer, future) = future_writer();
             writer_ch.send(move writer);
             let s = future.get();
-            oldcomm::send(markdown_ch, (copy page, s));
+            markdown_ch.send((copy page, s));
         }
         writer_po.recv()
     };
diff --git a/src/librustdoc/util.rs b/src/librustdoc/util.rs
index 37f373504e6..aa15c104540 100644
--- a/src/librustdoc/util.rs
+++ b/src/librustdoc/util.rs
@@ -10,7 +10,6 @@
 
 use core::prelude::*;
 
-use core::oldcomm;
 use core::task;
 
 // Just a named container for our op, so it can have impls