mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-26 11:59:49 +00:00
Merge commit 'cd3bf9fe51
' into sync-from-ra
This commit is contained in:
parent
bbd695589e
commit
9326cf7f0c
114 changed files with 3893 additions and 1252 deletions
|
@ -215,7 +215,7 @@ impl ChangeFixture {
|
|||
None,
|
||||
default_cfg,
|
||||
Default::default(),
|
||||
Env::default(),
|
||||
Env::new_for_test_fixture(),
|
||||
false,
|
||||
CrateOrigin::Local { repo: None, name: None },
|
||||
default_target_data_layout
|
||||
|
@ -259,7 +259,7 @@ impl ChangeFixture {
|
|||
None,
|
||||
Default::default(),
|
||||
Default::default(),
|
||||
Env::default(),
|
||||
Env::new_for_test_fixture(),
|
||||
false,
|
||||
CrateOrigin::Lang(LangCrateOrigin::Core),
|
||||
target_layout.clone(),
|
||||
|
@ -298,7 +298,7 @@ impl ChangeFixture {
|
|||
None,
|
||||
Default::default(),
|
||||
Default::default(),
|
||||
Env::default(),
|
||||
Env::new_for_test_fixture(),
|
||||
true,
|
||||
CrateOrigin::Local { repo: None, name: None },
|
||||
target_layout,
|
||||
|
|
|
@ -151,6 +151,12 @@ pub enum CrateOrigin {
|
|||
Lang(LangCrateOrigin),
|
||||
}
|
||||
|
||||
impl CrateOrigin {
|
||||
pub fn is_local(&self) -> bool {
|
||||
matches!(self, CrateOrigin::Local { .. })
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
|
||||
pub enum LangCrateOrigin {
|
||||
Alloc,
|
||||
|
@ -333,6 +339,17 @@ pub struct Env {
|
|||
entries: FxHashMap<String, String>,
|
||||
}
|
||||
|
||||
impl Env {
|
||||
pub fn new_for_test_fixture() -> Self {
|
||||
Env {
|
||||
entries: FxHashMap::from_iter([(
|
||||
String::from("__ra_is_test_fixture"),
|
||||
String::from("__ra_is_test_fixture"),
|
||||
)]),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, PartialEq, Eq, Hash)]
|
||||
pub struct Dependency {
|
||||
pub crate_id: CrateId,
|
||||
|
@ -456,6 +473,12 @@ impl CrateGraph {
|
|||
self.arena.iter().map(|(idx, _)| idx)
|
||||
}
|
||||
|
||||
// FIXME: used for `handle_hack_cargo_workspace`, should be removed later
|
||||
#[doc(hidden)]
|
||||
pub fn iter_mut(&mut self) -> impl Iterator<Item = (CrateId, &mut CrateData)> + '_ {
|
||||
self.arena.iter_mut()
|
||||
}
|
||||
|
||||
/// Returns an iterator over all transitive dependencies of the given crate,
|
||||
/// including the crate itself.
|
||||
pub fn transitive_deps(&self, of: CrateId) -> impl Iterator<Item = CrateId> {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue