MCPcopy Create free account
hub / github.com/ajitpratap0/GoSQLX / extractColumnNames

Function extractColumnNames

pkg/gosqlx/testing/testing.go:407–426  ·  view source on GitHub ↗

extractColumnNames extracts column names from expressions

(expr ast.Expression, columns map[string]bool)

Source from the content-addressed store, hash-verified

405
406// extractColumnNames extracts column names from expressions
407func extractColumnNames(expr ast.Expression, columns map[string]bool) {
408 if expr == nil {
409 return
410 }
411
412 switch e := expr.(type) {
413 case *ast.Identifier:
414 if e.Name != "" {
415 columns[e.Name] = true
416 }
417 case *ast.FunctionCall:
418 // Extract column names from function arguments
419 for _, arg := range e.Arguments {
420 extractColumnNames(arg, columns)
421 }
422 case *ast.BinaryExpression:
423 extractColumnNames(e.Left, columns)
424 extractColumnNames(e.Right, columns)
425 }
426}
427
428// stringSlicesEqual compares two string slices for equality
429func stringSlicesEqual(a, b []string) bool {

Callers 1

extractColumnsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected