MCPcopy Create free account
hub / github.com/bytebase/bytebase / parseMultipartIdentifier

Function parseMultipartIdentifier

backend/plugin/parser/tsql/completion.go:1398–1414  ·  view source on GitHub ↗
(text string)

Source from the content-addressed store, hash-verified

1396}
1397
1398func parseMultipartIdentifier(text string) (string, string, string) {
1399 parts := splitMultipartIdentifier(text)
1400 for i, part := range parts {
1401 original, _ := NormalizeTSQLIdentifierText(unquoteDoubleQuoted(strings.TrimSpace(part)))
1402 parts[i] = original
1403 }
1404 switch len(parts) {
1405 case 0:
1406 return "", "", ""
1407 case 1:
1408 return "", "", parts[0]
1409 case 2:
1410 return "", parts[0], parts[1]
1411 default:
1412 return parts[len(parts)-3], parts[len(parts)-2], parts[len(parts)-1]
1413 }
1414}
1415
1416func splitMultipartIdentifier(text string) []string {
1417 var parts []string

Calls 3

splitMultipartIdentifierFunction · 0.85
unquoteDoubleQuotedFunction · 0.85

Tested by

no test coverage detected