use Source for module, part 2

This commit is contained in:
Aleksey Kladov 2019-06-11 17:48:27 +03:00
parent 0145d06515
commit dd63f17027
3 changed files with 8 additions and 8 deletions

View file

@ -210,11 +210,11 @@ impl Module {
pub fn declaration_source(
self,
db: &(impl DefDatabase + AstDatabase),
) -> Option<(HirFileId, TreeArc<ast::Module>)> {
) -> Option<Source<TreeArc<ast::Module>>> {
let def_map = db.crate_def_map(self.krate);
let decl = def_map[self.module_id].declaration?;
let ast = decl.to_node(db);
Some((decl.file_id(), ast))
Some((decl.file_id(), ast).into())
}
/// Returns the syntax of the last path segment corresponding to this import

View file

@ -71,7 +71,7 @@ pub(crate) fn documentation_query(
def: DocDef,
) -> Option<Documentation> {
match def {
DocDef::Module(it) => docs_from_ast(&*it.declaration_source(db)?.1),
DocDef::Module(it) => docs_from_ast(&*it.declaration_source(db)?.ast),
DocDef::StructField(it) => match it.source(db).ast {
FieldSource::Named(named) => docs_from_ast(&*named),
FieldSource::Pos(..) => return None,