MCPcopy
hub / github.com/dgraph-io/dgraph / writeFilter

Function writeFilter

graphql/dgraph/graphquery.go:204–228  ·  view source on GitHub ↗
(b *strings.Builder, ft *dql.FilterTree)

Source from the content-addressed store, hash-verified

202}
203
204func writeFilter(b *strings.Builder, ft *dql.FilterTree) {
205 if ft == nil {
206 return
207 }
208
209 switch ft.Op {
210 case "and", "or":
211 x.Check2(b.WriteRune('('))
212 for i, child := range ft.Child {
213 if i > 0 && i <= len(ft.Child)-1 {
214 x.Check2(b.WriteString(fmt.Sprintf(" %s ", strings.ToUpper(ft.Op))))
215 }
216 writeFilter(b, child)
217 }
218 x.Check2(b.WriteRune(')'))
219 case "not":
220 if len(ft.Child) > 0 {
221 x.Check2(b.WriteString("NOT ("))
222 writeFilter(b, ft.Child[0])
223 x.Check2(b.WriteRune(')'))
224 }
225 default:
226 writeFilterFunction(b, ft.Func)
227 }
228}
229
230func hasOrderOrPage(q *dql.GraphQuery) bool {
231 _, hasFirst := q.Args["first"]

Callers 1

writeQueryFunction · 0.85

Calls 2

Check2Function · 0.92
writeFilterFunctionFunction · 0.85

Tested by

no test coverage detected