about summary refs log tree commit diff
path: root/src/rustdoc
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2012-01-19 19:14:12 -0800
committerBrian Anderson <banderson@mozilla.com>2012-01-19 19:14:29 -0800
commitfdbe206a763516eeb816a5d1c137c87801556479 (patch)
treef0eb02a0c53b779a40123dfccf5269e6d90d8b0b /src/rustdoc
parent6222e98dda4bd3abfe2fdf447535111bfda4d518 (diff)
downloadrust-fdbe206a763516eeb816a5d1c137c87801556479.tar.gz
rust-fdbe206a763516eeb816a5d1c137c87801556479.zip
rustdoc: Make doc::retdoc non-optional
Diffstat (limited to 'src/rustdoc')
-rw-r--r--src/rustdoc/attr_pass.rs20
-rw-r--r--src/rustdoc/doc.rs2
-rw-r--r--src/rustdoc/extract.rs5
-rw-r--r--src/rustdoc/gen.rs23
-rw-r--r--src/rustdoc/prune_undoc_pass.rs2
-rw-r--r--src/rustdoc/tystr_pass.rs27
6 files changed, 31 insertions, 48 deletions
diff --git a/src/rustdoc/attr_pass.rs b/src/rustdoc/attr_pass.rs
index 6d4cabba0d4..4c945a7869f 100644
--- a/src/rustdoc/attr_pass.rs
+++ b/src/rustdoc/attr_pass.rs
@@ -158,20 +158,12 @@ fn fold_fn(
     }
 
     fn merge_ret_attrs(
-        doc: option<doc::retdoc>,
+        doc: doc::retdoc,
         attrs: option<str>
-    ) -> option<doc::retdoc> {
-        alt doc {
-          some(doc) {
-            some({
-                desc: attrs
-                with doc
-            })
-          }
-          none {
-            // FIXME: Warning about documenting nil?
-            none
-          }
+    ) -> doc::retdoc {
+        {
+            desc: attrs
+            with doc
         }
     }
 }
@@ -204,7 +196,7 @@ fn fold_fn_should_extract_return_attributes() {
     let doc = tystr_pass::mk_pass()(srv, doc);
     let fold = fold::default_seq_fold(srv);
     let doc = fold_fn(fold, doc.topmod.fns[0]);
-    assert option::get(doc.return).desc == some("what");
+    assert doc.return.desc == some("what");
 }
 
 #[test]
diff --git a/src/rustdoc/doc.rs b/src/rustdoc/doc.rs
index 4a3101bc716..7ccd50b9649 100644
--- a/src/rustdoc/doc.rs
+++ b/src/rustdoc/doc.rs
@@ -22,7 +22,7 @@ type fndoc = ~{
     brief: option<str>,
     desc: option<str>,
     args: [argdoc],
-    return: option<retdoc>,
+    return: retdoc,
     sig: option<str>
 };
 
diff --git a/src/rustdoc/extract.rs b/src/rustdoc/extract.rs
index ce6d7bdcbb4..9ce5bfed4fe 100644
--- a/src/rustdoc/extract.rs
+++ b/src/rustdoc/extract.rs
@@ -80,7 +80,10 @@ fn fndoc_from_fn(
         brief: none,
         desc: none,
         args: argdocs_from_args(decl.inputs),
-        return: none,
+        return: {
+            desc: none,
+            ty: none
+        },
         sig: none
     }
 }
diff --git a/src/rustdoc/gen.rs b/src/rustdoc/gen.rs
index b365de6e6f5..a355bea9934 100644
--- a/src/rustdoc/gen.rs
+++ b/src/rustdoc/gen.rs
@@ -222,23 +222,18 @@ fn should_write_argument_description() {
 
 fn write_return(
     ctxt: ctxt,
-    return: option<doc::retdoc>
+    doc: doc::retdoc
 ) {
-    alt return {
-      some(doc) {
-        alt doc.ty {
-          some(ty) {
-            ctxt.w.write_line(#fmt("Returns `%s`", ty));
+    alt doc.ty {
+      some(ty) {
+        ctxt.w.write_line(#fmt("Returns `%s`", ty));
+        ctxt.w.write_line("");
+        alt doc.desc {
+          some(d) {
+            ctxt.w.write_line(d);
             ctxt.w.write_line("");
-            alt doc.desc {
-              some(d) {
-                ctxt.w.write_line(d);
-                ctxt.w.write_line("");
-              }
-              none { }
-            }
           }
-          none { fail "unimplemented"; }
+          none { }
         }
       }
       none { }
diff --git a/src/rustdoc/prune_undoc_pass.rs b/src/rustdoc/prune_undoc_pass.rs
index 5bc8696b08a..ba8a5456a27 100644
--- a/src/rustdoc/prune_undoc_pass.rs
+++ b/src/rustdoc/prune_undoc_pass.rs
@@ -32,7 +32,7 @@ fn fold_fn(
     fold.ctxt.have_docs =
         doc.brief != none
         || doc.desc != none
-        || doc.return != none;
+        || doc.return.desc != none;
     ret doc;
 }
 
diff --git a/src/rustdoc/tystr_pass.rs b/src/rustdoc/tystr_pass.rs
index d8c6c675e3a..26dcaabe816 100644
--- a/src/rustdoc/tystr_pass.rs
+++ b/src/rustdoc/tystr_pass.rs
@@ -62,23 +62,16 @@ fn should_add_fn_sig() {
 fn merge_ret_ty(
     srv: astsrv::srv,
     fn_id: doc::ast_id,
-    doc: option<doc::retdoc>
-) -> option<doc::retdoc> {
-    alt doc {
-      some(doc) {
-        fail "unimplemented";
-      }
-      none {
-        alt get_ret_ty(srv, fn_id) {
-          some(ty) {
-            some({
-                desc: none,
-                ty: some(ty)
-            })
-          }
-          none { none }
+    doc: doc::retdoc
+) -> doc::retdoc {
+    alt get_ret_ty(srv, fn_id) {
+      some(ty) {
+        {
+            ty: some(ty)
+            with doc
         }
       }
+      none { doc }
     }
 }
 
@@ -105,7 +98,7 @@ fn should_add_fn_ret_types() {
     let srv = astsrv::mk_srv_from_str(source);
     let doc = extract::from_srv(srv, "");
     let doc = run(srv, doc);
-    assert option::get(doc.topmod.fns[0].return).ty == some("int");
+    assert doc.topmod.fns[0].return.ty == some("int");
 }
 
 #[test]
@@ -114,7 +107,7 @@ fn should_not_add_nil_ret_type() {
     let srv = astsrv::mk_srv_from_str(source);
     let doc = extract::from_srv(srv, "");
     let doc = run(srv, doc);
-    assert doc.topmod.fns[0].return == none;
+    assert doc.topmod.fns[0].return.ty == none;
 }
 
 fn merge_arg_tys(