diff --git a/src/rustdoc/attr_pass.rs b/src/rustdoc/attr_pass.rs index 5c8949dc7b9..f93db2e397a 100644 --- a/src/rustdoc/attr_pass.rs +++ b/src/rustdoc/attr_pass.rs @@ -49,7 +49,10 @@ fn fold_crate( { topmod: { - name: option::from_maybe(doc.topmod.name, attrs.name) + item: { + name: option::from_maybe(doc.topmod.name(), attrs.name) + with doc.topmod.item + } with doc.topmod } } @@ -58,7 +61,7 @@ fn fold_crate( #[test] fn should_replace_top_module_name_with_crate_name() { let doc = test::mk_doc("#[link(name = \"bond\")];"); - assert doc.topmod.name == "bond"; + assert doc.topmod.name() == "bond"; } fn parse_item_attrs( @@ -78,13 +81,13 @@ fn parse_item_attrs( fn fold_mod(fold: fold::fold, doc: doc::moddoc) -> doc::moddoc { let srv = fold.ctxt; - let attrs = if doc.id == ast::crate_node_id { + let attrs = if doc.id() == ast::crate_node_id { // This is the top-level mod, use the crate attributes astsrv::exec(srv) {|ctxt| attr_parser::parse_mod(ctxt.ast.node.attrs) } } else { - parse_item_attrs(srv, doc.id, attr_parser::parse_mod) + parse_item_attrs(srv, doc.id(), attr_parser::parse_mod) }; let doc = fold::default_seq_fold_mod(fold, doc); ret merge_mod_attrs(doc, attrs); @@ -94,8 +97,11 @@ fn fold_mod(fold: fold::fold, doc: doc::moddoc) -> doc::moddoc { attrs: attr_parser::mod_attrs ) -> doc::moddoc { { - brief: attrs.brief, - desc: attrs.desc + item: { + brief: attrs.brief, + desc: attrs.desc + with doc.item + } with doc } } @@ -104,13 +110,13 @@ fn fold_mod(fold: fold::fold, doc: doc::moddoc) -> doc::moddoc { #[test] fn fold_mod_should_extract_mod_attributes() { let doc = test::mk_doc("#[doc = \"test\"] mod a { }"); - assert doc.topmod.mods()[0].desc == some("test"); + assert doc.topmod.mods()[0].desc() == some("test"); } #[test] fn fold_mod_should_extract_top_mod_attributes() { let doc = test::mk_doc("#[doc = \"test\"];"); - assert doc.topmod.desc == some("test"); + assert doc.topmod.desc() == some("test"); } fn fold_fn( @@ -120,7 +126,7 @@ fn fold_fn( let srv = fold.ctxt; - let attrs = parse_item_attrs(srv, doc.id, attr_parser::parse_fn); + let attrs = parse_item_attrs(srv, doc.id(), attr_parser::parse_fn); ret merge_fn_attrs(doc, attrs); fn merge_fn_attrs( @@ -128,8 +134,11 @@ fn fold_fn( attrs: attr_parser::fn_attrs ) -> doc::fndoc { ret { - brief: attrs.brief, - desc: attrs.desc, + item: { + brief: attrs.brief, + desc: attrs.desc + with doc.item + }, args: merge_arg_attrs(doc.args, attrs.args), return: merge_ret_attrs(doc.return, attrs.return), failure: attrs.failure @@ -172,7 +181,7 @@ fn merge_ret_attrs( #[test] fn fold_fn_should_extract_fn_attributes() { let doc = test::mk_doc("#[doc = \"test\"] fn a() -> int { }"); - assert doc.topmod.fns()[0].desc == some("test"); + assert doc.topmod.fns()[0].desc() == some("test"); } #[test] @@ -214,11 +223,14 @@ fn fold_const( doc: doc::constdoc ) -> doc::constdoc { let srv = fold.ctxt; - let attrs = parse_item_attrs(srv, doc.id, attr_parser::parse_const); + let attrs = parse_item_attrs(srv, doc.id(), attr_parser::parse_const); { - brief: attrs.brief, - desc: attrs.desc + item: { + brief: attrs.brief, + desc: attrs.desc + with doc.item + } with doc } } @@ -227,8 +239,8 @@ fn fold_const( fn fold_const_should_extract_docs() { let doc = test::mk_doc("#[doc(brief = \"foo\", desc = \"bar\")]\ const a: bool = true;"); - assert doc.topmod.consts()[0].brief == some("foo"); - assert doc.topmod.consts()[0].desc == some("bar"); + assert doc.topmod.consts()[0].brief() == some("foo"); + assert doc.topmod.consts()[0].desc() == some("bar"); } fn fold_enum( @@ -236,14 +248,17 @@ fn fold_enum( doc: doc::enumdoc ) -> doc::enumdoc { let srv = fold.ctxt; - let attrs = parse_item_attrs(srv, doc.id, attr_parser::parse_enum); + let attrs = parse_item_attrs(srv, doc.id(), attr_parser::parse_enum); { - brief: attrs.brief, - desc: attrs.desc, + item: { + brief: attrs.brief, + desc: attrs.desc + with doc.item + }, variants: vec::map(doc.variants) {|variant| let attrs = astsrv::exec(srv) {|ctxt| - alt check ctxt.ast_map.get(doc.id) { + alt check ctxt.ast_map.get(doc.id()) { ast_map::node_item(@{ node: ast::item_enum(ast_variants, _), _ }, _) { @@ -270,8 +285,8 @@ fn fold_enum( fn fold_enum_should_extract_docs() { let doc = test::mk_doc("#[doc(brief = \"a\", desc = \"b\")]\ enum a { v }"); - assert doc.topmod.enums()[0].brief == some("a"); - assert doc.topmod.enums()[0].desc == some("b"); + assert doc.topmod.enums()[0].brief() == some("a"); + assert doc.topmod.enums()[0].desc() == some("b"); } #[test] @@ -286,11 +301,14 @@ fn fold_res( ) -> doc::resdoc { let srv = fold.ctxt; - let attrs = parse_item_attrs(srv, doc.id, attr_parser::parse_fn); + let attrs = parse_item_attrs(srv, doc.id(), attr_parser::parse_fn); { - brief: attrs.brief, - desc: attrs.desc, + item: { + brief: attrs.brief, + desc: attrs.desc + with doc.item + }, args: vec::map(doc.args) {|doc| alt vec::find(attrs.args) {|attr| attr.name == doc.name @@ -312,8 +330,8 @@ fn fold_res( fn fold_res_should_extract_docs() { let doc = test::mk_doc("#[doc(brief = \"a\", desc = \"b\")]\ resource r(b: bool) { }"); - assert doc.topmod.resources()[0].brief == some("a"); - assert doc.topmod.resources()[0].desc == some("b"); + assert doc.topmod.resources()[0].brief() == some("a"); + assert doc.topmod.resources()[0].desc() == some("b"); } #[test] @@ -330,12 +348,15 @@ fn fold_iface( ) -> doc::ifacedoc { let srv = fold.ctxt; let doc = fold::default_seq_fold_iface(fold, doc); - let attrs = parse_item_attrs(srv, doc.id, attr_parser::parse_iface); + let attrs = parse_item_attrs(srv, doc.id(), attr_parser::parse_iface); { - brief: attrs.brief, - desc: attrs.desc, - methods: merge_method_attrs(srv, doc.id, doc.methods) + item: { + brief: attrs.brief, + desc: attrs.desc + with doc.item + }, + methods: merge_method_attrs(srv, doc.id(), doc.methods) with doc } } @@ -384,7 +405,7 @@ fn merge_method_attrs( #[test] fn should_extract_iface_docs() { let doc = test::mk_doc("#[doc = \"whatever\"] iface i { fn a(); }"); - assert doc.topmod.ifaces()[0].desc == some("whatever"); + assert doc.topmod.ifaces()[0].desc() == some("whatever"); } #[test] @@ -413,12 +434,15 @@ fn fold_impl( ) -> doc::impldoc { let srv = fold.ctxt; let doc = fold::default_seq_fold_impl(fold, doc); - let attrs = parse_item_attrs(srv, doc.id, attr_parser::parse_impl); + let attrs = parse_item_attrs(srv, doc.id(), attr_parser::parse_impl); { - brief: attrs.brief, - desc: attrs.desc, - methods: merge_method_attrs(srv, doc.id, doc.methods) + item: { + brief: attrs.brief, + desc: attrs.desc + with doc.item + }, + methods: merge_method_attrs(srv, doc.id(), doc.methods) with doc } } @@ -427,7 +451,7 @@ fn fold_impl( fn should_extract_impl_docs() { let doc = test::mk_doc( "#[doc = \"whatever\"] impl i for int { fn a() { } }"); - assert doc.topmod.impls()[0].desc == some("whatever"); + assert doc.topmod.impls()[0].desc() == some("whatever"); } #[test] @@ -455,11 +479,14 @@ fn fold_type( ) -> doc::tydoc { let srv = fold.ctxt; let doc = fold::default_seq_fold_type(fold, doc); - let attrs = parse_item_attrs(srv, doc.id, attr_parser::parse_type); + let attrs = parse_item_attrs(srv, doc.id(), attr_parser::parse_type); { - brief: attrs.brief, - desc: attrs.desc + item: { + brief: attrs.brief, + desc: attrs.desc + with doc.item + } with doc } } @@ -469,8 +496,8 @@ fn should_extract_type_docs() { let doc = test::mk_doc( "#[doc(brief = \"brief\", desc = \"desc\")]\ type t = int;"); - assert doc.topmod.types()[0].brief == some("brief"); - assert doc.topmod.types()[0].desc == some("desc"); + assert doc.topmod.types()[0].brief() == some("brief"); + assert doc.topmod.types()[0].desc() == some("desc"); } #[cfg(test)] diff --git a/src/rustdoc/desc_pass.rs b/src/rustdoc/desc_pass.rs index c7a204f53c5..c8ae4476e94 100644 --- a/src/rustdoc/desc_pass.rs +++ b/src/rustdoc/desc_pass.rs @@ -37,8 +37,11 @@ fn fold_mod(fold: fold::fold, doc: doc::moddoc) -> doc::moddoc { let doc = fold::default_seq_fold_mod(fold, doc); { - brief: maybe_apply_op(fold.ctxt, doc.brief), - desc: maybe_apply_op(fold.ctxt, doc.desc) + item: { + brief: maybe_apply_op(fold.ctxt, doc.brief()), + desc: maybe_apply_op(fold.ctxt, doc.desc()) + with doc.item + } with doc } } @@ -47,8 +50,11 @@ fn fold_const(fold: fold::fold, doc: doc::constdoc) -> doc::constdoc { let doc = fold::default_seq_fold_const(fold, doc); { - brief: maybe_apply_op(fold.ctxt, doc.brief), - desc: maybe_apply_op(fold.ctxt, doc.desc) + item: { + brief: maybe_apply_op(fold.ctxt, doc.brief()), + desc: maybe_apply_op(fold.ctxt, doc.desc()) + with doc.item + } with doc } } @@ -57,8 +63,11 @@ fn fold_fn(fold: fold::fold, doc: doc::fndoc) -> doc::fndoc { let doc = fold::default_seq_fold_fn(fold, doc); { - brief: maybe_apply_op(fold.ctxt, doc.brief), - desc: maybe_apply_op(fold.ctxt, doc.desc), + item: { + brief: maybe_apply_op(fold.ctxt, doc.brief()), + desc: maybe_apply_op(fold.ctxt, doc.desc()) + with doc.item + }, args: vec::map(doc.args) {|doc| { desc: maybe_apply_op(fold.ctxt, doc.desc) @@ -76,8 +85,11 @@ fn fold_fn(fold: fold::fold, doc: doc::fndoc) -> doc::fndoc { fn fold_enum(fold: fold::fold, doc: doc::enumdoc) -> doc::enumdoc { { - brief: maybe_apply_op(fold.ctxt, doc.brief), - desc: maybe_apply_op(fold.ctxt, doc.desc), + item: { + brief: maybe_apply_op(fold.ctxt, doc.brief()), + desc: maybe_apply_op(fold.ctxt, doc.desc()) + with doc.item + }, variants: vec::map(doc.variants) {|variant| { desc: maybe_apply_op(fold.ctxt, variant.desc) @@ -90,8 +102,11 @@ fn fold_enum(fold: fold::fold, doc: doc::enumdoc) -> doc::enumdoc { fn fold_res(fold: fold::fold, doc: doc::resdoc) -> doc::resdoc { { - brief: maybe_apply_op(fold.ctxt, doc.brief), - desc: maybe_apply_op(fold.ctxt, doc.desc), + item: { + brief: maybe_apply_op(fold.ctxt, doc.brief()), + desc: maybe_apply_op(fold.ctxt, doc.desc()) + with doc.item + }, args: vec::map(doc.args) {|arg| { desc: maybe_apply_op(fold.ctxt, arg.desc) @@ -104,8 +119,11 @@ fn fold_res(fold: fold::fold, doc: doc::resdoc) -> doc::resdoc { fn fold_iface(fold: fold::fold, doc: doc::ifacedoc) -> doc::ifacedoc { { - brief: maybe_apply_op(fold.ctxt, doc.brief), - desc: maybe_apply_op(fold.ctxt, doc.desc), + item: { + brief: maybe_apply_op(fold.ctxt, doc.brief()), + desc: maybe_apply_op(fold.ctxt, doc.desc()) + with doc.item + }, methods: apply_to_methods(fold.ctxt, doc.methods) with doc } @@ -134,8 +152,11 @@ fn apply_to_methods(op: op, docs: [doc::methoddoc]) -> [doc::methoddoc] { fn fold_impl(fold: fold::fold, doc: doc::impldoc) -> doc::impldoc { { - brief: maybe_apply_op(fold.ctxt, doc.brief), - desc: maybe_apply_op(fold.ctxt, doc.desc), + item: { + brief: maybe_apply_op(fold.ctxt, doc.brief()), + desc: maybe_apply_op(fold.ctxt, doc.desc()) + with doc.item + }, methods: apply_to_methods(fold.ctxt, doc.methods) with doc } @@ -143,8 +164,11 @@ fn fold_impl(fold: fold::fold, doc: doc::impldoc) -> doc::impldoc { fn fold_type(fold: fold::fold, doc: doc::tydoc) -> doc::tydoc { { - brief: maybe_apply_op(fold.ctxt, doc.brief), - desc: maybe_apply_op(fold.ctxt, doc.desc) + item: { + brief: maybe_apply_op(fold.ctxt, doc.brief()), + desc: maybe_apply_op(fold.ctxt, doc.desc()) + with doc.item + } with doc } } @@ -152,13 +176,13 @@ fn fold_type(fold: fold::fold, doc: doc::tydoc) -> doc::tydoc { #[test] fn should_execute_op_on_enum_brief() { let doc = test::mk_doc("#[doc(brief = \" a \")] enum a { b }"); - assert doc.topmod.enums()[0].brief == some("a"); + assert doc.topmod.enums()[0].brief() == some("a"); } #[test] fn should_execute_op_on_enum_desc() { let doc = test::mk_doc("#[doc(desc = \" a \")] enum a { b }"); - assert doc.topmod.enums()[0].desc == some("a"); + assert doc.topmod.enums()[0].desc() == some("a"); } #[test] @@ -170,13 +194,13 @@ fn should_execute_op_on_variant_desc() { #[test] fn should_execute_op_on_resource_brief() { let doc = test::mk_doc("#[doc(brief = \" a \")] resource r(a: bool) { }"); - assert doc.topmod.resources()[0].brief == some("a"); + assert doc.topmod.resources()[0].brief() == some("a"); } #[test] fn should_execute_op_on_resource_desc() { let doc = test::mk_doc("#[doc(desc = \" a \")] resource r(a: bool) { }"); - assert doc.topmod.resources()[0].desc == some("a"); + assert doc.topmod.resources()[0].desc() == some("a"); } #[test] @@ -190,14 +214,14 @@ fn should_execute_op_on_resource_args() { fn should_execute_op_on_iface_brief() { let doc = test::mk_doc( "#[doc(brief = \" a \")] iface i { fn a(); }"); - assert doc.topmod.ifaces()[0].brief == some("a"); + assert doc.topmod.ifaces()[0].brief() == some("a"); } #[test] fn should_execute_op_on_iface_desc() { let doc = test::mk_doc( "#[doc(desc = \" a \")] iface i { fn a(); }"); - assert doc.topmod.ifaces()[0].desc == some("a"); + assert doc.topmod.ifaces()[0].desc() == some("a"); } #[test] @@ -238,14 +262,14 @@ fn should_execute_op_on_iface_method_failure_condition() { fn should_execute_op_on_impl_brief() { let doc = test::mk_doc( "#[doc(brief = \" a \")] impl i for int { fn a() { } }"); - assert doc.topmod.impls()[0].brief == some("a"); + assert doc.topmod.impls()[0].brief() == some("a"); } #[test] fn should_execute_op_on_impl_desc() { let doc = test::mk_doc( "#[doc(desc = \" a \")] impl i for int { fn a() { } }"); - assert doc.topmod.impls()[0].desc == some("a"); + assert doc.topmod.impls()[0].desc() == some("a"); } #[test] @@ -288,14 +312,14 @@ fn should_execute_op_on_impl_method_failure_condition() { fn should_execute_op_on_type_brief() { let doc = test::mk_doc( "#[doc(brief = \" a \")] type t = int;"); - assert doc.topmod.types()[0].brief == some("a"); + assert doc.topmod.types()[0].brief() == some("a"); } #[test] fn should_execute_op_on_type_desc() { let doc = test::mk_doc( "#[doc(desc = \" a \")] type t = int;"); - assert doc.topmod.types()[0].desc == some("a"); + assert doc.topmod.types()[0].desc() == some("a"); } #[cfg(test)] diff --git a/src/rustdoc/desc_to_brief_pass.rs b/src/rustdoc/desc_to_brief_pass.rs index 4be1b43d50e..3a8dd7b51f6 100644 --- a/src/rustdoc/desc_to_brief_pass.rs +++ b/src/rustdoc/desc_to_brief_pass.rs @@ -33,66 +33,84 @@ fn run( fn fold_mod(fold: fold::fold<()>, doc: doc::moddoc) -> doc::moddoc { let doc = fold::default_seq_fold_mod(fold, doc); - let (brief, desc) = modify(doc.brief, doc.desc); + let (brief, desc) = modify(doc.brief(), doc.desc()); { - brief: brief, - desc: desc + item: { + brief: brief, + desc: desc + with doc.item + } with doc } } fn fold_const(fold: fold::fold<()>, doc: doc::constdoc) -> doc::constdoc { let doc = fold::default_seq_fold_const(fold, doc); - let (brief, desc) = modify(doc.brief, doc.desc); + let (brief, desc) = modify(doc.brief(), doc.desc()); { - brief: brief, - desc: desc + item: { + brief: brief, + desc: desc + with doc.item + } with doc } } fn fold_fn(fold: fold::fold<()>, doc: doc::fndoc) -> doc::fndoc { let doc = fold::default_seq_fold_fn(fold, doc); - let (brief, desc) = modify(doc.brief, doc.desc); + let (brief, desc) = modify(doc.brief(), doc.desc()); { - brief: brief, - desc: desc + item: { + brief: brief, + desc: desc + with doc.item + } with doc } } fn fold_enum(fold: fold::fold<()>, doc: doc::enumdoc) -> doc::enumdoc { let doc = fold::default_seq_fold_enum(fold, doc); - let (brief, desc) = modify(doc.brief, doc.desc); + let (brief, desc) = modify(doc.brief(), doc.desc()); { - brief: brief, - desc: desc + item: { + brief: brief, + desc: desc + with doc.item + } with doc } } fn fold_res(fold: fold::fold<()>, doc: doc::resdoc) -> doc::resdoc { let doc = fold::default_seq_fold_res(fold, doc); - let (brief, desc) = modify(doc.brief, doc.desc); + let (brief, desc) = modify(doc.brief(), doc.desc()); { - brief: brief, - desc: desc + item: { + brief: brief, + desc: desc + with doc.item + } with doc } } fn fold_iface(fold: fold::fold<()>, doc: doc::ifacedoc) -> doc::ifacedoc { let doc =fold::default_seq_fold_iface(fold, doc); - let (brief, desc) = modify(doc.brief, doc.desc); + let (brief, desc) = modify(doc.brief(), doc.desc()); { - brief: brief, - desc: desc, + item: { + brief: brief, + desc: desc + with doc.item + }, methods: vec::map(doc.methods) {|doc| let (brief, desc) = modify(doc.brief, doc.desc); @@ -108,11 +126,14 @@ fn fold_iface(fold: fold::fold<()>, doc: doc::ifacedoc) -> doc::ifacedoc { fn fold_impl(fold: fold::fold<()>, doc: doc::impldoc) -> doc::impldoc { let doc =fold::default_seq_fold_impl(fold, doc); - let (brief, desc) = modify(doc.brief, doc.desc); + let (brief, desc) = modify(doc.brief(), doc.desc()); { - brief: brief, - desc: desc, + item: { + brief: brief, + desc: desc + with doc.item + }, methods: vec::map(doc.methods) {|doc| let (brief, desc) = modify(doc.brief, doc.desc); @@ -128,11 +149,14 @@ fn fold_impl(fold: fold::fold<()>, doc: doc::impldoc) -> doc::impldoc { fn fold_type(fold: fold::fold<()>, doc: doc::tydoc) -> doc::tydoc { let doc = fold::default_seq_fold_type(fold, doc); - let (brief, desc) = modify(doc.brief, doc.desc); + let (brief, desc) = modify(doc.brief(), doc.desc()); { - brief: brief, - desc: desc + item: { + brief: brief, + desc: desc + with doc.item + } with doc } } @@ -140,44 +164,44 @@ fn fold_type(fold: fold::fold<()>, doc: doc::tydoc) -> doc::tydoc { #[test] fn should_promote_mod_desc() { let doc = test::mk_doc("#[doc(desc = \"desc\")] mod m { }"); - assert doc.topmod.mods()[0].brief == some("desc"); - assert doc.topmod.mods()[0].desc == none; + assert doc.topmod.mods()[0].brief() == some("desc"); + assert doc.topmod.mods()[0].desc() == none; } #[test] fn should_promote_const_desc() { let doc = test::mk_doc("#[doc(desc = \"desc\")] const a: bool = true;"); - assert doc.topmod.consts()[0].brief == some("desc"); - assert doc.topmod.consts()[0].desc == none; + assert doc.topmod.consts()[0].brief() == some("desc"); + assert doc.topmod.consts()[0].desc() == none; } #[test] fn should_promote_fn_desc() { let doc = test::mk_doc("#[doc(desc = \"desc\")] fn a() { }"); - assert doc.topmod.fns()[0].brief == some("desc"); - assert doc.topmod.fns()[0].desc == none; + assert doc.topmod.fns()[0].brief() == some("desc"); + assert doc.topmod.fns()[0].desc() == none; } #[test] fn should_promote_enum_desc() { let doc = test::mk_doc("#[doc(desc = \"desc\")] enum a { b }"); - assert doc.topmod.enums()[0].brief == some("desc"); - assert doc.topmod.enums()[0].desc == none; + assert doc.topmod.enums()[0].brief() == some("desc"); + assert doc.topmod.enums()[0].desc() == none; } #[test] fn should_promote_resource_desc() { let doc = test::mk_doc( "#[doc(desc = \"desc\")] resource r(a: bool) { }"); - assert doc.topmod.resources()[0].brief == some("desc"); - assert doc.topmod.resources()[0].desc == none; + assert doc.topmod.resources()[0].brief() == some("desc"); + assert doc.topmod.resources()[0].desc() == none; } #[test] fn should_promote_iface_desc() { let doc = test::mk_doc("#[doc(desc = \"desc\")] iface i { fn a(); }"); - assert doc.topmod.ifaces()[0].brief == some("desc"); - assert doc.topmod.ifaces()[0].desc == none; + assert doc.topmod.ifaces()[0].brief() == some("desc"); + assert doc.topmod.ifaces()[0].desc() == none; } #[test] @@ -191,8 +215,8 @@ fn should_promote_iface_method_desc() { fn should_promote_impl_desc() { let doc = test::mk_doc( "#[doc(desc = \"desc\")] impl i for int { fn a() { } }"); - assert doc.topmod.impls()[0].brief == some("desc"); - assert doc.topmod.impls()[0].desc == none; + assert doc.topmod.impls()[0].brief() == some("desc"); + assert doc.topmod.impls()[0].desc() == none; } #[test] @@ -206,8 +230,8 @@ fn should_promote_impl_method_desc() { #[test] fn should_promote_type_desc() { let doc = test::mk_doc("#[doc(desc = \"desc\")] type t = int;"); - assert doc.topmod.types()[0].brief == some("desc"); - assert doc.topmod.types()[0].desc == none; + assert doc.topmod.types()[0].brief() == some("desc"); + assert doc.topmod.types()[0].desc() == none; } #[cfg(test)] diff --git a/src/rustdoc/doc.rs b/src/rustdoc/doc.rs index 70bd4d981bc..e8095c54c6e 100644 --- a/src/rustdoc/doc.rs +++ b/src/rustdoc/doc.rs @@ -17,31 +17,27 @@ enum itemtag { tytag(tydoc) } -type moddoc = { +type itemdoc = { id: ast_id, name: str, path: [str], brief: option, desc: option, +}; + +type moddoc = { + item: itemdoc, // This box exists to break the structural recursion items: ~[itemtag] }; type constdoc = { - id: ast_id, - name: str, - path: [str], - brief: option, - desc: option, + item: itemdoc, ty: option }; type fndoc = { - id: ast_id, - name: str, - path: [str], - brief: option, - desc: option, + item: itemdoc, args: [argdoc], return: retdoc, failure: option, @@ -60,11 +56,7 @@ type retdoc = { }; type enumdoc = { - id: ast_id, - name: str, - path: [str], - brief: option, - desc: option, + item: itemdoc, variants: [variantdoc] }; @@ -75,21 +67,13 @@ type variantdoc = { }; type resdoc = { - id: ast_id, - name: str, - path: [str], - brief: option, - desc: option, + item: itemdoc, args: [argdoc], sig: option }; type ifacedoc = { - id: ast_id, - name: str, - path: [str], - brief: option, - desc: option, + item: itemdoc, methods: [methoddoc] }; @@ -104,22 +88,14 @@ type methoddoc = { }; type impldoc = { - id: ast_id, - name: str, - path: [str], - brief: option, - desc: option, + item: itemdoc, iface_ty: option, self_ty: option, methods: [methoddoc] }; type tydoc = { - id: ast_id, - name: str, - path: [str], - brief: option, - desc: option, + item: itemdoc, sig: option }; @@ -199,18 +175,75 @@ impl util for moddoc { } } -#[doc = "Helper methods on itemtag"] -impl util for itemtag { - fn name() -> str { +iface item { + fn item() -> itemdoc; +} + +impl of item for itemtag { + fn item() -> itemdoc { alt self { - doc::modtag({name, _}) { name } - doc::fntag({name, _}) { name } - doc::consttag({name, _}) { name } - doc::enumtag({name, _}) { name } - doc::restag({name, _}) { name } - doc::ifacetag({name, _}) { name } - doc::impltag({name, _}) { name } - doc::tytag({name, _}) { name } + doc::modtag(doc) { doc.item } + doc::fntag(doc) { doc.item } + doc::consttag(doc) { doc.item } + doc::enumtag(doc) { doc.item } + doc::restag(doc) { doc.item } + doc::ifacetag(doc) { doc.item } + doc::impltag(doc) { doc.item } + doc::tytag(doc) { doc.item } } } } + +impl of item for moddoc { + fn item() -> itemdoc { self.item } +} + +impl of item for fndoc { + fn item() -> itemdoc { self.item } +} + +impl of item for constdoc { + fn item() -> itemdoc { self.item } +} + +impl of item for enumdoc { + fn item() -> itemdoc { self.item } +} + +impl of item for resdoc { + fn item() -> itemdoc { self.item } +} + +impl of item for ifacedoc { + fn item() -> itemdoc { self.item } +} + +impl of item for impldoc { + fn item() -> itemdoc { self.item } +} + +impl of item for tydoc { + fn item() -> itemdoc { self.item } +} + +impl util for A { + fn id() -> ast_id { + self.item().id + } + + fn name() -> str { + self.item().name + } + + fn path() -> [str] { + self.item().path + } + + fn brief() -> option { + self.item().brief + } + + fn desc() -> option { + self.item().desc + } +} \ No newline at end of file diff --git a/src/rustdoc/extract.rs b/src/rustdoc/extract.rs index 7af1bed3ace..06aa61abb60 100644 --- a/src/rustdoc/extract.rs +++ b/src/rustdoc/extract.rs @@ -38,11 +38,13 @@ fn moddoc_from_mod( id: ast::node_id ) -> doc::moddoc { { - id: id, - name: name, - path: [], - brief: none, - desc: none, + item: { + id: id, + name: name, + path: [], + brief: none, + desc: none, + }, items: ~vec::filter_map(module.items) {|item| alt item.node { ast::item_mod(m) { @@ -99,11 +101,13 @@ fn fndoc_from_fn( id: ast::node_id ) -> doc::fndoc { { - id: id, - name: name, - path: [], - brief: none, - desc: none, + item: { + id: id, + name: name, + path: [], + brief: none, + desc: none, + }, args: argdocs_from_args(decl.inputs), return: { desc: none, @@ -141,11 +145,13 @@ fn constdoc_from_const( id: ast::node_id ) -> doc::constdoc { { - id: id, - name: name, - path: [], - brief: none, - desc: none, + item: { + id: id, + name: name, + path: [], + brief: none, + desc: none, + }, ty: none } } @@ -153,8 +159,8 @@ fn constdoc_from_const( #[test] fn should_extract_const_name_and_id() { let doc = test::mk_doc("const a: int = 0;"); - assert doc.topmod.consts()[0].id != 0; - assert doc.topmod.consts()[0].name == "a"; + assert doc.topmod.consts()[0].id() != 0; + assert doc.topmod.consts()[0].name() == "a"; } fn enumdoc_from_enum( @@ -163,11 +169,13 @@ fn enumdoc_from_enum( variants: [ast::variant] ) -> doc::enumdoc { { - id: id, - name: name, - path: [], - brief: none, - desc: none, + item: { + id: id, + name: name, + path: [], + brief: none, + desc: none, + }, variants: variantdocs_from_variants(variants) } } @@ -189,8 +197,8 @@ fn variantdoc_from_variant(variant: ast::variant) -> doc::variantdoc { #[test] fn should_extract_enums() { let doc = test::mk_doc("enum e { v }"); - assert doc.topmod.enums()[0].id != 0; - assert doc.topmod.enums()[0].name == "e"; + assert doc.topmod.enums()[0].id() != 0; + assert doc.topmod.enums()[0].name() == "e"; } #[test] @@ -205,11 +213,13 @@ fn resdoc_from_resource( id: ast::node_id ) -> doc::resdoc { { - id: id, - name: name, - path: [], - brief: none, - desc: none, + item: { + id: id, + name: name, + path: [], + brief: none, + desc: none, + }, args: argdocs_from_args(decl.inputs), sig: none } @@ -218,8 +228,8 @@ fn resdoc_from_resource( #[test] fn should_extract_resources() { let doc = test::mk_doc("resource r(b: bool) { }"); - assert doc.topmod.resources()[0].id != 0; - assert doc.topmod.resources()[0].name == "r"; + assert doc.topmod.resources()[0].id() != 0; + assert doc.topmod.resources()[0].name() == "r"; } #[test] @@ -234,11 +244,13 @@ fn ifacedoc_from_iface( id: ast::node_id ) -> doc::ifacedoc { { - id: id, - name: name, - path: [], - brief: none, - desc: none, + item: { + id: id, + name: name, + path: [], + brief: none, + desc: none, + }, methods: vec::map(methods) {|method| { name: method.ident, @@ -259,7 +271,7 @@ fn ifacedoc_from_iface( #[test] fn should_extract_ifaces() { let doc = test::mk_doc("iface i { fn f(); }"); - assert doc.topmod.ifaces()[0].name == "i"; + assert doc.topmod.ifaces()[0].name() == "i"; } #[test] @@ -280,11 +292,13 @@ fn impldoc_from_impl( id: ast::node_id ) -> doc::impldoc { { - id: id, - name: name, - path: [], - brief: none, - desc: none, + item: { + id: id, + name: name, + path: [], + brief: none, + desc: none, + }, iface_ty: none, self_ty: none, methods: vec::map(methods) {|method| @@ -307,13 +321,13 @@ fn impldoc_from_impl( #[test] fn should_extract_impls_with_names() { let doc = test::mk_doc("impl i for int { fn a() { } }"); - assert doc.topmod.impls()[0].name == "i"; + assert doc.topmod.impls()[0].name() == "i"; } #[test] fn should_extract_impls_without_names() { let doc = test::mk_doc("impl of i for int { fn a() { } }"); - assert doc.topmod.impls()[0].name == "i"; + assert doc.topmod.impls()[0].name() == "i"; } #[test] @@ -333,11 +347,13 @@ fn tydoc_from_ty( id: ast::node_id ) -> doc::tydoc { { - id: id, - name: name, - path: [], - brief: none, - desc: none, + item: { + id: id, + name: name, + path: [], + brief: none, + desc: none, + }, sig: none } } @@ -345,7 +361,7 @@ fn tydoc_from_ty( #[test] fn should_extract_tys() { let doc = test::mk_doc("type a = int;"); - assert doc.topmod.types()[0].name == "a"; + assert doc.topmod.types()[0].name() == "a"; } #[cfg(test)] @@ -366,21 +382,21 @@ mod test { #[test] fn extract_mods() { let doc = mk_doc("mod a { mod b { } mod c { } }"); - assert doc.topmod.mods()[0].name == "a"; - assert doc.topmod.mods()[0].mods()[0].name == "b"; - assert doc.topmod.mods()[0].mods()[1].name == "c"; + assert doc.topmod.mods()[0].name() == "a"; + assert doc.topmod.mods()[0].mods()[0].name() == "b"; + assert doc.topmod.mods()[0].mods()[1].name() == "c"; } #[test] fn extract_mods_deep() { let doc = mk_doc("mod a { mod b { mod c { } } }"); - assert doc.topmod.mods()[0].mods()[0].mods()[0].name == "c"; + assert doc.topmod.mods()[0].mods()[0].mods()[0].name() == "c"; } #[test] fn extract_should_set_mod_ast_id() { let doc = mk_doc("mod a { }"); - assert doc.topmod.mods()[0].id != 0; + assert doc.topmod.mods()[0].id() != 0; } #[test] @@ -388,14 +404,14 @@ mod test { let doc = mk_doc( "fn a() { } \ mod b { fn c() { } }"); - assert doc.topmod.fns()[0].name == "a"; - assert doc.topmod.mods()[0].fns()[0].name == "c"; + assert doc.topmod.fns()[0].name() == "a"; + assert doc.topmod.mods()[0].fns()[0].name() == "c"; } #[test] fn extract_should_set_fn_ast_id() { let doc = mk_doc("fn a() { }"); - assert doc.topmod.fns()[0].id != 0; + assert doc.topmod.fns()[0].id() != 0; } #[test] @@ -403,7 +419,7 @@ mod test { let source = ""; let ast = parse::from_str(source); let doc = extract(ast, "burp"); - assert doc.topmod.name == "burp"; + assert doc.topmod.name() == "burp"; } #[test] @@ -411,6 +427,6 @@ mod test { let source = ""; let srv = astsrv::mk_srv_from_str(source); let doc = from_srv(srv, "name"); - assert doc.topmod.name == "name"; + assert doc.topmod.name() == "name"; } } \ No newline at end of file diff --git a/src/rustdoc/markdown_pass.rs b/src/rustdoc/markdown_pass.rs index 21a7e68cd20..e59382b9d80 100644 --- a/src/rustdoc/markdown_pass.rs +++ b/src/rustdoc/markdown_pass.rs @@ -97,7 +97,7 @@ fn write_crate( ctxt: ctxt, doc: doc::cratedoc ) { - write_header(ctxt, h1, #fmt("Crate %s", doc.topmod.name)); + write_header(ctxt, h1, #fmt("Crate %s", doc.topmod.name())); write_top_module(ctxt, doc.topmod); } @@ -112,7 +112,7 @@ fn write_mod( ctxt: ctxt, moddoc: doc::moddoc ) { - let fullpath = str::connect(moddoc.path + [moddoc.name], "::"); + let fullpath = str::connect(moddoc.path() + [moddoc.name()], "::"); write_header(ctxt, h1, #fmt("Module `%s`", fullpath)); write_mod_contents(ctxt, moddoc); } @@ -127,8 +127,8 @@ fn write_mod_contents( ctxt: ctxt, doc: doc::moddoc ) { - write_brief(ctxt, doc.brief); - write_desc(ctxt, doc.desc); + write_brief(ctxt, doc.brief()); + write_desc(ctxt, doc.desc()); for itemtag in *doc.items { alt itemtag { @@ -160,12 +160,12 @@ fn write_fn( ctxt: ctxt, doc: doc::fndoc ) { - write_header(ctxt, h2, #fmt("Function `%s`", doc.name)); + write_header(ctxt, h2, #fmt("Function `%s`", doc.name())); write_fnlike( ctxt, doc.sig, - doc.brief, - doc.desc, + doc.brief(), + doc.desc(), doc.args, doc.return, doc.failure @@ -424,10 +424,10 @@ fn write_const( ctxt: ctxt, doc: doc::constdoc ) { - write_header(ctxt, h2, #fmt("Const `%s`", doc.name)); + write_header(ctxt, h2, #fmt("Const `%s`", doc.name())); write_sig(ctxt, doc.ty); - write_brief(ctxt, doc.brief); - write_desc(ctxt, doc.desc); + write_brief(ctxt, doc.brief()); + write_desc(ctxt, doc.desc()); } #[test] @@ -448,9 +448,9 @@ fn write_enum( ctxt: ctxt, doc: doc::enumdoc ) { - write_header(ctxt, h2, #fmt("Enum `%s`", doc.name)); - write_brief(ctxt, doc.brief); - write_desc(ctxt, doc.desc); + write_header(ctxt, h2, #fmt("Enum `%s`", doc.name())); + write_brief(ctxt, doc.brief()); + write_desc(ctxt, doc.desc()); write_variants(ctxt, doc.variants); } @@ -530,10 +530,10 @@ fn should_write_variant_list_with_signatures() { } fn write_res(ctxt: ctxt, doc: doc::resdoc) { - write_header(ctxt, h2, #fmt("Resource `%s`", doc.name)); + write_header(ctxt, h2, #fmt("Resource `%s`", doc.name())); write_sig(ctxt, doc.sig); - write_brief(ctxt, doc.brief); - write_desc(ctxt, doc.desc); + write_brief(ctxt, doc.brief()); + write_desc(ctxt, doc.desc()); write_args(ctxt, doc.args); } @@ -557,9 +557,9 @@ fn should_write_resource_args() { } fn write_iface(ctxt: ctxt, doc: doc::ifacedoc) { - write_header(ctxt, h2, #fmt("Interface `%s`", doc.name)); - write_brief(ctxt, doc.brief); - write_desc(ctxt, doc.desc); + write_header(ctxt, h2, #fmt("Interface `%s`", doc.name())); + write_brief(ctxt, doc.brief()); + write_desc(ctxt, doc.desc()); write_methods(ctxt, doc.methods); } @@ -656,16 +656,16 @@ fn write_impl(ctxt: ctxt, doc: doc::impldoc) { some(iface_ty) { write_header(ctxt, h2, #fmt("Implementation `%s` of `%s` for `%s`", - doc.name, iface_ty, self_ty)); + doc.name(), iface_ty, self_ty)); } none { write_header(ctxt, h2, #fmt("Implementation `%s` for `%s`", - doc.name, self_ty)); + doc.name(), self_ty)); } } - write_brief(ctxt, doc.brief); - write_desc(ctxt, doc.desc); + write_brief(ctxt, doc.brief()); + write_desc(ctxt, doc.desc()); write_methods(ctxt, doc.methods); } @@ -748,10 +748,10 @@ fn write_type( ctxt: ctxt, doc: doc::tydoc ) { - write_header(ctxt, h2, #fmt("Type `%s`", doc.name)); + write_header(ctxt, h2, #fmt("Type `%s`", doc.name())); write_sig(ctxt, doc.sig); - write_brief(ctxt, doc.brief); - write_desc(ctxt, doc.desc); + write_brief(ctxt, doc.brief()); + write_desc(ctxt, doc.desc()); } #[test] diff --git a/src/rustdoc/path_pass.rs b/src/rustdoc/path_pass.rs index 0da88fbac42..2bfa5cfa5b5 100644 --- a/src/rustdoc/path_pass.rs +++ b/src/rustdoc/path_pass.rs @@ -27,13 +27,16 @@ fn run(srv: astsrv::srv, doc: doc::cratedoc) -> doc::cratedoc { } fn fold_mod(fold: fold::fold, doc: doc::moddoc) -> doc::moddoc { - let is_topmod = doc.id == rustc::syntax::ast::crate_node_id; + let is_topmod = doc.id() == rustc::syntax::ast::crate_node_id; - if !is_topmod { vec::push(fold.ctxt.path, doc.name); } + if !is_topmod { vec::push(fold.ctxt.path, doc.name()); } let doc = fold::default_seq_fold_mod(fold, doc); if !is_topmod { vec::pop(fold.ctxt.path); } { - path: fold.ctxt.path + item: { + path: fold.ctxt.path + with doc.item + } with doc } } @@ -44,6 +47,6 @@ fn should_record_mod_paths() { let srv = astsrv::mk_srv_from_str(source); let doc = extract::from_srv(srv, ""); let doc = run(srv, doc); - assert doc.topmod.mods()[0].mods()[0].mods()[0].path == ["a", "b"]; - assert doc.topmod.mods()[0].mods()[1].mods()[0].path == ["a", "d"]; + assert doc.topmod.mods()[0].mods()[0].mods()[0].path() == ["a", "b"]; + assert doc.topmod.mods()[0].mods()[1].mods()[0].path() == ["a", "d"]; } \ No newline at end of file diff --git a/src/rustdoc/prune_undoc_items_pass.rs b/src/rustdoc/prune_undoc_items_pass.rs index 3ff29bd0e89..f7985044b12 100644 --- a/src/rustdoc/prune_undoc_items_pass.rs +++ b/src/rustdoc/prune_undoc_items_pass.rs @@ -108,8 +108,8 @@ fn fold_mod( with fold::default_seq_fold_mod(fold, doc) }; fold.ctxt.have_docs = - doc.brief != none - || doc.desc != none + doc.brief() != none + || doc.desc() != none || vec::is_not_empty(*doc.items); ret doc; } @@ -121,8 +121,8 @@ fn fold_fn( let doc = fold::default_seq_fold_fn(fold, doc); fold.ctxt.have_docs = - doc.brief != none - || doc.desc != none + doc.brief() != none + || doc.desc() != none || args_have_docs(doc.args) || doc.return.desc != none || doc.failure != none; @@ -183,8 +183,8 @@ fn fold_const( ) -> doc::constdoc { let doc = fold::default_seq_fold_const(fold, doc); fold.ctxt.have_docs = - doc.brief != none - || doc.desc != none; + doc.brief() != none + || doc.desc() != none; ret doc; } @@ -206,8 +206,8 @@ fn fold_enum(fold: fold::fold, doc: doc::enumdoc) -> doc::enumdoc { with fold::default_seq_fold_enum(fold, doc) }; fold.ctxt.have_docs = - doc.brief != none - || doc.desc != none + doc.brief() != none + || doc.desc() != none || vec::is_not_empty(doc.variants); ret doc; } @@ -234,8 +234,8 @@ fn fold_res(fold: fold::fold, doc: doc::resdoc) -> doc::resdoc { let doc = fold::default_seq_fold_res(fold, doc); fold.ctxt.have_docs = - doc.brief != none - || doc.desc != none + doc.brief() != none + || doc.desc() != none || args_have_docs(doc.args); ret doc; } @@ -260,8 +260,8 @@ fn fold_iface( let doc = fold::default_seq_fold_iface(fold, doc); fold.ctxt.have_docs = - doc.brief != none - || doc.desc != none + doc.brief() != none + || doc.desc() != none || methods_have_docs(doc.methods); ret doc; } @@ -314,8 +314,8 @@ fn fold_impl( let doc = fold::default_seq_fold_impl(fold, doc); fold.ctxt.have_docs = - doc.brief != none - || doc.desc != none + doc.brief() != none + || doc.desc() != none || methods_have_docs(doc.methods); ret doc; } @@ -351,8 +351,8 @@ fn fold_type( let doc = fold::default_seq_fold_type(fold, doc); fold.ctxt.have_docs = - doc.brief != none - || doc.desc != none; + doc.brief() != none + || doc.desc() != none; ret doc; } diff --git a/src/rustdoc/prune_unexported_pass.rs b/src/rustdoc/prune_unexported_pass.rs index 41a035770b6..9bac44d3f9f 100644 --- a/src/rustdoc/prune_unexported_pass.rs +++ b/src/rustdoc/prune_unexported_pass.rs @@ -40,7 +40,7 @@ fn exported_things( from_crate: fn(astsrv::srv, doc::moddoc) -> [T], from_mod: fn(astsrv::srv, doc::moddoc) -> [T] ) -> [T] { - if doc.id == ast::crate_node_id { + if doc.id() == ast::crate_node_id { from_crate(srv, doc) } else { from_mod(srv, doc) @@ -58,7 +58,7 @@ fn exported_items_from_mod( srv: astsrv::srv, doc: doc::moddoc ) -> [doc::itemtag] { - exported_items_from(srv, doc, bind is_exported_from_mod(_, doc.id, _)) + exported_items_from(srv, doc, bind is_exported_from_mod(_, doc.id(), _)) } fn exported_items_from( diff --git a/src/rustdoc/rustdoc.rs b/src/rustdoc/rustdoc.rs index eb210d2f4ac..9aa9bb24e04 100755 --- a/src/rustdoc/rustdoc.rs +++ b/src/rustdoc/rustdoc.rs @@ -2,6 +2,8 @@ * Copyright 2011 Google Inc. */ +// Some utility interfaces +import doc::item; import doc::util; #[doc = "A single operation on the document model"] @@ -46,11 +48,10 @@ fn test_run_passes() { ) -> doc::cratedoc { { topmod: { - id: 0, - name: doc.topmod.name + "two", - path: [], - brief: none, - desc: none, + item: { + name: doc.topmod.name() + "two" + with doc.topmod.item + }, items: ~[] } } @@ -61,11 +62,10 @@ fn test_run_passes() { ) -> doc::cratedoc { { topmod: { - id: 0, - name: doc.topmod.name + "three", - path: [], - brief: none, - desc: none, + item: { + name: doc.topmod.name() + "three" + with doc.topmod.item + }, items: ~[] } } @@ -75,7 +75,7 @@ fn test_run_passes() { let passes = [pass1, pass2]; let doc = extract::from_srv(srv, "one"); let doc = run_passes(srv, doc, passes); - assert doc.topmod.name == "onetwothree"; + assert doc.topmod.name() == "onetwothree"; } fn main(argv: [str]) { diff --git a/src/rustdoc/sort_pass.rs b/src/rustdoc/sort_pass.rs index 674b028d0d5..11df208729e 100644 --- a/src/rustdoc/sort_pass.rs +++ b/src/rustdoc/sort_pass.rs @@ -45,10 +45,10 @@ fn test() { let srv = astsrv::mk_srv_from_str(source); let doc = extract::from_srv(srv, ""); let doc = mk_pass(name_lteq)(srv, doc); - assert doc.topmod.mods()[0].name == "w"; + assert doc.topmod.mods()[0].name() == "w"; assert doc.topmod.mods()[1].items[0].name() == "x"; assert doc.topmod.mods()[1].items[1].name() == "y"; - assert doc.topmod.mods()[1].name == "z"; + assert doc.topmod.mods()[1].name() == "z"; } #[test] diff --git a/src/rustdoc/trim_pass.rs b/src/rustdoc/trim_pass.rs index bec08afdbd2..9c9fe5f83ae 100644 --- a/src/rustdoc/trim_pass.rs +++ b/src/rustdoc/trim_pass.rs @@ -18,8 +18,8 @@ fn should_trim_mod() { let doc = test::mk_doc("#[doc(brief = \"\nbrief\n\", \ desc = \"\ndesc\n\")] \ mod m { }"); - assert doc.topmod.mods()[0].brief == some("brief"); - assert doc.topmod.mods()[0].desc == some("desc"); + assert doc.topmod.mods()[0].brief() == some("brief"); + assert doc.topmod.mods()[0].desc() == some("desc"); } #[test] @@ -27,8 +27,8 @@ fn should_trim_const() { let doc = test::mk_doc("#[doc(brief = \"\nbrief\n\", \ desc = \"\ndesc\n\")] \ const a: bool = true;"); - assert doc.topmod.consts()[0].brief == some("brief"); - assert doc.topmod.consts()[0].desc == some("desc"); + assert doc.topmod.consts()[0].brief() == some("brief"); + assert doc.topmod.consts()[0].desc() == some("desc"); } #[test] @@ -36,8 +36,8 @@ fn should_trim_fn() { let doc = test::mk_doc("#[doc(brief = \"\nbrief\n\", \ desc = \"\ndesc\n\")] \ fn a() { }"); - assert doc.topmod.fns()[0].brief == some("brief"); - assert doc.topmod.fns()[0].desc == some("desc"); + assert doc.topmod.fns()[0].brief() == some("brief"); + assert doc.topmod.fns()[0].desc() == some("desc"); } #[test] diff --git a/src/rustdoc/tystr_pass.rs b/src/rustdoc/tystr_pass.rs index 37b3185987a..662d2ca8380 100644 --- a/src/rustdoc/tystr_pass.rs +++ b/src/rustdoc/tystr_pass.rs @@ -36,9 +36,9 @@ fn fold_fn( let srv = fold.ctxt; { - args: merge_arg_tys(srv, doc.id, doc.args), - return: merge_ret_ty(srv, doc.id, doc.return), - sig: get_fn_sig(srv, doc.id) + args: merge_arg_tys(srv, doc.id(), doc.args), + return: merge_ret_ty(srv, doc.id(), doc.return), + sig: get_fn_sig(srv, doc.id()) with doc } } @@ -164,7 +164,7 @@ fn fold_const( { ty: some(astsrv::exec(srv) {|ctxt| - alt check ctxt.ast_map.get(doc.id) { + alt check ctxt.ast_map.get(doc.id()) { ast_map::node_item(@{ node: ast::item_const(ty, _), _ }, _) { @@ -191,7 +191,7 @@ fn fold_enum( { variants: vec::map(doc.variants) {|variant| let sig = astsrv::exec(srv) {|ctxt| - alt check ctxt.ast_map.get(doc.id) { + alt check ctxt.ast_map.get(doc.id()) { ast_map::node_item(@{ node: ast::item_enum(ast_variants, _), _ }, _) { @@ -227,13 +227,13 @@ fn fold_res( let srv = fold.ctxt; { - args: merge_arg_tys(srv, doc.id, doc.args), + args: merge_arg_tys(srv, doc.id(), doc.args), sig: some(astsrv::exec(srv) {|ctxt| - alt check ctxt.ast_map.get(doc.id) { + alt check ctxt.ast_map.get(doc.id()) { ast_map::node_item(@{ node: ast::item_res(decl, _, _, _, _), _ }, _) { - pprust::res_to_str(decl, doc.name, []) + pprust::res_to_str(decl, doc.name(), []) } } }) @@ -258,7 +258,7 @@ fn fold_iface( doc: doc::ifacedoc ) -> doc::ifacedoc { { - methods: merge_methods(fold.ctxt, doc.id, doc.methods) + methods: merge_methods(fold.ctxt, doc.id(), doc.methods) with doc } } @@ -456,7 +456,7 @@ fn fold_impl( let srv = fold.ctxt; let (iface_ty, self_ty) = astsrv::exec(srv) {|ctxt| - alt ctxt.ast_map.get(doc.id) { + alt ctxt.ast_map.get(doc.id()) { ast_map::node_item(@{ node: ast::item_impl(_, iface_ty, self_ty, _), _ }, _) { @@ -472,7 +472,7 @@ fn fold_impl( { iface_ty: iface_ty, self_ty: self_ty, - methods: merge_methods(fold.ctxt, doc.id, doc.methods) + methods: merge_methods(fold.ctxt, doc.id(), doc.methods) with doc } } @@ -530,7 +530,7 @@ fn fold_type( { sig: astsrv::exec(srv) {|ctxt| - alt ctxt.ast_map.get(doc.id) { + alt ctxt.ast_map.get(doc.id()) { ast_map::node_item(@{ ident: ident, node: ast::item_ty(ty, params), _