trait AnnotExt: Sized {
// Required methods
fn as_symbol(&self) -> Option<(DocumentSymbol, &[Self])>;
fn links(
&self,
top_archive: Option<&ArchiveURI>,
f: impl FnMut(DocumentLink),
);
fn goto_definition(
&self,
in_doc: &UrlOrFile,
pos: LSPLineCol,
) -> Option<GotoDefinitionResponse>;
fn semantic_tokens(
&self,
cont: &mut impl FnMut(SourceRange<LSPLineCol>, u32),
);
fn hover(
&self,
top_archive: Option<&ArchiveURI>,
pos: LSPLineCol,
) -> Option<Hover>;
fn inlay_hint(&self) -> Option<InlayHint>;
fn code_action(&self, pos: LSPLineCol, url: &Url) -> CodeActionResponse;
}
Required Methodsยง
fn as_symbol(&self) -> Option<(DocumentSymbol, &[Self])>
fn links(&self, top_archive: Option<&ArchiveURI>, f: impl FnMut(DocumentLink))
fn goto_definition( &self, in_doc: &UrlOrFile, pos: LSPLineCol, ) -> Option<GotoDefinitionResponse>
fn semantic_tokens(&self, cont: &mut impl FnMut(SourceRange<LSPLineCol>, u32))
fn hover( &self, top_archive: Option<&ArchiveURI>, pos: LSPLineCol, ) -> Option<Hover>
fn inlay_hint(&self) -> Option<InlayHint>
fn code_action(&self, pos: LSPLineCol, url: &Url) -> CodeActionResponse
Dyn Compatibilityยง
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.