diff --git a/array.go b/array.go index 39c8f7e2..d6ea0974 100644 --- a/array.go +++ b/array.go @@ -60,9 +60,26 @@ func Array(a interface{}) interface { return (*StringArray)(a) case *[][]byte: return (*ByteaArray)(a) - } - return GenericArray{a} + case *BoolArray: + return a + case *Float64Array: + return a + case *Float32Array: + return a + case *Int64Array: + return a + case *Int32Array: + return a + case *StringArray: + return a + case *ByteaArray: + return a + case *GenericArray: + return a + } + + return GenericArray{A: a} } // ArrayDelimiter may be optionally implemented by driver.Valuer or sql.Scanner