@@ -7,6 +7,8 @@ use ra_ap_hir::AdtId::{EnumId, StructId, UnionId};
7
7
use ra_ap_hir:: { Crate , ModuleDefId } ;
8
8
use ra_ap_load_cargo:: { load_workspace_at, LoadCargoConfig , ProcMacroServerChoice } ;
9
9
use ra_ap_project_model:: CargoConfig ;
10
+ use ra_ap_project_model:: RustLibSource ;
11
+ use ra_ap_vfs:: AbsPathBuf ;
10
12
use std:: fs;
11
13
use std:: path:: { Path , PathBuf } ;
12
14
@@ -30,18 +32,19 @@ fn main() -> anyhow::Result<()> {
30
32
} ;
31
33
32
34
let config = CargoConfig {
35
+ sysroot : Some ( RustLibSource :: Discover ) ,
33
36
..Default :: default ( )
34
37
} ;
35
- let no_progress = |_ | ( ) ;
38
+ let progress = |t | ( println ! ( "progress: {}" , t ) ) ;
36
39
let load_config = LoadCargoConfig {
37
40
load_out_dirs_from_check : true ,
38
41
with_proc_macro_server : ProcMacroServerChoice :: Sysroot ,
39
42
prefill_caches : false ,
40
43
} ;
41
44
for input in cfg. inputs {
42
- let ( db, vfs, _macro_server) =
43
- load_workspace_at ( & input , & config , & load_config , & no_progress )
44
- . context ( "loading inputs" ) ? ;
45
+ let ( db, vfs, _macro_server) = load_workspace_at ( & input , & config , & load_config , & progress )
46
+ . context ( "loading inputs" ) ? ;
47
+ _macro_server . expect ( "no macro server" ) ;
45
48
let crates = <dyn DefDatabase >:: crate_graph ( & db) ;
46
49
for crate_id in crates. iter ( ) {
47
50
let krate = Crate :: from ( crate_id) ;
0 commit comments