diff --git a/crates/ide/src/status.rs b/crates/ide/src/status.rs index 0597302ca84..3dfbc1874b3 100644 --- a/crates/ide/src/status.rs +++ b/crates/ide/src/status.rs @@ -227,9 +227,10 @@ fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result { } impl StatCollect> for SymbolsStats { fn collect_entry(&mut self, _: Key, value: Option>) { - let symbols = value.unwrap(); - self.total += symbols.len(); - self.size += symbols.memory_size(); + if let Some(symbols) = value { + self.total += symbols.len(); + self.size += symbols.memory_size(); + } } } @@ -254,8 +255,7 @@ fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result { impl StatCollect for AttrsStats { fn collect_entry(&mut self, _: Key, value: Option) { - let attrs = value.unwrap(); self.entries += 1; - self.total += attrs.len(); + self.total += value.map_or(0, |it| it.len()); } }