mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-12-25 04:23:25 +00:00
5035: Less error-prone naming r=matklad a=matklad bors r+ 🤖 5037: Don't watch dirs if not asked to r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
This commit is contained in:
commit
7e61f4c59e
4 changed files with 13 additions and 22 deletions
|
@ -67,8 +67,8 @@ pub(crate) fn load(
|
|||
// wait until Vfs has loaded all roots
|
||||
for task in receiver {
|
||||
match task {
|
||||
vfs::loader::Message::Progress { n_entries_done, n_entries_total } => {
|
||||
if n_entries_done == n_entries_total {
|
||||
vfs::loader::Message::Progress { n_done, n_total } => {
|
||||
if n_done == n_total {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -305,18 +305,12 @@ fn loop_turn(
|
|||
}
|
||||
}
|
||||
}
|
||||
vfs::loader::Message::Progress { n_entries_total, n_entries_done } => {
|
||||
if n_entries_done == n_entries_done {
|
||||
vfs::loader::Message::Progress { n_total, n_done } => {
|
||||
if n_done == n_total {
|
||||
loop_state.status = Status::Ready;
|
||||
became_ready = true;
|
||||
}
|
||||
report_progress(
|
||||
loop_state,
|
||||
&connection.sender,
|
||||
n_entries_done,
|
||||
n_entries_total,
|
||||
"roots scanned",
|
||||
)
|
||||
report_progress(loop_state, &connection.sender, n_done, n_total, "roots scanned")
|
||||
}
|
||||
},
|
||||
Event::CheckWatcher(task) => on_check_task(task, global_state, task_sender)?,
|
||||
|
|
|
@ -89,8 +89,8 @@ impl LoaderActor {
|
|||
match event {
|
||||
Event::Message(msg) => match msg {
|
||||
Message::Config(config) => {
|
||||
let n_entries_total = config.load.len();
|
||||
self.send(loader::Message::Progress { n_entries_total, n_entries_done: 0 });
|
||||
let n_total = config.load.len();
|
||||
self.send(loader::Message::Progress { n_total, n_done: 0 });
|
||||
|
||||
self.unwatch_all();
|
||||
self.config.clear();
|
||||
|
@ -99,10 +99,7 @@ impl LoaderActor {
|
|||
let watch = config.watch.contains(&i);
|
||||
let files = self.load_entry(entry, watch);
|
||||
self.send(loader::Message::Loaded { files });
|
||||
self.send(loader::Message::Progress {
|
||||
n_entries_total,
|
||||
n_entries_done: i + 1,
|
||||
});
|
||||
self.send(loader::Message::Progress { n_total, n_done: i + 1 });
|
||||
}
|
||||
self.config.sort_by(|x, y| x.0.cmp(&y.0));
|
||||
}
|
||||
|
@ -199,7 +196,7 @@ impl LoaderActor {
|
|||
let is_dir = entry.file_type().is_dir();
|
||||
let is_file = entry.file_type().is_file();
|
||||
let abs_path = AbsPathBuf::try_from(entry.into_path()).unwrap();
|
||||
if is_dir {
|
||||
if is_dir && watch {
|
||||
self.watch(abs_path.clone());
|
||||
}
|
||||
let rel_path = abs_path.strip_prefix(&path)?;
|
||||
|
|
|
@ -16,7 +16,7 @@ pub struct Config {
|
|||
}
|
||||
|
||||
pub enum Message {
|
||||
Progress { n_entries_total: usize, n_entries_done: usize },
|
||||
Progress { n_total: usize, n_done: usize },
|
||||
Loaded { files: Vec<(AbsPathBuf, Option<Vec<u8>>)> },
|
||||
}
|
||||
|
||||
|
@ -56,10 +56,10 @@ impl fmt::Debug for Message {
|
|||
Message::Loaded { files } => {
|
||||
f.debug_struct("Loaded").field("n_files", &files.len()).finish()
|
||||
}
|
||||
Message::Progress { n_entries_total, n_entries_done } => f
|
||||
Message::Progress { n_total, n_done } => f
|
||||
.debug_struct("Progress")
|
||||
.field("n_entries_total", n_entries_total)
|
||||
.field("n_entries_done", n_entries_done)
|
||||
.field("n_total", n_total)
|
||||
.field("n_done", n_done)
|
||||
.finish(),
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue