diff options
| author | 2025-01-27 15:54:51 +0000 | |
|---|---|---|
| committer | 2025-01-27 15:54:51 +0000 | |
| commit | 3617e27afa181392763258240bc276f3da4b44e2 (patch) | |
| tree | 9a65f9a361fd9ddf53de7d32ca35c81aade6cb84 /vendor/github.com/uptrace/bun/dialect/feature | |
| parent | [feature/frontend] Add login button to index page which reiterates info about... (diff) | |
| download | gotosocial-3617e27afa181392763258240bc276f3da4b44e2.tar.xz | |
bumps uptrace/bun deps to v1.2.8 (#3698)
Diffstat (limited to 'vendor/github.com/uptrace/bun/dialect/feature')
| -rw-r--r-- | vendor/github.com/uptrace/bun/dialect/feature/feature.go | 58 |
1 files changed, 57 insertions, 1 deletions
diff --git a/vendor/github.com/uptrace/bun/dialect/feature/feature.go b/vendor/github.com/uptrace/bun/dialect/feature/feature.go index 0707c6f88..89693fc21 100644 --- a/vendor/github.com/uptrace/bun/dialect/feature/feature.go +++ b/vendor/github.com/uptrace/bun/dialect/feature/feature.go @@ -1,6 +1,11 @@ package feature -import "github.com/uptrace/bun/internal" +import ( + "fmt" + "strconv" + + "github.com/uptrace/bun/internal" +) type Feature = internal.Flag @@ -35,4 +40,55 @@ const ( UpdateOrderLimit // UPDATE ... ORDER BY ... LIMIT ... DeleteOrderLimit // DELETE ... ORDER BY ... LIMIT ... DeleteReturning + AlterColumnExists // ADD/DROP COLUMN IF NOT EXISTS/IF EXISTS ) + +type NotSupportError struct { + Flag Feature +} + +func (err *NotSupportError) Error() string { + name, ok := flag2str[err.Flag] + if !ok { + name = strconv.FormatInt(int64(err.Flag), 10) + } + return fmt.Sprintf("bun: feature %s is not supported by current dialect", name) +} + +func NewNotSupportError(flag Feature) *NotSupportError { + return &NotSupportError{Flag: flag} +} + +var flag2str = map[Feature]string{ + CTE: "CTE", + WithValues: "WithValues", + Returning: "Returning", + InsertReturning: "InsertReturning", + Output: "Output", + DefaultPlaceholder: "DefaultPlaceholder", + DoubleColonCast: "DoubleColonCast", + ValuesRow: "ValuesRow", + UpdateMultiTable: "UpdateMultiTable", + InsertTableAlias: "InsertTableAlias", + UpdateTableAlias: "UpdateTableAlias", + DeleteTableAlias: "DeleteTableAlias", + AutoIncrement: "AutoIncrement", + Identity: "Identity", + TableCascade: "TableCascade", + TableIdentity: "TableIdentity", + TableTruncate: "TableTruncate", + InsertOnConflict: "InsertOnConflict", + InsertOnDuplicateKey: "InsertOnDuplicateKey", + InsertIgnore: "InsertIgnore", + TableNotExists: "TableNotExists", + OffsetFetch: "OffsetFetch", + SelectExists: "SelectExists", + UpdateFromTable: "UpdateFromTable", + MSSavepoint: "MSSavepoint", + GeneratedIdentity: "GeneratedIdentity", + CompositeIn: "CompositeIn", + UpdateOrderLimit: "UpdateOrderLimit", + DeleteOrderLimit: "DeleteOrderLimit", + DeleteReturning: "DeleteReturning", + AlterColumnExists: "AlterColumnExists", +} |
