MCPcopy Index your code
hub / github.com/coder/coder / longestContiguousMatch

Function longestContiguousMatch

agent/filefinder/text.go:173–200  ·  view source on GitHub ↗
(haystack, needle []byte)

Source from the content-addressed store, hash-verified

171}
172
173func longestContiguousMatch(haystack, needle []byte) int {
174 if len(needle) == 0 || len(haystack) == 0 {
175 return 0
176 }
177 best := 0
178 ni := 0
179 run := 0
180 for _, hb := range haystack {
181 if ni < len(needle) && toLowerASCII(hb) == toLowerASCII(needle[ni]) {
182 run++
183 ni++
184 if run > best {
185 best = run
186 }
187 } else {
188 run = 0
189 ni = 0
190 if ni < len(needle) && toLowerASCII(hb) == toLowerASCII(needle[ni]) {
191 run = 1
192 ni = 1
193 if run > best {
194 best = run
195 }
196 }
197 }
198 }
199 return best
200}
201
202func isBoundary(b byte) bool {
203 return b == '/' || b == '.' || b == '_' || b == '-'

Callers 1

scorePathFunction · 0.85

Calls 1

toLowerASCIIFunction · 0.85

Tested by

no test coverage detected