internal: remove erroneous Default impl for ModuleOrigin
In rust-analyzer, we avoid defualt impls for types which don't have sensible, "empty" defaults. In particular, we avoid using invalid indices for defaults and similar hacks.
This commit is contained in:
parent
745be39383
commit
107e07458c
@ -145,12 +145,6 @@ pub enum ModuleOrigin {
|
||||
},
|
||||
}
|
||||
|
||||
impl Default for ModuleOrigin {
|
||||
fn default() -> Self {
|
||||
ModuleOrigin::CrateRoot { definition: FileId(0) }
|
||||
}
|
||||
}
|
||||
|
||||
impl ModuleOrigin {
|
||||
fn declaration(&self) -> Option<AstId<ast::Module>> {
|
||||
match self {
|
||||
@ -196,7 +190,7 @@ impl ModuleOrigin {
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Default, Debug, PartialEq, Eq)]
|
||||
#[derive(Debug, PartialEq, Eq)]
|
||||
pub struct ModuleData {
|
||||
pub parent: Option<LocalModuleId>,
|
||||
pub children: FxHashMap<Name, LocalModuleId>,
|
||||
@ -206,6 +200,17 @@ pub struct ModuleData {
|
||||
pub origin: ModuleOrigin,
|
||||
}
|
||||
|
||||
impl Default for ModuleData {
|
||||
fn default() -> Self {
|
||||
ModuleData {
|
||||
parent: None,
|
||||
children: FxHashMap::default(),
|
||||
scope: ItemScope::default(),
|
||||
origin: ModuleOrigin::CrateRoot { definition: FileId(!0) },
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl DefMap {
|
||||
pub(crate) fn crate_def_map_query(db: &dyn DefDatabase, krate: CrateId) -> Arc<DefMap> {
|
||||
let _p = profile::span("crate_def_map_query").detail(|| {
|
||||
|
Loading…
x
Reference in New Issue
Block a user