restore symbols filtering

This commit is contained in:
Aleksey Kladov 2018-10-25 17:59:03 +03:00
parent d190019571
commit 363adf07b7

View file

@ -181,12 +181,15 @@ impl AnalysisImpl {
} }
pub fn world_symbols(&self, query: Query) -> Cancelable<Vec<(FileId, FileSymbol)>> { pub fn world_symbols(&self, query: Query) -> Cancelable<Vec<(FileId, FileSymbol)>> {
let mut buf = Vec::new(); let mut buf = Vec::new();
if query.libs {
for &lib_id in self.db.libraries().iter() { for &lib_id in self.db.libraries().iter() {
buf.push(self.db.library_symbols(lib_id)); buf.push(self.db.library_symbols(lib_id));
} }
} else {
for &file_id in self.db.source_root(WORKSPACE).files.iter() { for &file_id in self.db.source_root(WORKSPACE).files.iter() {
buf.push(self.db.file_symbols(file_id)?); buf.push(self.db.file_symbols(file_id)?);
} }
}
Ok(query.search(&buf)) Ok(query.search(&buf))
} }
fn module_tree(&self, file_id: FileId) -> Cancelable<Arc<ModuleTree>> { fn module_tree(&self, file_id: FileId) -> Cancelable<Arc<ModuleTree>> {