aboutsummaryrefslogtreecommitdiff
path: root/crates/ide/src/prime_caches.rs
diff options
context:
space:
mode:
authorIgor Aleksanov <[email protected]>2020-08-14 05:34:07 +0100
committerIgor Aleksanov <[email protected]>2020-08-14 05:34:07 +0100
commitc26c911ec1e6c2ad1dcb7d155a6a1d528839ad1a (patch)
tree7cff36c38234be0afb65273146d8247083a5cfeb /crates/ide/src/prime_caches.rs
parent3c018bf84de5c693b5ee1c6bec0fed3b201c2060 (diff)
parentf1f73649a686dc6e6449afc35e0fa6fed00e225d (diff)
Merge branch 'master' into add-disable-diagnostics
Diffstat (limited to 'crates/ide/src/prime_caches.rs')
-rw-r--r--crates/ide/src/prime_caches.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/crates/ide/src/prime_caches.rs b/crates/ide/src/prime_caches.rs
new file mode 100644
index 000000000..c5ab5a1d8
--- /dev/null
+++ b/crates/ide/src/prime_caches.rs
@@ -0,0 +1,12 @@
1//! rust-analyzer is lazy and doesn't not compute anything unless asked. This
2//! sometimes is counter productive when, for example, the first goto definition
3//! request takes longer to compute. This modules implemented prepopulating of
4//! various caches, it's not really advanced at the moment.
5
6use crate::{FileId, RootDatabase};
7
8pub(crate) fn prime_caches(db: &RootDatabase, files: Vec<FileId>) {
9 for file in files {
10 let _ = crate::syntax_highlighting::highlight(db, file, None, false);
11 }
12}