summaryrefslogtreecommitdiff
path: root/support/texlab/src/features/completion/user_environment.rs
diff options
context:
space:
mode:
Diffstat (limited to 'support/texlab/src/features/completion/user_environment.rs')
-rw-r--r--support/texlab/src/features/completion/user_environment.rs16
1 files changed, 6 insertions, 10 deletions
diff --git a/support/texlab/src/features/completion/user_environment.rs b/support/texlab/src/features/completion/user_environment.rs
index 5529143adc..3db135865e 100644
--- a/support/texlab/src/features/completion/user_environment.rs
+++ b/support/texlab/src/features/completion/user_environment.rs
@@ -1,4 +1,3 @@
-use cancellation::CancellationToken;
use lsp_types::CompletionParams;
use crate::features::cursor::CursorContext;
@@ -8,21 +7,18 @@ use super::types::{InternalCompletionItem, InternalCompletionItemData};
pub fn complete_user_environments<'a>(
context: &'a CursorContext<CompletionParams>,
items: &mut Vec<InternalCompletionItem<'a>>,
- cancellation_token: &CancellationToken,
) -> Option<()> {
- cancellation_token.result().ok()?;
-
let (name, range) = context.find_environment_name()?;
- for document in &context.request.subset.documents {
+ for document in context.request.workspace.documents_by_uri.values() {
if let Some(data) = document.data.as_latex() {
for name in data
.extras
.environment_names
.iter()
.filter(|n| n.as_str() != name)
+ .cloned()
{
- cancellation_token.result().ok()?;
items.push(InternalCompletionItem::new(
range,
InternalCompletionItemData::UserEnvironment { name },
@@ -36,7 +32,7 @@ pub fn complete_user_environments<'a>(
#[cfg(test)]
mod tests {
- use cstree::TextRange;
+ use rowan::TextRange;
use crate::features::testing::FeatureTester;
@@ -54,7 +50,7 @@ mod tests {
let context = CursorContext::new(request);
let mut actual_items = Vec::new();
- complete_user_environments(&context, &mut actual_items, CancellationToken::none());
+ complete_user_environments(&context, &mut actual_items);
assert!(actual_items.is_empty());
}
@@ -71,7 +67,7 @@ mod tests {
let context = CursorContext::new(request);
let mut actual_items = Vec::new();
- complete_user_environments(&context, &mut actual_items, CancellationToken::none());
+ complete_user_environments(&context, &mut actual_items);
assert!(actual_items.is_empty());
}
@@ -91,7 +87,7 @@ mod tests {
let context = CursorContext::new(request);
let mut actual_items = Vec::new();
- complete_user_environments(&context, &mut actual_items, CancellationToken::none());
+ complete_user_environments(&context, &mut actual_items);
assert_eq!(actual_items.len(), 1);
for item in actual_items {