]> git.lizzy.rs Git - rust.git/commitdiff
Fix RustDoc bug
authorNick Cameron <ncameron@mozilla.com>
Fri, 31 Oct 2014 02:00:35 +0000 (15:00 +1300)
committerNick Cameron <ncameron@mozilla.com>
Fri, 31 Oct 2014 22:05:12 +0000 (11:05 +1300)
src/librustdoc/clean/inline.rs
src/librustdoc/clean/mod.rs

index 967e1fbb70021eb885abf9887f12127d609b4318..d87d8776d4a6cecb27236f3b858b09789d0013ee 100644 (file)
@@ -73,10 +73,10 @@ fn try_inline_def(cx: &DocContext, tcx: &ty::ctxt,
             record_extern_fqn(cx, did, clean::TypeTrait);
             clean::TraitItem(build_external_trait(cx, tcx, did))
         }
-        def::DefFn(did, style, false) => {
+        def::DefFn(did, false) => {
             // If this function is a tuple struct constructor, we just skip it
             record_extern_fqn(cx, did, clean::TypeFunction);
-            clean::FunctionItem(build_external_function(cx, tcx, did, style))
+            clean::FunctionItem(build_external_function(cx, tcx, did))
         }
         def::DefStruct(did) => {
             record_extern_fqn(cx, did, clean::TypeStruct);
@@ -167,15 +167,14 @@ pub fn build_external_trait(cx: &DocContext, tcx: &ty::ctxt,
     }
 }
 
-fn build_external_function(cx: &DocContext, tcx: &ty::ctxt,
-                           did: ast::DefId,
-                           style: ast::FnStyle) -> clean::Function {
+fn build_external_function(cx: &DocContext, tcx: &ty::ctxt, did: ast::DefId) -> clean::Function {
     let t = ty::lookup_item_type(tcx, did);
+    let (decl, style) = match ty::get(t.ty).sty {
+        ty::ty_bare_fn(ref f) => ((did, &f.sig).clean(cx), f.fn_style),
+        _ => panic!("bad function"),
+    };
     clean::Function {
-        decl: match ty::get(t.ty).sty {
-            ty::ty_bare_fn(ref f) => (did, &f.sig).clean(cx),
-            _ => panic!("bad function"),
-        },
+        decl: decl,
         generics: (&t.generics, subst::FnSpace).clean(cx),
         fn_style: style,
     }
index 7c8f4ba8f65c7bb5f345142e4b0947cba142835a..c128588918e28183a150caa7fbf84d8e82edc9b8 100644 (file)
@@ -2124,7 +2124,7 @@ fn resolve_type(cx: &DocContext, path: Path,
 
 fn register_def(cx: &DocContext, def: def::Def) -> ast::DefId {
     let (did, kind) = match def {
-        def::DefFn(i, _, _) => (i, TypeFunction),
+        def::DefFn(i, _) => (i, TypeFunction),
         def::DefTy(i, false) => (i, TypeTypedef),
         def::DefTy(i, true) => (i, TypeEnum),
         def::DefTrait(i) => (i, TypeTrait),