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

Function writeFunctionDiff

backend/plugin/schema/pg/metadata_migration.go:1701–1716  ·  view source on GitHub ↗
(out *strings.Builder, functionDiff *schema.FunctionDiff)

Source from the content-addressed store, hash-verified

1699}
1700
1701func writeFunctionDiff(out *strings.Builder, functionDiff *schema.FunctionDiff) error {
1702 switch functionDiff.Action {
1703 case schema.MetadataDiffActionCreate:
1704 return writeFunctionStatement(out, functionDiff.SchemaName, functionDiff.NewFunction, false)
1705 case schema.MetadataDiffActionAlter:
1706 return writeFunctionStatement(out, functionDiff.SchemaName, functionDiff.NewFunction, true)
1707 case schema.MetadataDiffActionDrop:
1708 signature := functionDiff.FunctionName
1709 if functionDiff.OldFunction.GetSignature() != "" {
1710 signature = functionDiff.OldFunction.GetSignature()
1711 }
1712 return writeDropRoutine(out, "FUNCTION", functionDiff.SchemaName, signature)
1713 default:
1714 return nil
1715 }
1716}
1717
1718func writeFunctionStatement(out *strings.Builder, schemaName string, function *storepb.FunctionMetadata, replace bool) error {
1719 definition := function.GetDefinition()

Calls 3

writeFunctionStatementFunction · 0.85
writeDropRoutineFunction · 0.85
GetSignatureMethod · 0.45

Tested by

no test coverage detected