summaryrefslogtreecommitdiff
path: root/support/texlab/src/rename/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'support/texlab/src/rename/mod.rs')
-rw-r--r--support/texlab/src/rename/mod.rs30
1 files changed, 17 insertions, 13 deletions
diff --git a/support/texlab/src/rename/mod.rs b/support/texlab/src/rename/mod.rs
index e8816d1e95..40bf8ce1e1 100644
--- a/support/texlab/src/rename/mod.rs
+++ b/support/texlab/src/rename/mod.rs
@@ -1,15 +1,19 @@
mod bibtex_entry;
-mod latex_command;
-mod latex_environment;
+mod latex_cmd;
+mod latex_env;
mod latex_label;
-use self::bibtex_entry::*;
-use self::latex_command::*;
-use self::latex_environment::*;
-use self::latex_label::*;
-use crate::workspace::*;
-use futures_boxed::boxed;
-use lsp_types::*;
+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>,
@@ -34,16 +38,16 @@ impl Default for PrepareRenameProvider {
}
}
+#[async_trait]
impl FeatureProvider for PrepareRenameProvider {
type Params = TextDocumentPositionParams;
type Output = Option<Range>;
- #[boxed]
async fn execute<'a>(
&'a self,
- request: &'a FeatureRequest<TextDocumentPositionParams>,
+ req: &'a FeatureRequest<TextDocumentPositionParams>,
) -> Option<Range> {
- self.provider.execute(request).await
+ self.provider.execute(req).await
}
}
@@ -70,11 +74,11 @@ impl Default for RenameProvider {
}
}
+#[async_trait]
impl FeatureProvider for RenameProvider {
type Params = RenameParams;
type Output = Option<WorkspaceEdit>;
- #[boxed]
async fn execute<'a>(
&'a self,
request: &'a FeatureRequest<RenameParams>,