aboutsummaryrefslogtreecommitdiff
path: root/crates/ide/src/prime_caches.rs
diff options
context:
space:
mode:
authorZac Pullar-Strecker <[email protected]>2020-08-24 10:19:53 +0100
committerZac Pullar-Strecker <[email protected]>2020-08-24 10:20:13 +0100
commit7bbca7a1b3f9293d2f5cc5745199bc5f8396f2f0 (patch)
treebdb47765991cb973b2cd5481a088fac636bd326c /crates/ide/src/prime_caches.rs
parentca464650eeaca6195891199a93f4f76cf3e7e697 (diff)
parente65d48d1fb3d4d91d9dc1148a7a836ff5c9a3c87 (diff)
Merge remote-tracking branch 'upstream/master' into 503-hover-doc-links
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}