summaryrefslogtreecommitdiff
path: root/libgo/go/exp/sql/convert.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/exp/sql/convert.go')
-rw-r--r--libgo/go/exp/sql/convert.go15
1 files changed, 15 insertions, 0 deletions
diff --git a/libgo/go/exp/sql/convert.go b/libgo/go/exp/sql/convert.go
index e46cebe9a3d..48e281203be 100644
--- a/libgo/go/exp/sql/convert.go
+++ b/libgo/go/exp/sql/convert.go
@@ -14,6 +14,21 @@ import (
"strconv"
)
+// subsetTypeArgs takes a slice of arguments from callers of the sql
+// package and converts them into a slice of the driver package's
+// "subset types".
+func subsetTypeArgs(args []interface{}) ([]interface{}, error) {
+ out := make([]interface{}, len(args))
+ for n, arg := range args {
+ var err error
+ out[n], err = driver.DefaultParameterConverter.ConvertValue(arg)
+ if err != nil {
+ return nil, fmt.Errorf("sql: converting argument #%d's type: %v", n+1, err)
+ }
+ }
+ return out, nil
+}
+
// convertAssign copies to dest the value in src, converting it if possible.
// An error is returned if the copy would result in loss of information.
// dest should be a pointer type.