diff options
author | Norbert Preining <norbert@preining.info> | 2021-05-23 03:00:39 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2021-05-23 03:00:39 +0000 |
commit | f1261b349e875b842745b63258c3e338cb1fe3bf (patch) | |
tree | b5d402b3e80818cde2c079a42249f3dcb9732247 /support/texlab/src/rename/mod.rs | |
parent | 58aa1ac09b1d9e4769d0a0661cf12e2b2db41b14 (diff) |
CTAN sync 202105230300
Diffstat (limited to 'support/texlab/src/rename/mod.rs')
-rw-r--r-- | support/texlab/src/rename/mod.rs | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/support/texlab/src/rename/mod.rs b/support/texlab/src/rename/mod.rs deleted file mode 100644 index 40bf8ce1e1..0000000000 --- a/support/texlab/src/rename/mod.rs +++ /dev/null @@ -1,88 +0,0 @@ -mod bibtex_entry; -mod latex_cmd; -mod latex_env; -mod latex_label; - -use self::{ - bibtex_entry::{BibtexEntryPrepareRenameProvider, BibtexEntryRenameProvider}, - latex_cmd::{LatexCommandPrepareRenameProvider, LatexCommandRenameProvider}, - latex_env::{LatexEnvironmentPrepareRenameProvider, LatexEnvironmentRenameProvider}, - latex_label::{LatexLabelPrepareRenameProvider, LatexLabelRenameProvider}, -}; -use crate::{ - feature::{ChoiceProvider, FeatureProvider, FeatureRequest}, - protocol::{Range, RenameParams, TextDocumentPositionParams, WorkspaceEdit}, -}; -use async_trait::async_trait; - -pub struct PrepareRenameProvider { - provider: ChoiceProvider<TextDocumentPositionParams, Range>, -} - -impl PrepareRenameProvider { - pub fn new() -> Self { - Self { - provider: ChoiceProvider::new(vec![ - Box::new(BibtexEntryPrepareRenameProvider), - Box::new(LatexCommandPrepareRenameProvider), - Box::new(LatexEnvironmentPrepareRenameProvider), - Box::new(LatexLabelPrepareRenameProvider), - ]), - } - } -} - -impl Default for PrepareRenameProvider { - fn default() -> Self { - Self::new() - } -} - -#[async_trait] -impl FeatureProvider for PrepareRenameProvider { - type Params = TextDocumentPositionParams; - type Output = Option<Range>; - - async fn execute<'a>( - &'a self, - req: &'a FeatureRequest<TextDocumentPositionParams>, - ) -> Option<Range> { - self.provider.execute(req).await - } -} - -pub struct RenameProvider { - provider: ChoiceProvider<RenameParams, WorkspaceEdit>, -} - -impl RenameProvider { - pub fn new() -> Self { - Self { - provider: ChoiceProvider::new(vec![ - Box::new(BibtexEntryRenameProvider), - Box::new(LatexCommandRenameProvider), - Box::new(LatexEnvironmentRenameProvider), - Box::new(LatexLabelRenameProvider), - ]), - } - } -} - -impl Default for RenameProvider { - fn default() -> Self { - Self::new() - } -} - -#[async_trait] -impl FeatureProvider for RenameProvider { - type Params = RenameParams; - type Output = Option<WorkspaceEdit>; - - async fn execute<'a>( - &'a self, - request: &'a FeatureRequest<RenameParams>, - ) -> Option<WorkspaceEdit> { - self.provider.execute(request).await - } -} |