diff options
Diffstat (limited to 'support/texlab/src/definition/mod.rs')
-rw-r--r-- | support/texlab/src/definition/mod.rs | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/support/texlab/src/definition/mod.rs b/support/texlab/src/definition/mod.rs deleted file mode 100644 index 08901454fe..0000000000 --- a/support/texlab/src/definition/mod.rs +++ /dev/null @@ -1,47 +0,0 @@ -mod bibtex_string; -mod latex_citation; -mod latex_cmd; -mod latex_label; - -use self::{ - bibtex_string::BibtexStringDefinitionProvider, latex_citation::LatexCitationDefinitionProvider, - latex_cmd::LatexCommandDefinitionProvider, latex_label::LatexLabelDefinitionProvider, -}; -use crate::{ - feature::{ConcatProvider, FeatureProvider, FeatureRequest}, - protocol::{LocationLink, TextDocumentPositionParams}, -}; -use async_trait::async_trait; - -pub struct DefinitionProvider { - provider: ConcatProvider<TextDocumentPositionParams, LocationLink>, -} - -impl DefinitionProvider { - pub fn new() -> Self { - Self { - provider: ConcatProvider::new(vec![ - Box::new(BibtexStringDefinitionProvider), - Box::new(LatexCitationDefinitionProvider), - Box::new(LatexCommandDefinitionProvider), - Box::new(LatexLabelDefinitionProvider), - ]), - } - } -} - -impl Default for DefinitionProvider { - fn default() -> Self { - Self::new() - } -} - -#[async_trait] -impl FeatureProvider for DefinitionProvider { - type Params = TextDocumentPositionParams; - type Output = Vec<LocationLink>; - - async fn execute<'a>(&'a self, req: &'a FeatureRequest<Self::Params>) -> Self::Output { - self.provider.execute(req).await - } -} |