Skip to content

Commit f42c15b

Browse files
authored
Merge pull request #21157 from Wilfred/task_queue_naming
minor: Use 'deferred task' terminology consistently
2 parents a65c212 + 3f74f22 commit f42c15b

File tree

4 files changed

+29
-29
lines changed

4 files changed

+29
-29
lines changed

crates/rust-analyzer/src/global_state.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ use crate::{
4545
op_queue::{Cause, OpQueue},
4646
reload,
4747
target_spec::{CargoTargetSpec, ProjectJsonTargetSpec, TargetSpec},
48-
task_pool::{TaskPool, TaskQueue},
48+
task_pool::{DeferredTaskQueue, TaskPool},
4949
test_runner::{CargoTestHandle, CargoTestMessage},
5050
};
5151

@@ -186,7 +186,8 @@ pub(crate) struct GlobalState {
186186
/// For certain features, such as [`GlobalState::handle_discover_msg`],
187187
/// this queue should run only *after* [`GlobalState::process_changes`] has
188188
/// been called.
189-
pub(crate) deferred_task_queue: TaskQueue,
189+
pub(crate) deferred_task_queue: DeferredTaskQueue,
190+
190191
/// HACK: Workaround for https://github.com/rust-lang/rust-analyzer/issues/19709
191192
/// This is marked true if we failed to load a crate root file at crate graph creation,
192193
/// which will usually end up causing a bunch of incorrect diagnostics on startup.
@@ -241,9 +242,9 @@ impl GlobalState {
241242
};
242243
let cancellation_pool = thread::Pool::new(1);
243244

244-
let task_queue = {
245+
let deferred_task_queue = {
245246
let (sender, receiver) = unbounded();
246-
TaskQueue { sender, receiver }
247+
DeferredTaskQueue { sender, receiver }
247248
};
248249

249250
let mut analysis_host = AnalysisHost::new(config.lru_parse_query_capacity());
@@ -314,7 +315,7 @@ impl GlobalState {
314315
prime_caches_queue: OpQueue::default(),
315316
discover_workspace_queue: OpQueue::default(),
316317

317-
deferred_task_queue: task_queue,
318+
deferred_task_queue,
318319
incomplete_crate_graph: false,
319320

320321
minicore: MiniCoreRustAnalyzerInternalOnly::default(),
@@ -540,10 +541,9 @@ impl GlobalState {
540541
// didn't find anything (to make up for the lack of precision).
541542
{
542543
if !matches!(&workspace_structure_change, Some((.., true))) {
543-
_ = self
544-
.deferred_task_queue
545-
.sender
546-
.send(crate::main_loop::QueuedTask::CheckProcMacroSources(modified_rust_files));
544+
_ = self.deferred_task_queue.sender.send(
545+
crate::main_loop::DeferredTask::CheckProcMacroSources(modified_rust_files),
546+
);
547547
}
548548
// FIXME: ideally we should only trigger a workspace fetch for non-library changes
549549
// but something's going wrong with the source root business when we add a new local

crates/rust-analyzer/src/handlers/notification.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ pub(crate) fn handle_did_open_text_document(
9191
let _ = state
9292
.deferred_task_queue
9393
.sender
94-
.send(crate::main_loop::QueuedTask::CheckIfIndexed(params.text_document.uri));
94+
.send(crate::main_loop::DeferredTask::CheckIfIndexed(params.text_document.uri));
9595
}
9696
}
9797
Ok(())

crates/rust-analyzer/src/main_loop.rs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ pub fn main_loop(config: Config, connection: Connection) -> anyhow::Result<()> {
7474
enum Event {
7575
Lsp(lsp_server::Message),
7676
Task(Task),
77-
QueuedTask(QueuedTask),
77+
DeferredTask(DeferredTask),
7878
Vfs(vfs::loader::Message),
7979
Flycheck(FlycheckMessage),
8080
TestResult(CargoTestMessage),
@@ -89,7 +89,7 @@ impl fmt::Display for Event {
8989
Event::Task(_) => write!(f, "Event::Task"),
9090
Event::Vfs(_) => write!(f, "Event::Vfs"),
9191
Event::Flycheck(_) => write!(f, "Event::Flycheck"),
92-
Event::QueuedTask(_) => write!(f, "Event::QueuedTask"),
92+
Event::DeferredTask(_) => write!(f, "Event::DeferredTask"),
9393
Event::TestResult(_) => write!(f, "Event::TestResult"),
9494
Event::DiscoverProject(_) => write!(f, "Event::DiscoverProject"),
9595
Event::FetchWorkspaces(_) => write!(f, "Event::SwitchWorkspaces"),
@@ -98,7 +98,7 @@ impl fmt::Display for Event {
9898
}
9999

100100
#[derive(Debug)]
101-
pub(crate) enum QueuedTask {
101+
pub(crate) enum DeferredTask {
102102
CheckIfIndexed(lsp_types::Url),
103103
CheckProcMacroSources(Vec<FileId>),
104104
}
@@ -164,7 +164,7 @@ impl fmt::Debug for Event {
164164
match self {
165165
Event::Lsp(it) => fmt::Debug::fmt(it, f),
166166
Event::Task(it) => fmt::Debug::fmt(it, f),
167-
Event::QueuedTask(it) => fmt::Debug::fmt(it, f),
167+
Event::DeferredTask(it) => fmt::Debug::fmt(it, f),
168168
Event::Vfs(it) => fmt::Debug::fmt(it, f),
169169
Event::Flycheck(it) => fmt::Debug::fmt(it, f),
170170
Event::TestResult(it) => fmt::Debug::fmt(it, f),
@@ -279,7 +279,7 @@ impl GlobalState {
279279
task.map(Event::Task),
280280

281281
recv(self.deferred_task_queue.receiver) -> task =>
282-
task.map(Event::QueuedTask),
282+
task.map(Event::DeferredTask),
283283

284284
recv(self.fmt_pool.receiver) -> task =>
285285
task.map(Event::Task),
@@ -323,12 +323,12 @@ impl GlobalState {
323323
lsp_server::Message::Notification(not) => self.on_notification(not),
324324
lsp_server::Message::Response(resp) => self.complete_request(resp),
325325
},
326-
Event::QueuedTask(task) => {
326+
Event::DeferredTask(task) => {
327327
let _p = tracing::info_span!("GlobalState::handle_event/queued_task").entered();
328-
self.handle_queued_task(task);
329-
// Coalesce multiple task events into one loop turn
328+
self.handle_deferred_task(task);
329+
// Coalesce multiple deferred task events into one loop turn
330330
while let Ok(task) = self.deferred_task_queue.receiver.try_recv() {
331-
self.handle_queued_task(task);
331+
self.handle_deferred_task(task);
332332
}
333333
}
334334
Event::Task(task) => {
@@ -981,9 +981,9 @@ impl GlobalState {
981981
}
982982
}
983983

984-
fn handle_queued_task(&mut self, task: QueuedTask) {
984+
fn handle_deferred_task(&mut self, task: DeferredTask) {
985985
match task {
986-
QueuedTask::CheckIfIndexed(uri) => {
986+
DeferredTask::CheckIfIndexed(uri) => {
987987
let snap = self.snapshot();
988988

989989
self.task_pool.handle.spawn_with_sender(ThreadIntent::Worker, move |sender| {
@@ -1007,7 +1007,7 @@ impl GlobalState {
10071007
}
10081008
});
10091009
}
1010-
QueuedTask::CheckProcMacroSources(modified_rust_files) => {
1010+
DeferredTask::CheckProcMacroSources(modified_rust_files) => {
10111011
let analysis = AssertUnwindSafe(self.snapshot().analysis);
10121012
self.task_pool.handle.spawn_with_sender(stdx::thread::ThreadIntent::Worker, {
10131013
move |sender| {

crates/rust-analyzer/src/task_pool.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ use std::panic::UnwindSafe;
66
use crossbeam_channel::Sender;
77
use stdx::thread::{Pool, ThreadIntent};
88

9-
use crate::main_loop::QueuedTask;
9+
use crate::main_loop::DeferredTask;
1010

1111
pub(crate) struct TaskPool<T> {
1212
sender: Sender<T>,
@@ -45,11 +45,11 @@ impl<T> TaskPool<T> {
4545
}
4646
}
4747

48-
/// `TaskQueue`, like its name suggests, queues tasks.
48+
/// `DeferredTaskQueue` holds deferred tasks.
4949
///
50-
/// This should only be used if a task must run after [`GlobalState::process_changes`]
51-
/// has been called.
52-
pub(crate) struct TaskQueue {
53-
pub(crate) sender: crossbeam_channel::Sender<QueuedTask>,
54-
pub(crate) receiver: crossbeam_channel::Receiver<QueuedTask>,
50+
/// These are tasks that must be run after
51+
/// [`GlobalState::process_changes`] has been called.
52+
pub(crate) struct DeferredTaskQueue {
53+
pub(crate) sender: crossbeam_channel::Sender<DeferredTask>,
54+
pub(crate) receiver: crossbeam_channel::Receiver<DeferredTask>,
5555
}

0 commit comments

Comments
 (0)