From b9d936fbff7230c55ece665ecbc3237556804e5c Mon Sep 17 00:00:00 2001 From: Carlos Cobo <699969+toqueteos@users.noreply.github.com> Date: Thu, 27 Jun 2024 13:16:44 +0200 Subject: [PATCH] avoid array rewrapping --- array.go | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) 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