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

Method Equal

expr/node.go:1370–1403  ·  view source on GitHub ↗
(n Node)

Source from the content-addressed store, hash-verified

1368 return nil
1369}
1370func (m *BinaryNode) Equal(n Node) bool {
1371 if m == nil && n == nil {
1372 return true
1373 }
1374 if m == nil && n != nil {
1375 return false
1376 }
1377 if m != nil && n == nil {
1378 return false
1379 }
1380 if nt, ok := n.(*BinaryNode); ok {
1381 if nt.Operator.T != m.Operator.T {
1382 return false
1383 }
1384 if nt.Operator.V != m.Operator.V {
1385 if strings.ToLower(nt.Operator.V) != strings.ToLower(m.Operator.V) {
1386 return false
1387 }
1388 }
1389 if nt.Paren != m.Paren {
1390 return false
1391 }
1392 if len(m.Args) != len(nt.Args) {
1393 return false
1394 }
1395 for i, arg := range nt.Args {
1396 if !arg.Equal(m.Args[i]) {
1397 return false
1398 }
1399 }
1400 return true
1401 }
1402 return false
1403}
1404
1405// NewBooleanNode Create a boolean node
1406// @operator = AND, OR

Callers

nothing calls this directly

Calls 1

EqualMethod · 0.65

Tested by

no test coverage detected