(out *strings.Builder, enumDiff *schema.EnumTypeDiff)
| 1820 | } |
| 1821 | |
| 1822 | func writeEnumTypeDiff(out *strings.Builder, enumDiff *schema.EnumTypeDiff) error { |
| 1823 | switch enumDiff.Action { |
| 1824 | case schema.MetadataDiffActionCreate: |
| 1825 | if err := writeEnum(out, enumDiff.SchemaName, enumDiff.NewEnumType); err != nil { |
| 1826 | return err |
| 1827 | } |
| 1828 | if _, err := out.WriteString(";\n\n"); err != nil { |
| 1829 | return err |
| 1830 | } |
| 1831 | if enumDiff.NewEnumType.Comment != "" { |
| 1832 | return writeEnumComment(out, enumDiff.SchemaName, enumDiff.NewEnumType) |
| 1833 | } |
| 1834 | return nil |
| 1835 | case schema.MetadataDiffActionDrop: |
| 1836 | _, err := fmt.Fprintf(out, "DROP TYPE \"%s\".\"%s\";\n\n", enumDiff.SchemaName, enumDiff.EnumTypeName) |
| 1837 | return err |
| 1838 | case schema.MetadataDiffActionAlter: |
| 1839 | return writeAlterEnumTypeAddValues(out, enumDiff.SchemaName, enumDiff.OldEnumType, enumDiff.NewEnumType) |
| 1840 | default: |
| 1841 | return nil |
| 1842 | } |
| 1843 | } |
| 1844 | |
| 1845 | func writeAlterEnumTypeAddValues(out *strings.Builder, schemaName string, oldEnum *storepb.EnumTypeMetadata, newEnum *storepb.EnumTypeMetadata) error { |
| 1846 | oldValueSet := make(map[string]bool) |
no test coverage detected