Skip to content

Commit eba26af

Browse files
committed
Auto merge of #12314 - jonas-schievink:proc-macro-load, r=jonas-schievink
minor: simplify
2 parents 46b5483 + b277911 commit eba26af

File tree

4 files changed

+11
-15
lines changed

4 files changed

+11
-15
lines changed

crates/project-model/src/tests.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ fn rooted_project_json(data: ProjectJsonData) -> ProjectJson {
8888
}
8989

9090
fn to_crate_graph(project_workspace: ProjectWorkspace) -> CrateGraph {
91-
project_workspace.to_crate_graph(&Default::default(), &mut |_, _| Vec::new(), &mut {
91+
project_workspace.to_crate_graph(&mut |_, _| Vec::new(), &mut {
9292
let mut counter = 0;
9393
move |_path| {
9494
counter += 1;

crates/project-model/src/workspace.rs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -389,14 +389,10 @@ impl ProjectWorkspace {
389389

390390
pub fn to_crate_graph(
391391
&self,
392-
dummy_replace: &FxHashMap<Box<str>, Box<[Box<str>]>>,
393-
load_proc_macro: &mut dyn FnMut(&AbsPath, &[Box<str>]) -> Vec<ProcMacro>,
392+
load_proc_macro: &mut dyn FnMut(&str, &AbsPath) -> Vec<ProcMacro>,
394393
load: &mut dyn FnMut(&AbsPath) -> Option<FileId>,
395394
) -> CrateGraph {
396395
let _p = profile::span("ProjectWorkspace::to_crate_graph");
397-
let load_proc_macro = &mut |crate_name: &_, path: &_| {
398-
load_proc_macro(path, dummy_replace.get(crate_name).map(|it| &**it).unwrap_or_default())
399-
};
400396

401397
let mut crate_graph = match self {
402398
ProjectWorkspace::Json { project, sysroot, rustc_cfg } => project_json_to_crate_graph(

crates/rust-analyzer/src/cli/load_cargo.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,7 @@ pub fn load_workspace(
6666
};
6767

6868
let crate_graph = ws.to_crate_graph(
69-
&Default::default(),
70-
&mut |path: &AbsPath, _| load_proc_macro(proc_macro_client.as_ref(), path, &[]),
69+
&mut |_, path: &AbsPath| load_proc_macro(proc_macro_client.as_ref(), path, &[]),
7170
&mut |path: &AbsPath| {
7271
let contents = loader.load_sync(path);
7372
let path = vfs::VfsPath::from(path.to_path_buf());

crates/rust-analyzer/src/reload.rs

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -319,8 +319,13 @@ impl GlobalState {
319319
// Create crate graph from all the workspaces
320320
let crate_graph = {
321321
let proc_macro_client = self.proc_macro_client.as_ref();
322-
let mut load_proc_macro = move |path: &AbsPath, dummy_replace: &_| {
323-
load_proc_macro(proc_macro_client, path, dummy_replace)
322+
let dummy_replacements = self.config.dummy_replacements();
323+
let mut load_proc_macro = move |crate_name: &str, path: &AbsPath| {
324+
load_proc_macro(
325+
proc_macro_client,
326+
path,
327+
dummy_replacements.get(crate_name).map(|v| &**v).unwrap_or_default(),
328+
)
324329
};
325330

326331
let vfs = &mut self.vfs.write().0;
@@ -342,11 +347,7 @@ impl GlobalState {
342347

343348
let mut crate_graph = CrateGraph::default();
344349
for ws in self.workspaces.iter() {
345-
crate_graph.extend(ws.to_crate_graph(
346-
self.config.dummy_replacements(),
347-
&mut load_proc_macro,
348-
&mut load,
349-
));
350+
crate_graph.extend(ws.to_crate_graph(&mut load_proc_macro, &mut load));
350351
}
351352
crate_graph
352353
};

0 commit comments

Comments
 (0)