MCPcopy Create free account
hub / github.com/Debian/dcs / String

Method String

index/regexp.go:284–331  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

282}
283
284func (q *Query) String() string {
285 if q == nil {
286 return "?"
287 }
288 if q.Op == QNone {
289 return "-"
290 }
291 if q.Op == QAll {
292 return "+"
293 }
294
295 if len(q.Sub) == 0 && len(q.Trigram) == 1 {
296 return strconv.Quote(q.Trigram[0])
297 }
298
299 var (
300 s string
301 sjoin string
302 end string
303 tjoin string
304 )
305 if q.Op == QAnd {
306 sjoin = " "
307 tjoin = " "
308 } else {
309 s = "("
310 sjoin = ")|("
311 end = ")"
312 tjoin = "|"
313 }
314 for i, t := range q.Trigram {
315 if i > 0 {
316 s += tjoin
317 }
318 s += strconv.Quote(t)
319 }
320 if len(q.Sub) > 0 {
321 if len(q.Trigram) > 0 {
322 s += sjoin
323 }
324 s += q.Sub[0].String()
325 for i := 1; i < len(q.Sub); i++ {
326 s += sjoin + q.Sub[i].String()
327 }
328 }
329 s += end
330 return s
331}
332
333// RegexpQuery returns a Query for the given regexp.
334func RegexpQuery(re *syntax.Regexp) *Query {

Callers 15

varz.goFile · 0.45
dcs-web.goFile · 0.45
validateQueryFunction · 0.45
mainFunction · 0.45
track.goFile · 0.45
renderPerPackageFunction · 0.45
SearchFunction · 0.45
querymanager.goFile · 0.45
maybeStartQueryFunction · 0.45
writeToDiskFunction · 0.45
ShowFunction · 0.45
common.goFile · 0.45

Calls

no outgoing calls

Tested by 1

TestQueryFunction · 0.36