mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-10-22 08:12:04 +00:00
refactor: Remove CrateGraphBuilder::iter_mut
This commit is contained in:
parent
78aee2a424
commit
7edfeb9674
22 changed files with 75 additions and 1297 deletions
|
@ -311,6 +311,7 @@ pub struct CrateData<Id> {
|
||||||
pub type CrateDataBuilder = CrateData<CrateBuilderId>;
|
pub type CrateDataBuilder = CrateData<CrateBuilderId>;
|
||||||
pub type BuiltCrateData = CrateData<Crate>;
|
pub type BuiltCrateData = CrateData<Crate>;
|
||||||
|
|
||||||
|
/// Crate data unrelated to analysis.
|
||||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||||
pub struct ExtraCrateData {
|
pub struct ExtraCrateData {
|
||||||
pub version: Option<String>,
|
pub version: Option<String>,
|
||||||
|
@ -601,12 +602,6 @@ impl CrateGraphBuilder {
|
||||||
self.arena.iter().map(|(idx, _)| idx)
|
self.arena.iter().map(|(idx, _)| idx)
|
||||||
}
|
}
|
||||||
|
|
||||||
// FIXME: used for fixing up the toolchain sysroot, should be removed and done differently
|
|
||||||
#[doc(hidden)]
|
|
||||||
pub fn iter_mut(&mut self) -> impl Iterator<Item = (CrateBuilderId, &mut CrateBuilder)> + '_ {
|
|
||||||
self.arena.iter_mut()
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Returns an iterator over all transitive dependencies of the given crate,
|
/// Returns an iterator over all transitive dependencies of the given crate,
|
||||||
/// including the crate itself.
|
/// including the crate itself.
|
||||||
pub fn transitive_deps(&self, of: CrateBuilderId) -> impl Iterator<Item = CrateBuilderId> {
|
pub fn transitive_deps(&self, of: CrateBuilderId) -> impl Iterator<Item = CrateBuilderId> {
|
||||||
|
|
|
@ -264,7 +264,7 @@ impl fmt::Display for InactiveReason {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// A `CfgOptions` that implements `Hash`, for the sake of hashing only.
|
/// A `CfgOptions` that implements `Hash`, for the sake of hashing only.
|
||||||
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
|
#[derive(Debug, Clone, PartialEq, Eq, Hash)]
|
||||||
pub struct HashableCfgOptions {
|
pub struct HashableCfgOptions {
|
||||||
_enabled: Box<[CfgAtom]>,
|
_enabled: Box<[CfgAtom]>,
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,6 +35,8 @@ pub struct CargoWorkspace {
|
||||||
target_directory: AbsPathBuf,
|
target_directory: AbsPathBuf,
|
||||||
manifest_path: ManifestPath,
|
manifest_path: ManifestPath,
|
||||||
is_virtual_workspace: bool,
|
is_virtual_workspace: bool,
|
||||||
|
/// Whether this workspace represents the sysroot workspace.
|
||||||
|
is_sysroot: bool,
|
||||||
/// Environment variables set in the `.cargo/config` file.
|
/// Environment variables set in the `.cargo/config` file.
|
||||||
config_env: Env,
|
config_env: Env,
|
||||||
}
|
}
|
||||||
|
@ -418,6 +420,7 @@ impl CargoWorkspace {
|
||||||
mut meta: cargo_metadata::Metadata,
|
mut meta: cargo_metadata::Metadata,
|
||||||
ws_manifest_path: ManifestPath,
|
ws_manifest_path: ManifestPath,
|
||||||
cargo_config_env: Env,
|
cargo_config_env: Env,
|
||||||
|
is_sysroot: bool,
|
||||||
) -> CargoWorkspace {
|
) -> CargoWorkspace {
|
||||||
let mut pkg_by_id = FxHashMap::default();
|
let mut pkg_by_id = FxHashMap::default();
|
||||||
let mut packages = Arena::default();
|
let mut packages = Arena::default();
|
||||||
|
@ -539,6 +542,7 @@ impl CargoWorkspace {
|
||||||
target_directory,
|
target_directory,
|
||||||
manifest_path: ws_manifest_path,
|
manifest_path: ws_manifest_path,
|
||||||
is_virtual_workspace,
|
is_virtual_workspace,
|
||||||
|
is_sysroot,
|
||||||
config_env: cargo_config_env,
|
config_env: cargo_config_env,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -632,4 +636,8 @@ impl CargoWorkspace {
|
||||||
pub fn env(&self) -> &Env {
|
pub fn env(&self) -> &Env {
|
||||||
&self.config_env
|
&self.config_env
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn is_sysroot(&self) -> bool {
|
||||||
|
self.is_sysroot
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -360,7 +360,7 @@ impl Sysroot {
|
||||||
res.packages.remove(idx);
|
res.packages.remove(idx);
|
||||||
});
|
});
|
||||||
|
|
||||||
let cargo_workspace = CargoWorkspace::new(res, library_manifest, Default::default());
|
let cargo_workspace = CargoWorkspace::new(res, library_manifest, Default::default(), true);
|
||||||
Some(RustLibSrcWorkspace::Workspace(cargo_workspace))
|
Some(RustLibSrcWorkspace::Workspace(cargo_workspace))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,7 +33,7 @@ fn load_workspace_from_metadata(file: &str) -> ProjectWorkspace {
|
||||||
let meta: Metadata = get_test_json_file(file);
|
let meta: Metadata = get_test_json_file(file);
|
||||||
let manifest_path =
|
let manifest_path =
|
||||||
ManifestPath::try_from(AbsPathBuf::try_from(meta.workspace_root.clone()).unwrap()).unwrap();
|
ManifestPath::try_from(AbsPathBuf::try_from(meta.workspace_root.clone()).unwrap()).unwrap();
|
||||||
let cargo_workspace = CargoWorkspace::new(meta, manifest_path, Default::default());
|
let cargo_workspace = CargoWorkspace::new(meta, manifest_path, Default::default(), false);
|
||||||
ProjectWorkspace {
|
ProjectWorkspace {
|
||||||
kind: ProjectWorkspaceKind::Cargo {
|
kind: ProjectWorkspaceKind::Cargo {
|
||||||
cargo: cargo_workspace,
|
cargo: cargo_workspace,
|
||||||
|
@ -54,7 +54,7 @@ fn load_workspace_from_metadata(file: &str) -> ProjectWorkspace {
|
||||||
fn load_rust_project(file: &str) -> (CrateGraphBuilder, ProcMacroPaths) {
|
fn load_rust_project(file: &str) -> (CrateGraphBuilder, ProcMacroPaths) {
|
||||||
let data = get_test_json_file(file);
|
let data = get_test_json_file(file);
|
||||||
let project = rooted_project_json(data);
|
let project = rooted_project_json(data);
|
||||||
let sysroot = get_fake_sysroot();
|
let sysroot = Sysroot::empty();
|
||||||
let project_workspace = ProjectWorkspace {
|
let project_workspace = ProjectWorkspace {
|
||||||
kind: ProjectWorkspaceKind::Json(project),
|
kind: ProjectWorkspaceKind::Json(project),
|
||||||
sysroot,
|
sysroot,
|
||||||
|
@ -101,36 +101,11 @@ fn replace_root(s: &mut String, direction: bool) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn replace_fake_sys_root(s: &mut String) {
|
|
||||||
let fake_sysroot_path = get_test_path("fake-sysroot");
|
|
||||||
let fake_sysroot_path = if cfg!(windows) {
|
|
||||||
let normalized_path = fake_sysroot_path.as_str().replace('\\', r#"\\"#);
|
|
||||||
format!(r#"{normalized_path}\\"#)
|
|
||||||
} else {
|
|
||||||
format!("{}/", fake_sysroot_path.as_str())
|
|
||||||
};
|
|
||||||
*s = s.replace(&fake_sysroot_path, "$FAKESYSROOT$")
|
|
||||||
}
|
|
||||||
|
|
||||||
fn get_test_path(file: &str) -> Utf8PathBuf {
|
fn get_test_path(file: &str) -> Utf8PathBuf {
|
||||||
let base = Utf8PathBuf::from(env!("CARGO_MANIFEST_DIR"));
|
let base = Utf8PathBuf::from(env!("CARGO_MANIFEST_DIR"));
|
||||||
base.join("test_data").join(file)
|
base.join("test_data").join(file)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_fake_sysroot() -> Sysroot {
|
|
||||||
let sysroot_path = get_test_path("fake-sysroot");
|
|
||||||
// there's no `libexec/` directory with a `proc-macro-srv` binary in that
|
|
||||||
// fake sysroot, so we give them both the same path:
|
|
||||||
let sysroot_dir = AbsPathBuf::assert(sysroot_path);
|
|
||||||
let sysroot_src_dir = sysroot_dir.clone();
|
|
||||||
let mut sysroot = Sysroot::new(Some(sysroot_dir), Some(sysroot_src_dir));
|
|
||||||
let loaded_sysroot = sysroot.load_workspace(&RustSourceWorkspaceConfig::default_cargo());
|
|
||||||
if let Some(loaded_sysroot) = loaded_sysroot {
|
|
||||||
sysroot.set_workspace(loaded_sysroot);
|
|
||||||
}
|
|
||||||
sysroot
|
|
||||||
}
|
|
||||||
|
|
||||||
fn rooted_project_json(data: ProjectJsonData) -> ProjectJson {
|
fn rooted_project_json(data: ProjectJsonData) -> ProjectJson {
|
||||||
let mut root = "$ROOT$".to_owned();
|
let mut root = "$ROOT$".to_owned();
|
||||||
replace_root(&mut root, true);
|
replace_root(&mut root, true);
|
||||||
|
@ -159,7 +134,6 @@ fn check_crate_graph(crate_graph: CrateGraphBuilder, expect: ExpectFile) {
|
||||||
|
|
||||||
replace_root(&mut crate_graph, false);
|
replace_root(&mut crate_graph, false);
|
||||||
replace_cargo(&mut crate_graph);
|
replace_cargo(&mut crate_graph);
|
||||||
replace_fake_sys_root(&mut crate_graph);
|
|
||||||
expect.assert_eq(&crate_graph);
|
expect.assert_eq(&crate_graph);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -256,7 +230,7 @@ fn smoke_test_real_sysroot_cargo() {
|
||||||
let meta: Metadata = get_test_json_file("hello-world-metadata.json");
|
let meta: Metadata = get_test_json_file("hello-world-metadata.json");
|
||||||
let manifest_path =
|
let manifest_path =
|
||||||
ManifestPath::try_from(AbsPathBuf::try_from(meta.workspace_root.clone()).unwrap()).unwrap();
|
ManifestPath::try_from(AbsPathBuf::try_from(meta.workspace_root.clone()).unwrap()).unwrap();
|
||||||
let cargo_workspace = CargoWorkspace::new(meta, manifest_path, Default::default());
|
let cargo_workspace = CargoWorkspace::new(meta, manifest_path, Default::default(), false);
|
||||||
let mut sysroot = Sysroot::discover(
|
let mut sysroot = Sysroot::discover(
|
||||||
AbsPath::assert(Utf8Path::new(env!("CARGO_MANIFEST_DIR"))),
|
AbsPath::assert(Utf8Path::new(env!("CARGO_MANIFEST_DIR"))),
|
||||||
&Default::default(),
|
&Default::default(),
|
||||||
|
|
|
@ -305,8 +305,12 @@ impl ProjectWorkspace {
|
||||||
&|_| (),
|
&|_| (),
|
||||||
) {
|
) {
|
||||||
Ok((meta, _error)) => {
|
Ok((meta, _error)) => {
|
||||||
let workspace =
|
let workspace = CargoWorkspace::new(
|
||||||
CargoWorkspace::new(meta, cargo_toml.clone(), Env::default());
|
meta,
|
||||||
|
cargo_toml.clone(),
|
||||||
|
Env::default(),
|
||||||
|
false,
|
||||||
|
);
|
||||||
let build_scripts = WorkspaceBuildScripts::rustc_crates(
|
let build_scripts = WorkspaceBuildScripts::rustc_crates(
|
||||||
&workspace,
|
&workspace,
|
||||||
workspace_dir,
|
workspace_dir,
|
||||||
|
@ -379,7 +383,7 @@ impl ProjectWorkspace {
|
||||||
"Failed to read Cargo metadata from Cargo.toml file {cargo_toml}, {toolchain:?}",
|
"Failed to read Cargo metadata from Cargo.toml file {cargo_toml}, {toolchain:?}",
|
||||||
)
|
)
|
||||||
})?;
|
})?;
|
||||||
let cargo = CargoWorkspace::new(meta, cargo_toml.clone(), cargo_config_extra_env);
|
let cargo = CargoWorkspace::new(meta, cargo_toml.clone(), cargo_config_extra_env, false);
|
||||||
if let Some(loaded_sysroot) = loaded_sysroot {
|
if let Some(loaded_sysroot) = loaded_sysroot {
|
||||||
sysroot.set_workspace(loaded_sysroot);
|
sysroot.set_workspace(loaded_sysroot);
|
||||||
}
|
}
|
||||||
|
@ -515,7 +519,7 @@ impl ProjectWorkspace {
|
||||||
let cargo_config_extra_env =
|
let cargo_config_extra_env =
|
||||||
cargo_config_env(detached_file, &config.extra_env, &sysroot);
|
cargo_config_env(detached_file, &config.extra_env, &sysroot);
|
||||||
(
|
(
|
||||||
CargoWorkspace::new(ws, detached_file.clone(), cargo_config_extra_env),
|
CargoWorkspace::new(ws, detached_file.clone(), cargo_config_extra_env, false),
|
||||||
WorkspaceBuildScripts::default(),
|
WorkspaceBuildScripts::default(),
|
||||||
error.map(Arc::new),
|
error.map(Arc::new),
|
||||||
)
|
)
|
||||||
|
@ -866,6 +870,7 @@ impl ProjectWorkspace {
|
||||||
extra_env,
|
extra_env,
|
||||||
cfg_overrides,
|
cfg_overrides,
|
||||||
self.set_test,
|
self.set_test,
|
||||||
|
false,
|
||||||
crate_ws_data,
|
crate_ws_data,
|
||||||
),
|
),
|
||||||
ProjectWorkspaceKind::Cargo { cargo, rustc, build_scripts, error: _ } => {
|
ProjectWorkspaceKind::Cargo { cargo, rustc, build_scripts, error: _ } => {
|
||||||
|
@ -968,6 +973,7 @@ fn project_json_to_crate_graph(
|
||||||
extra_env: &FxHashMap<String, String>,
|
extra_env: &FxHashMap<String, String>,
|
||||||
override_cfg: &CfgOverrides,
|
override_cfg: &CfgOverrides,
|
||||||
set_test: bool,
|
set_test: bool,
|
||||||
|
is_sysroot: bool,
|
||||||
crate_ws_data: Arc<CrateWorkspaceData>,
|
crate_ws_data: Arc<CrateWorkspaceData>,
|
||||||
) -> (CrateGraphBuilder, ProcMacroPaths) {
|
) -> (CrateGraphBuilder, ProcMacroPaths) {
|
||||||
let mut res = (CrateGraphBuilder::default(), ProcMacroPaths::default());
|
let mut res = (CrateGraphBuilder::default(), ProcMacroPaths::default());
|
||||||
|
@ -1023,7 +1029,7 @@ fn project_json_to_crate_graph(
|
||||||
target_cfgs.iter().chain(cfg.iter()).cloned().collect();
|
target_cfgs.iter().chain(cfg.iter()).cloned().collect();
|
||||||
|
|
||||||
if *is_workspace_member {
|
if *is_workspace_member {
|
||||||
if set_test {
|
if set_test && !is_sysroot {
|
||||||
// Add test cfg for local crates
|
// Add test cfg for local crates
|
||||||
cfg_options.insert_atom(sym::test.clone());
|
cfg_options.insert_atom(sym::test.clone());
|
||||||
}
|
}
|
||||||
|
@ -1049,10 +1055,14 @@ fn project_json_to_crate_graph(
|
||||||
None,
|
None,
|
||||||
env,
|
env,
|
||||||
if let Some(name) = display_name.clone() {
|
if let Some(name) = display_name.clone() {
|
||||||
|
if is_sysroot {
|
||||||
|
CrateOrigin::Lang(LangCrateOrigin::from(name.canonical_name().as_str()))
|
||||||
|
} else {
|
||||||
CrateOrigin::Local {
|
CrateOrigin::Local {
|
||||||
repo: repository.clone(),
|
repo: repository.clone(),
|
||||||
name: Some(name.canonical_name().to_owned()),
|
name: Some(name.canonical_name().to_owned()),
|
||||||
}
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
CrateOrigin::Local { repo: None, name: None }
|
CrateOrigin::Local { repo: None, name: None }
|
||||||
},
|
},
|
||||||
|
@ -1119,7 +1129,6 @@ fn cargo_to_crate_graph(
|
||||||
sysroot,
|
sysroot,
|
||||||
rustc_cfg.clone(),
|
rustc_cfg.clone(),
|
||||||
load,
|
load,
|
||||||
// FIXME: This looks incorrect but I don't think this causes problems.
|
|
||||||
crate_ws_data.clone(),
|
crate_ws_data.clone(),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -1139,7 +1148,7 @@ fn cargo_to_crate_graph(
|
||||||
let mut cfg_options = cfg_options.clone();
|
let mut cfg_options = cfg_options.clone();
|
||||||
|
|
||||||
if cargo[pkg].is_local {
|
if cargo[pkg].is_local {
|
||||||
if set_test {
|
if set_test && !cargo.is_sysroot() {
|
||||||
// Add test cfg for local crates
|
// Add test cfg for local crates
|
||||||
cfg_options.insert_atom(sym::test.clone());
|
cfg_options.insert_atom(sym::test.clone());
|
||||||
}
|
}
|
||||||
|
@ -1152,7 +1161,9 @@ fn cargo_to_crate_graph(
|
||||||
|
|
||||||
let mut lib_tgt = None;
|
let mut lib_tgt = None;
|
||||||
for &tgt in cargo[pkg].targets.iter() {
|
for &tgt in cargo[pkg].targets.iter() {
|
||||||
if !matches!(cargo[tgt].kind, TargetKind::Lib { .. }) && !cargo[pkg].is_member {
|
if !matches!(cargo[tgt].kind, TargetKind::Lib { .. })
|
||||||
|
&& (!cargo[pkg].is_member || cargo.is_sysroot())
|
||||||
|
{
|
||||||
// For non-workspace-members, Cargo does not resolve dev-dependencies, so we don't
|
// For non-workspace-members, Cargo does not resolve dev-dependencies, so we don't
|
||||||
// add any targets except the library target, since those will not work correctly if
|
// add any targets except the library target, since those will not work correctly if
|
||||||
// they use dev-dependencies.
|
// they use dev-dependencies.
|
||||||
|
@ -1177,10 +1188,14 @@ fn cargo_to_crate_graph(
|
||||||
name,
|
name,
|
||||||
kind,
|
kind,
|
||||||
if pkg_data.is_local {
|
if pkg_data.is_local {
|
||||||
|
if cargo.is_sysroot() {
|
||||||
|
CrateOrigin::Lang(LangCrateOrigin::from(&*pkg_data.name))
|
||||||
|
} else {
|
||||||
CrateOrigin::Local {
|
CrateOrigin::Local {
|
||||||
repo: pkg_data.repository.clone(),
|
repo: pkg_data.repository.clone(),
|
||||||
name: Some(Symbol::intern(&pkg_data.name)),
|
name: Some(Symbol::intern(&pkg_data.name)),
|
||||||
}
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
CrateOrigin::Library {
|
CrateOrigin::Library {
|
||||||
repo: pkg_data.repository.clone(),
|
repo: pkg_data.repository.clone(),
|
||||||
|
@ -1516,10 +1531,8 @@ fn add_target_crate_root(
|
||||||
env,
|
env,
|
||||||
origin,
|
origin,
|
||||||
matches!(kind, TargetKind::Lib { is_proc_macro: true }),
|
matches!(kind, TargetKind::Lib { is_proc_macro: true }),
|
||||||
Some(if pkg.is_member {
|
matches!(kind, TargetKind::Lib { is_proc_macro: true }).then(|| {
|
||||||
cargo.workspace_root().to_path_buf()
|
if pkg.is_member { cargo.workspace_root() } else { pkg.manifest.parent() }.to_path_buf()
|
||||||
} else {
|
|
||||||
pkg.manifest.parent().to_path_buf()
|
|
||||||
}),
|
}),
|
||||||
crate_ws_data,
|
crate_ws_data,
|
||||||
);
|
);
|
||||||
|
@ -1561,16 +1574,8 @@ fn extend_crate_graph_with_sysroot(
|
||||||
) -> (SysrootPublicDeps, Option<CrateBuilderId>) {
|
) -> (SysrootPublicDeps, Option<CrateBuilderId>) {
|
||||||
let mut pub_deps = vec![];
|
let mut pub_deps = vec![];
|
||||||
let mut libproc_macro = None;
|
let mut libproc_macro = None;
|
||||||
let diff = CfgDiff::new(vec![], vec![CfgAtom::Flag(sym::test.clone())]);
|
for cid in sysroot_crate_graph.iter() {
|
||||||
for (cid, c) in sysroot_crate_graph.iter_mut() {
|
if let CrateOrigin::Lang(lang_crate) = sysroot_crate_graph[cid].basic.origin {
|
||||||
// uninject `test` flag so `core` keeps working.
|
|
||||||
Arc::make_mut(&mut c.cfg_options).apply_diff(diff.clone());
|
|
||||||
// patch the origin
|
|
||||||
if c.basic.origin.is_local() {
|
|
||||||
let lang_crate = LangCrateOrigin::from(
|
|
||||||
c.extra.display_name.as_ref().map_or("", |it| it.canonical_name().as_str()),
|
|
||||||
);
|
|
||||||
c.basic.origin = CrateOrigin::Lang(lang_crate);
|
|
||||||
match lang_crate {
|
match lang_crate {
|
||||||
LangCrateOrigin::Test
|
LangCrateOrigin::Test
|
||||||
| LangCrateOrigin::Alloc
|
| LangCrateOrigin::Alloc
|
||||||
|
@ -1627,7 +1632,7 @@ fn sysroot_to_crate_graph(
|
||||||
let _p = tracing::info_span!("sysroot_to_crate_graph").entered();
|
let _p = tracing::info_span!("sysroot_to_crate_graph").entered();
|
||||||
match sysroot.workspace() {
|
match sysroot.workspace() {
|
||||||
RustLibSrcWorkspace::Workspace(cargo) => {
|
RustLibSrcWorkspace::Workspace(cargo) => {
|
||||||
let (cg, pm) = cargo_to_crate_graph(
|
let (sysroot_cg, sysroot_pm) = cargo_to_crate_graph(
|
||||||
load,
|
load,
|
||||||
None,
|
None,
|
||||||
cargo,
|
cargo,
|
||||||
|
@ -1639,7 +1644,7 @@ fn sysroot_to_crate_graph(
|
||||||
CfgAtom::Flag(sym::debug_assertions.clone()),
|
CfgAtom::Flag(sym::debug_assertions.clone()),
|
||||||
CfgAtom::Flag(sym::miri.clone()),
|
CfgAtom::Flag(sym::miri.clone()),
|
||||||
],
|
],
|
||||||
vec![],
|
vec![CfgAtom::Flag(sym::test.clone())],
|
||||||
),
|
),
|
||||||
..Default::default()
|
..Default::default()
|
||||||
},
|
},
|
||||||
|
@ -1648,10 +1653,10 @@ fn sysroot_to_crate_graph(
|
||||||
crate_ws_data,
|
crate_ws_data,
|
||||||
);
|
);
|
||||||
|
|
||||||
extend_crate_graph_with_sysroot(crate_graph, cg, pm)
|
extend_crate_graph_with_sysroot(crate_graph, sysroot_cg, sysroot_pm)
|
||||||
}
|
}
|
||||||
RustLibSrcWorkspace::Json(project_json) => {
|
RustLibSrcWorkspace::Json(project_json) => {
|
||||||
let (cg, pm) = project_json_to_crate_graph(
|
let (sysroot_cg, sysroot_pm) = project_json_to_crate_graph(
|
||||||
rustc_cfg,
|
rustc_cfg,
|
||||||
load,
|
load,
|
||||||
project_json,
|
project_json,
|
||||||
|
@ -1668,10 +1673,11 @@ fn sysroot_to_crate_graph(
|
||||||
..Default::default()
|
..Default::default()
|
||||||
},
|
},
|
||||||
false,
|
false,
|
||||||
|
true,
|
||||||
crate_ws_data,
|
crate_ws_data,
|
||||||
);
|
);
|
||||||
|
|
||||||
extend_crate_graph_with_sysroot(crate_graph, cg, pm)
|
extend_crate_graph_with_sysroot(crate_graph, sysroot_cg, sysroot_pm)
|
||||||
}
|
}
|
||||||
RustLibSrcWorkspace::Stitched(stitched) => {
|
RustLibSrcWorkspace::Stitched(stitched) => {
|
||||||
let cfg_options = Arc::new({
|
let cfg_options = Arc::new({
|
||||||
|
|
|
@ -22,11 +22,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -108,11 +104,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -194,11 +186,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -280,11 +268,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -349,11 +333,7 @@
|
||||||
name: "libc",
|
name: "libc",
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.2.98",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
|
|
@ -22,11 +22,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -108,11 +104,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -194,11 +186,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -280,11 +268,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -349,11 +333,7 @@
|
||||||
name: "libc",
|
name: "libc",
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.2.98",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
|
|
@ -22,11 +22,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -107,11 +103,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -192,11 +184,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -277,11 +265,7 @@
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$hello-world",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
@ -345,11 +329,7 @@
|
||||||
name: "libc",
|
name: "libc",
|
||||||
},
|
},
|
||||||
is_proc_macro: false,
|
is_proc_macro: false,
|
||||||
proc_macro_cwd: Some(
|
proc_macro_cwd: None,
|
||||||
AbsPathBuf(
|
|
||||||
"$ROOT$.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.2.98",
|
|
||||||
),
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
extra: ExtraCrateData {
|
extra: ExtraCrateData {
|
||||||
version: Some(
|
version: Some(
|
||||||
|
|
|
@ -4,560 +4,8 @@
|
||||||
root_file_id: FileId(
|
root_file_id: FileId(
|
||||||
1,
|
1,
|
||||||
),
|
),
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(1),
|
|
||||||
name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
origin: Lang(
|
|
||||||
Alloc,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"alloc",
|
|
||||||
),
|
|
||||||
canonical_name: "alloc",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
1: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
2,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Core,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
canonical_name: "core",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
2: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
3,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Other,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"panic_abort",
|
|
||||||
),
|
|
||||||
canonical_name: "panic_abort",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
3: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
4,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Other,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"panic_unwind",
|
|
||||||
),
|
|
||||||
canonical_name: "panic_unwind",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
4: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
5,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(6),
|
|
||||||
name: CrateName(
|
|
||||||
"std",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(1),
|
|
||||||
name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
origin: Lang(
|
|
||||||
ProcMacro,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"proc_macro",
|
|
||||||
),
|
|
||||||
canonical_name: "proc_macro",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
5: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
6,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Other,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"profiler_builtins",
|
|
||||||
),
|
|
||||||
canonical_name: "profiler_builtins",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
6: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
7,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(0),
|
|
||||||
name: CrateName(
|
|
||||||
"alloc",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(3),
|
|
||||||
name: CrateName(
|
|
||||||
"panic_unwind",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(2),
|
|
||||||
name: CrateName(
|
|
||||||
"panic_abort",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(1),
|
|
||||||
name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(5),
|
|
||||||
name: CrateName(
|
|
||||||
"profiler_builtins",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(9),
|
|
||||||
name: CrateName(
|
|
||||||
"unwind",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(7),
|
|
||||||
name: CrateName(
|
|
||||||
"std_detect",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(8),
|
|
||||||
name: CrateName(
|
|
||||||
"test",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
origin: Lang(
|
|
||||||
Std,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"std",
|
|
||||||
),
|
|
||||||
canonical_name: "std",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
7: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
8,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Other,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"std_detect",
|
|
||||||
),
|
|
||||||
canonical_name: "std_detect",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
8: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
9,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Test,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"test",
|
|
||||||
),
|
|
||||||
canonical_name: "test",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
9: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
10,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Other,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"unwind",
|
|
||||||
),
|
|
||||||
canonical_name: "unwind",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
10: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
11,
|
|
||||||
),
|
|
||||||
edition: Edition2018,
|
edition: Edition2018,
|
||||||
dependencies: [
|
dependencies: [],
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(1),
|
|
||||||
name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(0),
|
|
||||||
name: CrateName(
|
|
||||||
"alloc",
|
|
||||||
),
|
|
||||||
prelude: false,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(6),
|
|
||||||
name: CrateName(
|
|
||||||
"std",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(8),
|
|
||||||
name: CrateName(
|
|
||||||
"test",
|
|
||||||
),
|
|
||||||
prelude: false,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(4),
|
|
||||||
name: CrateName(
|
|
||||||
"proc_macro",
|
|
||||||
),
|
|
||||||
prelude: false,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
origin: Local {
|
origin: Local {
|
||||||
repo: None,
|
repo: None,
|
||||||
name: Some(
|
name: Some(
|
||||||
|
@ -599,54 +47,13 @@
|
||||||
toolchain: None,
|
toolchain: None,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
11: CrateBuilder {
|
1: CrateBuilder {
|
||||||
basic: CrateData {
|
basic: CrateData {
|
||||||
root_file_id: FileId(
|
root_file_id: FileId(
|
||||||
11,
|
1,
|
||||||
),
|
),
|
||||||
edition: Edition2018,
|
edition: Edition2018,
|
||||||
dependencies: [
|
dependencies: [],
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(1),
|
|
||||||
name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(0),
|
|
||||||
name: CrateName(
|
|
||||||
"alloc",
|
|
||||||
),
|
|
||||||
prelude: false,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(6),
|
|
||||||
name: CrateName(
|
|
||||||
"std",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(8),
|
|
||||||
name: CrateName(
|
|
||||||
"test",
|
|
||||||
),
|
|
||||||
prelude: false,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(4),
|
|
||||||
name: CrateName(
|
|
||||||
"proc_macro",
|
|
||||||
),
|
|
||||||
prelude: false,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
origin: Local {
|
origin: Local {
|
||||||
repo: None,
|
repo: None,
|
||||||
name: Some(
|
name: Some(
|
||||||
|
|
|
@ -4,560 +4,8 @@
|
||||||
root_file_id: FileId(
|
root_file_id: FileId(
|
||||||
1,
|
1,
|
||||||
),
|
),
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(1),
|
|
||||||
name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
origin: Lang(
|
|
||||||
Alloc,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"alloc",
|
|
||||||
),
|
|
||||||
canonical_name: "alloc",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
1: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
2,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Core,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
canonical_name: "core",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
2: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
3,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Other,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"panic_abort",
|
|
||||||
),
|
|
||||||
canonical_name: "panic_abort",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
3: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
4,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Other,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"panic_unwind",
|
|
||||||
),
|
|
||||||
canonical_name: "panic_unwind",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
4: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
5,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(6),
|
|
||||||
name: CrateName(
|
|
||||||
"std",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(1),
|
|
||||||
name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
origin: Lang(
|
|
||||||
ProcMacro,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"proc_macro",
|
|
||||||
),
|
|
||||||
canonical_name: "proc_macro",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
5: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
6,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Other,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"profiler_builtins",
|
|
||||||
),
|
|
||||||
canonical_name: "profiler_builtins",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
6: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
7,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(0),
|
|
||||||
name: CrateName(
|
|
||||||
"alloc",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(3),
|
|
||||||
name: CrateName(
|
|
||||||
"panic_unwind",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(2),
|
|
||||||
name: CrateName(
|
|
||||||
"panic_abort",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(1),
|
|
||||||
name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(5),
|
|
||||||
name: CrateName(
|
|
||||||
"profiler_builtins",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(9),
|
|
||||||
name: CrateName(
|
|
||||||
"unwind",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(7),
|
|
||||||
name: CrateName(
|
|
||||||
"std_detect",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(8),
|
|
||||||
name: CrateName(
|
|
||||||
"test",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
origin: Lang(
|
|
||||||
Std,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"std",
|
|
||||||
),
|
|
||||||
canonical_name: "std",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
7: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
8,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Other,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"std_detect",
|
|
||||||
),
|
|
||||||
canonical_name: "std_detect",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
8: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
9,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Test,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"test",
|
|
||||||
),
|
|
||||||
canonical_name: "test",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
9: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
10,
|
|
||||||
),
|
|
||||||
edition: Edition2021,
|
|
||||||
dependencies: [],
|
|
||||||
origin: Lang(
|
|
||||||
Other,
|
|
||||||
),
|
|
||||||
is_proc_macro: false,
|
|
||||||
proc_macro_cwd: None,
|
|
||||||
},
|
|
||||||
extra: ExtraCrateData {
|
|
||||||
version: None,
|
|
||||||
display_name: Some(
|
|
||||||
CrateDisplayName {
|
|
||||||
crate_name: CrateName(
|
|
||||||
"unwind",
|
|
||||||
),
|
|
||||||
canonical_name: "unwind",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
potential_cfg_options: None,
|
|
||||||
},
|
|
||||||
cfg_options: CfgOptions(
|
|
||||||
[
|
|
||||||
"debug_assertions",
|
|
||||||
"miri",
|
|
||||||
"true",
|
|
||||||
],
|
|
||||||
),
|
|
||||||
env: Env {
|
|
||||||
entries: {},
|
|
||||||
},
|
|
||||||
ws_data: CrateWorkspaceData {
|
|
||||||
data_layout: Err(
|
|
||||||
"test has no data layout",
|
|
||||||
),
|
|
||||||
toolchain: None,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
10: CrateBuilder {
|
|
||||||
basic: CrateData {
|
|
||||||
root_file_id: FileId(
|
|
||||||
11,
|
|
||||||
),
|
|
||||||
edition: Edition2018,
|
edition: Edition2018,
|
||||||
dependencies: [
|
dependencies: [],
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(1),
|
|
||||||
name: CrateName(
|
|
||||||
"core",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(0),
|
|
||||||
name: CrateName(
|
|
||||||
"alloc",
|
|
||||||
),
|
|
||||||
prelude: false,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(6),
|
|
||||||
name: CrateName(
|
|
||||||
"std",
|
|
||||||
),
|
|
||||||
prelude: true,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(8),
|
|
||||||
name: CrateName(
|
|
||||||
"test",
|
|
||||||
),
|
|
||||||
prelude: false,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
Dependency {
|
|
||||||
crate_id: Idx::<CrateBuilder>(4),
|
|
||||||
name: CrateName(
|
|
||||||
"proc_macro",
|
|
||||||
),
|
|
||||||
prelude: false,
|
|
||||||
sysroot: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
origin: Local {
|
origin: Local {
|
||||||
repo: None,
|
repo: None,
|
||||||
name: Some(
|
name: Some(
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue