diff options
Diffstat (limited to 'vendor/github.com/uptrace/bun/dialect')
| -rw-r--r-- | vendor/github.com/uptrace/bun/dialect/append.go | 46 | ||||
| -rw-r--r-- | vendor/github.com/uptrace/bun/dialect/pgdialect/dialect.go | 3 | ||||
| -rw-r--r-- | vendor/github.com/uptrace/bun/dialect/pgdialect/sqltype.go | 6 |
3 files changed, 4 insertions, 51 deletions
diff --git a/vendor/github.com/uptrace/bun/dialect/append.go b/vendor/github.com/uptrace/bun/dialect/append.go index c9d137946..0a25ee22d 100644 --- a/vendor/github.com/uptrace/bun/dialect/append.go +++ b/vendor/github.com/uptrace/bun/dialect/append.go @@ -1,10 +1,8 @@ package dialect import ( - "encoding/hex" "math" "strconv" - "unicode/utf8" "github.com/uptrace/bun/internal" ) @@ -48,50 +46,6 @@ func appendFloat(b []byte, v float64, bitSize int) []byte { } } -func AppendString(b []byte, s string) []byte { - b = append(b, '\'') - for _, r := range s { - if r == '\000' { - continue - } - - if r == '\'' { - b = append(b, '\'', '\'') - continue - } - - if r < utf8.RuneSelf { - b = append(b, byte(r)) - continue - } - - l := len(b) - if cap(b)-l < utf8.UTFMax { - b = append(b, make([]byte, utf8.UTFMax)...) - } - n := utf8.EncodeRune(b[l:l+utf8.UTFMax], r) - b = b[:l+n] - } - b = append(b, '\'') - return b -} - -func AppendBytes(b, bs []byte) []byte { - if bs == nil { - return AppendNull(b) - } - - b = append(b, `'\x`...) - - s := len(b) - b = append(b, make([]byte, hex.EncodedLen(len(bs)))...) - hex.Encode(b[s:], bs) - - b = append(b, '\'') - - return b -} - //------------------------------------------------------------------------------ func AppendIdent(b []byte, field string, quote byte) []byte { diff --git a/vendor/github.com/uptrace/bun/dialect/pgdialect/dialect.go b/vendor/github.com/uptrace/bun/dialect/pgdialect/dialect.go index bac38972f..aba82eac1 100644 --- a/vendor/github.com/uptrace/bun/dialect/pgdialect/dialect.go +++ b/vendor/github.com/uptrace/bun/dialect/pgdialect/dialect.go @@ -3,6 +3,7 @@ package pgdialect import ( "database/sql" "strconv" + "strings" "github.com/uptrace/bun/dialect" "github.com/uptrace/bun/dialect/feature" @@ -68,7 +69,7 @@ func (d *Dialect) onField(field *schema.Field) { } } - if field.Tag.HasOption("array") { + if field.Tag.HasOption("array") || strings.HasSuffix(field.UserSQLType, "[]") { field.Append = d.arrayAppender(field.StructField.Type) field.Scan = arrayScanner(field.StructField.Type) } diff --git a/vendor/github.com/uptrace/bun/dialect/pgdialect/sqltype.go b/vendor/github.com/uptrace/bun/dialect/pgdialect/sqltype.go index dab0446ed..1fbfa7d7f 100644 --- a/vendor/github.com/uptrace/bun/dialect/pgdialect/sqltype.go +++ b/vendor/github.com/uptrace/bun/dialect/pgdialect/sqltype.go @@ -4,7 +4,6 @@ import ( "encoding/json" "net" "reflect" - "time" "github.com/uptrace/bun/dialect/sqltype" "github.com/uptrace/bun/schema" @@ -41,7 +40,6 @@ const ( ) var ( - timeType = reflect.TypeOf((*time.Time)(nil)).Elem() ipType = reflect.TypeOf((*net.IP)(nil)).Elem() ipNetType = reflect.TypeOf((*net.IPNet)(nil)).Elem() jsonRawMessageType = reflect.TypeOf((*json.RawMessage)(nil)).Elem() @@ -52,11 +50,11 @@ func fieldSQLType(field *schema.Field) string { return field.UserSQLType } - if v, ok := field.Tag.Options["composite"]; ok { + if v, ok := field.Tag.Option("composite"); ok { return v } - if _, ok := field.Tag.Options["hstore"]; ok { + if _, ok := field.Tag.Option("hstore"); ok { return "hstore" } |
