From ddc7bb9064042a0d5da9546eaf6ff888dca63f0c Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Sun, 14 Aug 2016 01:53:06 +0900 Subject: [perf] Optimize AWK-style tokenizer for --nth Approx. 50% less memory footprint and 40% improvement in query time --- src/util/chars.go | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/util/chars.go') diff --git a/src/util/chars.go b/src/util/chars.go index 25a15ddd..6034ee53 100644 --- a/src/util/chars.go +++ b/src/util/chars.go @@ -111,3 +111,10 @@ func (chars *Chars) ToRunes() []rune { } return runes } + +func (chars *Chars) Slice(b int, e int) Chars { + if chars.runes != nil { + return Chars{runes: chars.runes[b:e]} + } + return Chars{bytes: chars.bytes[b:e]} +} -- cgit v1.2.3