summaryrefslogtreecommitdiff
path: root/vendor/github.com/uptrace/bun/dialect
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/uptrace/bun/dialect')
-rw-r--r--vendor/github.com/uptrace/bun/dialect/append.go46
-rw-r--r--vendor/github.com/uptrace/bun/dialect/pgdialect/dialect.go3
-rw-r--r--vendor/github.com/uptrace/bun/dialect/pgdialect/sqltype.go6
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"
}