summaryrefslogtreecommitdiff
path: root/support/texlab/src/hover/mod.rs
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-05-23 03:00:39 +0000
committerNorbert Preining <norbert@preining.info>2021-05-23 03:00:39 +0000
commitf1261b349e875b842745b63258c3e338cb1fe3bf (patch)
treeb5d402b3e80818cde2c079a42249f3dcb9732247 /support/texlab/src/hover/mod.rs
parent58aa1ac09b1d9e4769d0a0661cf12e2b2db41b14 (diff)
CTAN sync 202105230300
Diffstat (limited to 'support/texlab/src/hover/mod.rs')
-rw-r--r--support/texlab/src/hover/mod.rs58
1 files changed, 0 insertions, 58 deletions
diff --git a/support/texlab/src/hover/mod.rs b/support/texlab/src/hover/mod.rs
deleted file mode 100644
index e740657add..0000000000
--- a/support/texlab/src/hover/mod.rs
+++ /dev/null
@@ -1,58 +0,0 @@
-mod bibtex;
-mod latex;
-
-#[cfg(feature = "citation")]
-use self::latex::citation::LatexCitationHoverProvider;
-
-use self::{
- bibtex::{
- entry_type::BibtexEntryTypeHoverProvider, field::BibtexFieldHoverProvider,
- string_reference::BibtexStringReferenceHoverProvider,
- },
- latex::{
- component::LatexComponentHoverProvider, label::LatexLabelHoverProvider,
- preview::LatexPreviewHoverProvider,
- },
-};
-use crate::{
- feature::{ChoiceProvider, FeatureProvider, FeatureRequest},
- protocol::{Hover, TextDocumentPositionParams},
-};
-use async_trait::async_trait;
-
-pub struct HoverProvider {
- provider: ChoiceProvider<TextDocumentPositionParams, Hover>,
-}
-
-impl HoverProvider {
- pub fn new() -> Self {
- Self {
- provider: ChoiceProvider::new(vec![
- Box::new(BibtexEntryTypeHoverProvider),
- Box::new(BibtexStringReferenceHoverProvider),
- Box::new(BibtexFieldHoverProvider),
- #[cfg(feature = "citation")]
- Box::new(LatexCitationHoverProvider),
- Box::new(LatexComponentHoverProvider),
- Box::new(LatexLabelHoverProvider),
- Box::new(LatexPreviewHoverProvider),
- ]),
- }
- }
-}
-
-impl Default for HoverProvider {
- fn default() -> Self {
- Self::new()
- }
-}
-
-#[async_trait]
-impl FeatureProvider for HoverProvider {
- type Params = TextDocumentPositionParams;
- type Output = Option<Hover>;
-
- async fn execute<'a>(&'a self, req: &'a FeatureRequest<Self::Params>) -> Self::Output {
- self.provider.execute(req).await
- }
-}