MCPcopy Create free account
hub / github.com/araddon/qlbridge / findIdentities

Function findIdentities

expr/node.go:372–400  ·  view source on GitHub ↗
(node Node, l IdentityNodes)

Source from the content-addressed store, hash-verified

370 return findIdentities(node, in)
371}
372func findIdentities(node Node, l IdentityNodes) IdentityNodes {
373 switch n := node.(type) {
374 case *IdentityNode:
375 l = append(l, n)
376 case *BinaryNode:
377 for _, arg := range n.Args {
378 l = findIdentities(arg, l)
379 }
380 case *BooleanNode:
381 for _, arg := range n.Args {
382 l = findIdentities(arg, l)
383 }
384 case *UnaryNode:
385 l = findIdentities(n.Arg, l)
386 case *TriNode:
387 for _, arg := range n.Args {
388 l = findIdentities(arg, l)
389 }
390 case *ArrayNode:
391 for _, arg := range n.Args {
392 l = findIdentities(arg, l)
393 }
394 case *FuncNode:
395 for _, arg := range n.Args {
396 l = findIdentities(arg, l)
397 }
398 }
399 return l
400}
401
402// FilterSpecialIdentities given a list of identities, filter out
403// special identities such as "null", "*", "match_all"

Callers 4

FindFirstIdentityFunction · 0.85
FindAllIdentityFieldFunction · 0.85
FindAllIdentitiesFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected