diff options
| author | Jakub Wieczorek <jakub@jakub.cc> | 2014-07-18 00:56:56 +0200 |
|---|---|---|
| committer | Jakub Wieczorek <jakub@jakub.cc> | 2014-07-20 12:40:08 +0200 |
| commit | 4b9bc2e8f268dfe2a2462c4e378e5a0eeefa2cf4 (patch) | |
| tree | ada16b620d93f1ae709185df0986c58a62614e8d /src/librustdoc/clean | |
| parent | 50481f55030f02543e1b3b6ae008d77b1cef3e98 (diff) | |
| download | rust-4b9bc2e8f268dfe2a2462c4e378e5a0eeefa2cf4.tar.gz rust-4b9bc2e8f268dfe2a2462c4e378e5a0eeefa2cf4.zip | |
Implement new mod import sugar
Implements RFC #168.
Diffstat (limited to 'src/librustdoc/clean')
| -rw-r--r-- | src/librustdoc/clean/mod.rs | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/src/librustdoc/clean/mod.rs b/src/librustdoc/clean/mod.rs index 9f5df205aa4..3cb2e9c6ec9 100644 --- a/src/librustdoc/clean/mod.rs +++ b/src/librustdoc/clean/mod.rs @@ -1779,13 +1779,13 @@ impl Clean<Vec<Item>> for ast::ViewItem { // to keep any non-inlineable reexports so they can be // listed in the documentation. let remaining = list.iter().filter(|path| { - match inline::try_inline(path.node.id) { + match inline::try_inline(path.node.id()) { Some(items) => { ret.extend(items.move_iter()); false } None => true, } - }).map(|a| a.clone()).collect::<Vec<ast::PathListIdent>>(); + }).map(|a| a.clone()).collect::<Vec<ast::PathListItem>>(); if remaining.len() > 0 { let path = ast::ViewPathList(a.clone(), remaining, @@ -1868,11 +1868,17 @@ pub struct ViewListIdent { pub source: Option<ast::DefId>, } -impl Clean<ViewListIdent> for ast::PathListIdent { +impl Clean<ViewListIdent> for ast::PathListItem { fn clean(&self) -> ViewListIdent { - ViewListIdent { - name: self.node.name.clean(), - source: resolve_def(self.node.id), + match self.node { + ast::PathListIdent { id, name } => ViewListIdent { + name: name.clean(), + source: resolve_def(id) + }, + ast::PathListMod { id } => ViewListIdent { + name: "mod".to_string(), + source: resolve_def(id) + } } } } |
