summaryrefslogtreecommitdiffstats
path: root/src/search.rs
diff options
context:
space:
mode:
authorAndrew Gallant <jamslam@gmail.com>2016-03-30 22:24:59 -0400
committerAndrew Gallant <jamslam@gmail.com>2016-03-30 22:24:59 -0400
commit07bff7409b54c09571d0fb17da084917d356c8c0 (patch)
tree2f75b2f2431ab8b049f8060b5cfd64dd06921408 /src/search.rs
parentf1a91307cd0826d5009fe0046dfb4e91bf9c4608 (diff)
tweaks
Diffstat (limited to 'src/search.rs')
-rw-r--r--src/search.rs14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/search.rs b/src/search.rs
index d73a9f56..b0933241 100644
--- a/src/search.rs
+++ b/src/search.rs
@@ -125,11 +125,15 @@ impl<'b, 's> Iter<'b, 's> {
}
fn find_line(&self, s: usize, e: usize) -> (usize, usize) {
- let prevnl =
- memrchr(b'\n', &self.buf[0..s]).map_or(0, |i| i + 1);
- let nextnl =
- memchr(b'\n', &self.buf[e..]).map_or(self.buf.len(), |i| e + i);
- (prevnl, nextnl)
+ (self.find_line_start(s), self.find_line_end(e))
+ }
+
+ fn find_line_start(&self, pos: usize) -> usize {
+ memrchr(b'\n', &self.buf[0..pos]).map_or(0, |i| i + 1)
+ }
+
+ fn find_line_end(&self, pos: usize) -> usize {
+ memchr(b'\n', &self.buf[pos..]).map_or(self.buf.len(), |i| pos + i)
}
}