From 28fd704bce2fec56e46991b26eed5a17e519e6bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bla=C5=BE=20Hrastnik?= Date: Mon, 22 Nov 2021 11:26:16 +0900 Subject: [PATCH] ui: Since diagnostics are sorted, we can use binary search --- helix-term/src/ui/editor.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/helix-term/src/ui/editor.rs b/helix-term/src/ui/editor.rs index 19f0243ed..de2281c60 100644 --- a/helix-term/src/ui/editor.rs +++ b/helix-term/src/ui/editor.rs @@ -482,7 +482,8 @@ impl EditorView { for (i, line) in (view.offset.row..(last_line + 1)).enumerate() { use helix_core::diagnostic::Severity; - if let Some(diagnostic) = doc.diagnostics().iter().find(|d| d.line == line) { + if let Ok(diagnostic) = doc.diagnostics().binary_search_by_key(&line, |d| d.line) { + let diagnostic = &doc.diagnostics()[diagnostic]; surface.set_stringn( viewport.x, viewport.y + i as u16,