This has same readability and allows to inline FullRune for massive
performance gain:
FullASCIIRune-6 4.36ns ± 0% 1.25ns ± 0% -71.33% (p=0.000 n=8+10)
FullJapaneseRune-6 4.70ns ± 0% 1.42ns ± 1% -69.68% (p=0.000 n=9+10)
Change-Id: I95edd6292417a28aac244e40afb713596a087d93
Reviewed-on: https://go-review.googlesource.com/63332
Run-TryBot: Ilya Tocar <ilya.tocar@intel.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Daniel Martí <mvdan@mvdan.cc>
}
// Must be short or invalid.
accept := acceptRanges[x>>4]
- if n > 1 {
- if c := p[1]; c < accept.lo || accept.hi < c {
- return true
- } else if n > 2 && (p[2] < locb || hicb < p[2]) {
- return true
- }
+ if n > 1 && (p[1] < accept.lo || accept.hi < p[1]) {
+ return true
+ } else if n > 2 && (p[2] < locb || hicb < p[2]) {
+ return true
}
return false
}
}
// Must be short or invalid.
accept := acceptRanges[x>>4]
- if n > 1 {
- if c := s[1]; c < accept.lo || accept.hi < c {
- return true
- } else if n > 2 && (s[2] < locb || hicb < s[2]) {
- return true
- }
+ if n > 1 && (s[1] < accept.lo || accept.hi < s[1]) {
+ return true
+ } else if n > 2 && (s[2] < locb || hicb < s[2]) {
+ return true
}
return false
}