From 60a1d47c96c893a4e2c56fd5bdb72bd707d145fb Mon Sep 17 00:00:00 2001 From: Max Brunsfeld Date: Wed, 2 Jun 2021 12:09:16 -0700 Subject: [PATCH] Generalize Dimension for tuples --- zed/src/editor/buffer.rs | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/zed/src/editor/buffer.rs b/zed/src/editor/buffer.rs index f9e061030f3b93b74b1a9f56b0747fa89dc38485..5657b54a3f8c3368fd3fbe911718760740b5130d 100644 --- a/zed/src/editor/buffer.rs +++ b/zed/src/editor/buffer.rs @@ -2258,17 +2258,14 @@ impl<'a> sum_tree::SeekDimension<'a, FragmentSummary> for VersionedOffset { } } -impl<'a> sum_tree::Dimension<'a, FragmentSummary> for (VersionedOffset, usize) { +impl<'a, T, U> sum_tree::Dimension<'a, FragmentSummary> for (T, U) +where + T: sum_tree::Dimension<'a, FragmentSummary>, + U: sum_tree::Dimension<'a, FragmentSummary>, +{ fn add_summary(&mut self, summary: &'a FragmentSummary, cx: &Option) { self.0.add_summary(summary, cx); - self.1 += summary.text.visible; - } -} - -impl<'a> sum_tree::Dimension<'a, FragmentSummary> for (VersionedOffset, FullOffset) { - fn add_summary(&mut self, summary: &'a FragmentSummary, cx: &Option) { - self.0.add_summary(summary, cx); - self.1 .0 += summary.text.visible + summary.text.deleted; + self.1.add_summary(summary, cx); } }