@@ -163,29 +163,25 @@ _copyto!(_, _, dest::AbstractArray{T,N}, src::AbstractArray{V,N}) where {T,V,N}
163163 Base. invoke (copyto!, Tuple{AbstractArray{T,N},AbstractArray{V,N}}, dest, src)
164164
165165
166- copyto! (dest:: LayoutArray{<:Any,N} , src:: LayoutArray{<:Any,N} ) where N =
167- _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
168- copyto! (dest:: AbstractArray{<:Any,N} , src:: LayoutArray{<:Any,N} ) where N =
169- _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
170- copyto! (dest:: LayoutArray{<:Any,N} , src:: AbstractArray{<:Any,N} ) where N =
171- _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
172-
173- copyto! (dest:: SubArray{<:Any,N,<:LayoutArray} , src:: SubArray{<:Any,N,<:LayoutArray} ) where N =
174- _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
175- copyto! (dest:: SubArray{<:Any,N,<:LayoutArray} , src:: LayoutArray{<:Any,N} ) where N =
176- _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
177- copyto! (dest:: LayoutArray{<:Any,N} , src:: SubArray{<:Any,N,<:LayoutArray} ) where N =
178- _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
179- copyto! (dest:: SubArray{<:Any,N,<:LayoutArray} , src:: AbstractArray{<:Any,N} ) where N =
180- _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
181- copyto! (dest:: AbstractArray{<:Any,N} , src:: SubArray{<:Any,N,<:LayoutArray} ) where N =
182- _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
166+ _copyto! (dest, src) = _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
167+ copyto! (dest:: LayoutArray{<:Any,N} , src:: LayoutArray{<:Any,N} ) where N = _copyto! (dest, src)
168+ copyto! (dest:: AbstractArray{<:Any,N} , src:: LayoutArray{<:Any,N} ) where N = _copyto! (dest, src)
169+ copyto! (dest:: LayoutArray{<:Any,N} , src:: AbstractArray{<:Any,N} ) where N = _copyto! (dest, src)
170+
171+ copyto! (dest:: SubArray{<:Any,N,<:LayoutArray} , src:: SubArray{<:Any,N,<:LayoutArray} ) where N = _copyto! (dest, src)
172+ copyto! (dest:: SubArray{<:Any,N,<:LayoutArray} , src:: LayoutArray{<:Any,N} ) where N = _copyto! (dest, src)
173+ copyto! (dest:: LayoutArray{<:Any,N} , src:: SubArray{<:Any,N,<:LayoutArray} ) where N = _copyto! (dest, src)
174+ copyto! (dest:: SubArray{<:Any,N,<:LayoutArray} , src:: AbstractArray{<:Any,N} ) where N = _copyto! (dest, src)
175+ copyto! (dest:: AbstractArray{<:Any,N} , src:: SubArray{<:Any,N,<:LayoutArray} ) where N = _copyto! (dest, src)
176+
177+ copyto! (dest:: LayoutMatrix , src:: AdjOrTrans{<:Any,<:LayoutArray} ) = _copyto! (dest, src)
178+ copyto! (dest:: LayoutMatrix , src:: SubArray{<:Any,2,<:AdjOrTrans{<:Any,<:LayoutArray}} ) = _copyto! (dest, src)
179+ copyto! (dest:: AbstractMatrix , src:: AdjOrTrans{<:Any,<:LayoutArray} ) = _copyto! (dest, src)
180+ copyto! (dest:: AbstractMatrix , src:: SubArray{<:Any,2,<:AdjOrTrans{<:Any,<:LayoutArray}} ) = _copyto! (dest, src)
183181# ambiguity from sparsematrix.jl
184182if VERSION ≥ v " 1.5"
185- copyto! (dest:: LayoutMatrix , src:: SparseArrays.AbstractSparseMatrixCSC ) =
186- _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
187- copyto! (dest:: SubArray{<:Any,2,<:LayoutMatrix} , src:: SparseArrays.AbstractSparseMatrixCSC ) =
188- _copyto! (MemoryLayout (dest), MemoryLayout (src), dest, src)
183+ copyto! (dest:: LayoutMatrix , src:: SparseArrays.AbstractSparseMatrixCSC ) = _copyto! (dest, src)
184+ copyto! (dest:: SubArray{<:Any,2,<:LayoutMatrix} , src:: SparseArrays.AbstractSparseMatrixCSC ) = _copyto! (dest, src)
189185end
190186
191187zero! (A:: AbstractArray{T} ) where T = fill! (A,zero (T))
0 commit comments