summaryrefslogtreecommitdiff
path: root/support/texlab/src/features/hover/field.rs
diff options
context:
space:
mode:
Diffstat (limited to 'support/texlab/src/features/hover/field.rs')
-rw-r--r--support/texlab/src/features/hover/field.rs29
1 files changed, 11 insertions, 18 deletions
diff --git a/support/texlab/src/features/hover/field.rs b/support/texlab/src/features/hover/field.rs
index 54a8718d69..daa0c301cd 100644
--- a/support/texlab/src/features/hover/field.rs
+++ b/support/texlab/src/features/hover/field.rs
@@ -1,26 +1,19 @@
-use cancellation::CancellationToken;
use lsp_types::{Hover, HoverContents, HoverParams, MarkupContent};
+use rowan::ast::AstNode;
-use crate::{
- features::cursor::CursorContext,
- syntax::{bibtex, CstNode},
- LineIndexExt, LANGUAGE_DATA,
-};
+use crate::{features::cursor::CursorContext, syntax::bibtex, LineIndexExt, LANGUAGE_DATA};
-pub fn find_field_hover(
- context: &CursorContext<HoverParams>,
- _token: &CancellationToken,
-) -> Option<Hover> {
+pub fn find_field_hover(context: &CursorContext<HoverParams>) -> Option<Hover> {
let main_document = context.request.main_document();
let name = context
.cursor
.as_bibtex()
- .filter(|token| token.kind() == bibtex::WORD)?;
+ .filter(|token| token.kind() == bibtex::NAME)?;
- bibtex::Field::cast(name.parent())?;
+ bibtex::Field::cast(name.parent()?)?;
- let docs = LANGUAGE_DATA.field_documentation(&name.text())?;
+ let docs = LANGUAGE_DATA.field_documentation(name.text())?;
Some(Hover {
contents: HoverContents::Markup(MarkupContent {
kind: lsp_types::MarkupKind::Markdown,
@@ -53,7 +46,7 @@ mod tests {
.hover();
let context = CursorContext::new(request);
- let actual_hover = find_field_hover(&context, CancellationToken::none());
+ let actual_hover = find_field_hover(&context);
assert_eq!(actual_hover, None);
}
@@ -69,7 +62,7 @@ mod tests {
.hover();
let context = CursorContext::new(request);
- let actual_hover = find_field_hover(&context, CancellationToken::none());
+ let actual_hover = find_field_hover(&context);
assert_eq!(actual_hover, None);
}
@@ -85,7 +78,7 @@ mod tests {
.hover();
let context = CursorContext::new(request);
- let actual_hover = find_field_hover(&context, CancellationToken::none()).unwrap();
+ let actual_hover = find_field_hover(&context).unwrap();
let expected_hover = Hover {
contents: HoverContents::Markup(MarkupContent {
kind: MarkupKind::Markdown,
@@ -107,7 +100,7 @@ mod tests {
.hover();
let context = CursorContext::new(request);
- let actual_hover = find_field_hover(&context, CancellationToken::none());
+ let actual_hover = find_field_hover(&context);
assert_eq!(actual_hover, None);
}
@@ -122,7 +115,7 @@ mod tests {
.hover();
let context = CursorContext::new(request);
- let actual_hover = find_field_hover(&context, CancellationToken::none());
+ let actual_hover = find_field_hover(&context);
assert_eq!(actual_hover, None);
}
}