diff options
| author | Brian Anderson <banderson@mozilla.com> | 2012-02-24 15:22:57 -0800 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-02-24 15:22:57 -0800 |
| commit | 9b009ea23d761d4cd7c0297289c6d3bb10c7cca7 (patch) | |
| tree | 934d15e959dacc50b9fd4d56d3f1f241fd8fd013 /src/rustdoc/path_pass.rs | |
| parent | 6e31983179e99f2bd9fa401f87bc2ba43b9acfdb (diff) | |
| download | rust-9b009ea23d761d4cd7c0297289c6d3bb10c7cca7.tar.gz rust-9b009ea23d761d4cd7c0297289c6d3bb10c7cca7.zip | |
rustdoc: Fix some remaining bugs around native mods
Diffstat (limited to 'src/rustdoc/path_pass.rs')
| -rw-r--r-- | src/rustdoc/path_pass.rs | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/rustdoc/path_pass.rs b/src/rustdoc/path_pass.rs index 8589e3264e0..737c7419084 100644 --- a/src/rustdoc/path_pass.rs +++ b/src/rustdoc/path_pass.rs @@ -47,7 +47,11 @@ fn fold_nmod(fold: fold::fold<ctxt>, doc: doc::nmoddoc) -> doc::nmoddoc { vec::push(fold.ctxt.path, doc.name()); let doc = fold::default_seq_fold_nmod(fold, doc); vec::pop(fold.ctxt.path); - ret doc; + + { + item: fold.fold_item(fold, doc.item) + with doc + } } #[test] @@ -72,6 +76,16 @@ fn should_record_fn_paths() { } #[test] +fn should_record_native_mod_paths() { + let source = "mod a { native mod b { } }"; + astsrv::from_str(source) {|srv| + let doc = extract::from_srv(srv, ""); + let doc = run(srv, doc); + assert doc.topmod.mods()[0].nmods()[0].path() == ["a"]; + } +} + +#[test] fn should_record_native_fn_paths() { let source = "native mod a { fn b(); }"; astsrv::from_str(source) {|srv| |
