Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide/src/static_index.rs')
| -rw-r--r-- | crates/ide/src/static_index.rs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/crates/ide/src/static_index.rs b/crates/ide/src/static_index.rs index 52b201df96..7dc91fbc9e 100644 --- a/crates/ide/src/static_index.rs +++ b/crates/ide/src/static_index.rs @@ -42,7 +42,8 @@ pub struct ReferenceData { #[derive(Debug)] pub struct TokenStaticData { - pub documentation: Option<Documentation>, + // FIXME: Make this have the lifetime of the database. + pub documentation: Option<Documentation<'static>>, pub hover: Option<HoverResult>, /// The position of the token itself. /// @@ -117,7 +118,7 @@ fn documentation_for_definition( sema: &Semantics<'_, RootDatabase>, def: Definition, scope_node: &SyntaxNode, -) -> Option<Documentation> { +) -> Option<Documentation<'static>> { let famous_defs = match &def { Definition::BuiltinType(_) => Some(FamousDefs(sema, sema.scope(scope_node)?.krate())), _ => None, @@ -132,6 +133,7 @@ fn documentation_for_definition( }) .to_display_target(sema.db), ) + .map(Documentation::into_owned) } // FIXME: This is a weird function |