Only prefill caches in the completion benchmark
This commit is contained in:
@@ -70,6 +70,7 @@ impl AnalysisStatsCmd {
|
|||||||
load_out_dirs_from_check: self.enable_build_scripts,
|
load_out_dirs_from_check: self.enable_build_scripts,
|
||||||
wrap_rustc: false,
|
wrap_rustc: false,
|
||||||
with_proc_macro: self.enable_proc_macros,
|
with_proc_macro: self.enable_proc_macros,
|
||||||
|
prefill_caches: false,
|
||||||
};
|
};
|
||||||
let (host, vfs, _proc_macro) =
|
let (host, vfs, _proc_macro) =
|
||||||
load_workspace_at(&self.path, &cargo_config, &load_cargo_config, &|_| {})?;
|
load_workspace_at(&self.path, &cargo_config, &load_cargo_config, &|_| {})?;
|
||||||
|
|||||||
@@ -34,8 +34,12 @@ pub fn diagnostics(
|
|||||||
with_proc_macro: bool,
|
with_proc_macro: bool,
|
||||||
) -> Result<()> {
|
) -> Result<()> {
|
||||||
let cargo_config = Default::default();
|
let cargo_config = Default::default();
|
||||||
let load_cargo_config =
|
let load_cargo_config = LoadCargoConfig {
|
||||||
LoadCargoConfig { load_out_dirs_from_check, with_proc_macro, wrap_rustc: false };
|
load_out_dirs_from_check,
|
||||||
|
with_proc_macro,
|
||||||
|
wrap_rustc: false,
|
||||||
|
prefill_caches: false,
|
||||||
|
};
|
||||||
let (host, _vfs, _proc_macro) =
|
let (host, _vfs, _proc_macro) =
|
||||||
load_workspace_at(path, &cargo_config, &load_cargo_config, &|_| {})?;
|
load_workspace_at(path, &cargo_config, &load_cargo_config, &|_| {})?;
|
||||||
let db = host.raw_database();
|
let db = host.raw_database();
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ pub(crate) struct LoadCargoConfig {
|
|||||||
pub(crate) load_out_dirs_from_check: bool,
|
pub(crate) load_out_dirs_from_check: bool,
|
||||||
pub(crate) wrap_rustc: bool,
|
pub(crate) wrap_rustc: bool,
|
||||||
pub(crate) with_proc_macro: bool,
|
pub(crate) with_proc_macro: bool,
|
||||||
|
pub(crate) prefill_caches: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) fn load_workspace_at(
|
pub(crate) fn load_workspace_at(
|
||||||
@@ -83,7 +84,9 @@ fn load_workspace(
|
|||||||
let host =
|
let host =
|
||||||
load_crate_graph(crate_graph, project_folders.source_root_config, &mut vfs, &receiver);
|
load_crate_graph(crate_graph, project_folders.source_root_config, &mut vfs, &receiver);
|
||||||
|
|
||||||
host.analysis().prime_caches(|_| {})?;
|
if config.prefill_caches {
|
||||||
|
host.analysis().prime_caches(|_| {})?;
|
||||||
|
}
|
||||||
Ok((host, vfs, proc_macro_client))
|
Ok((host, vfs, proc_macro_client))
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -146,6 +149,7 @@ mod tests {
|
|||||||
load_out_dirs_from_check: false,
|
load_out_dirs_from_check: false,
|
||||||
wrap_rustc: false,
|
wrap_rustc: false,
|
||||||
with_proc_macro: false,
|
with_proc_macro: false,
|
||||||
|
prefill_caches: false,
|
||||||
};
|
};
|
||||||
let (host, _vfs, _proc_macro) =
|
let (host, _vfs, _proc_macro) =
|
||||||
load_workspace_at(path, &cargo_config, &load_cargo_config, &|_| {})?;
|
load_workspace_at(path, &cargo_config, &load_cargo_config, &|_| {})?;
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ pub fn apply_ssr_rules(rules: Vec<SsrRule>) -> Result<()> {
|
|||||||
load_out_dirs_from_check: true,
|
load_out_dirs_from_check: true,
|
||||||
wrap_rustc: false,
|
wrap_rustc: false,
|
||||||
with_proc_macro: true,
|
with_proc_macro: true,
|
||||||
|
prefill_caches: false,
|
||||||
};
|
};
|
||||||
let (host, vfs, _proc_macro) =
|
let (host, vfs, _proc_macro) =
|
||||||
load_workspace_at(&std::env::current_dir()?, &cargo_config, &load_cargo_config, &|_| {})?;
|
load_workspace_at(&std::env::current_dir()?, &cargo_config, &load_cargo_config, &|_| {})?;
|
||||||
@@ -39,8 +40,12 @@ pub fn search_for_patterns(patterns: Vec<SsrPattern>, debug_snippet: Option<Stri
|
|||||||
use ide_db::base_db::SourceDatabaseExt;
|
use ide_db::base_db::SourceDatabaseExt;
|
||||||
use ide_db::symbol_index::SymbolsDatabase;
|
use ide_db::symbol_index::SymbolsDatabase;
|
||||||
let cargo_config = Default::default();
|
let cargo_config = Default::default();
|
||||||
let load_cargo_config =
|
let load_cargo_config = LoadCargoConfig {
|
||||||
LoadCargoConfig { load_out_dirs_from_check: true, wrap_rustc: true, with_proc_macro: true };
|
load_out_dirs_from_check: true,
|
||||||
|
wrap_rustc: true,
|
||||||
|
with_proc_macro: true,
|
||||||
|
prefill_caches: false,
|
||||||
|
};
|
||||||
let (host, _vfs, _proc_macro) =
|
let (host, _vfs, _proc_macro) =
|
||||||
load_workspace_at(&std::env::current_dir()?, &cargo_config, &load_cargo_config, &|_| {})?;
|
load_workspace_at(&std::env::current_dir()?, &cargo_config, &load_cargo_config, &|_| {})?;
|
||||||
let db = host.raw_database();
|
let db = host.raw_database();
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ fn integrated_highlighting_benchmark() {
|
|||||||
load_out_dirs_from_check: true,
|
load_out_dirs_from_check: true,
|
||||||
wrap_rustc: false,
|
wrap_rustc: false,
|
||||||
with_proc_macro: false,
|
with_proc_macro: false,
|
||||||
|
prefill_caches: false,
|
||||||
};
|
};
|
||||||
|
|
||||||
let (mut host, vfs, _proc_macro) = {
|
let (mut host, vfs, _proc_macro) = {
|
||||||
@@ -91,6 +92,7 @@ fn integrated_completion_benchmark() {
|
|||||||
load_out_dirs_from_check: true,
|
load_out_dirs_from_check: true,
|
||||||
wrap_rustc: false,
|
wrap_rustc: false,
|
||||||
with_proc_macro: false,
|
with_proc_macro: false,
|
||||||
|
prefill_caches: true,
|
||||||
};
|
};
|
||||||
|
|
||||||
let (mut host, vfs, _proc_macro) = {
|
let (mut host, vfs, _proc_macro) = {
|
||||||
|
|||||||
Reference in New Issue
Block a user