@@ -153,6 +153,7 @@ struct VectorOfArrayStyle{N} <: Broadcast.AbstractArrayStyle{N} end # N is only
153153VectorOfArrayStyle (:: Val{N} ) where N = VectorOfArrayStyle {N} ()
154154
155155# The order is important here. We want to override Base.Broadcast.DefaultArrayStyle to return another Base.Broadcast.DefaultArrayStyle.
156+ Broadcast. BroadcastStyle (a:: VectorOfArrayStyle , :: Base.Broadcast.DefaultArrayStyle{0} ) = a
156157Broadcast. BroadcastStyle (:: VectorOfArrayStyle{N} , a:: Base.Broadcast.DefaultArrayStyle{M} ) where {M,N} = Base. Broadcast. DefaultArrayStyle (Val (max (M, N)))
157158Broadcast. BroadcastStyle (:: VectorOfArrayStyle{N} , a:: Base.Broadcast.AbstractArrayStyle{M} ) where {M,N} = typeof (a)(Val (max (M, N)))
158159Broadcast. BroadcastStyle (:: VectorOfArrayStyle{M} , :: VectorOfArrayStyle{N} ) where {M,N} = VectorOfArrayStyle (Val (max (M, N)))
@@ -161,7 +162,7 @@ Broadcast.BroadcastStyle(::Type{<:AbstractVectorOfArray{T,N}}) where {T,N} = Vec
161162@inline function Base. copy (bc:: Broadcast.Broadcasted{<:VectorOfArrayStyle} )
162163 N = narrays (bc)
163164 x = unpack_voa (bc, 1 )
164- return VectorOfArray (map (1 : N) do i
165+ VectorOfArray (map (1 : N) do i
165166 copy (unpack_voa (bc, i))
166167 end )
167168end
@@ -195,7 +196,7 @@ common_length(a, b) =
195196_narrays (args:: AbstractVectorOfArray ) = length (args)
196197@inline _narrays (args:: Tuple ) = common_length (narrays (args[1 ]), _narrays (Base. tail (args)))
197198_narrays (args:: Tuple{Any} ) = _narrays (args[1 ])
198- _narrays (args :: Tuple{} ) = 0
199+ _narrays (:: Any ) = 0
199200
200201# drop axes because it is easier to recompute
201202@inline unpack_voa (bc:: Broadcast.Broadcasted{Style} , i) where Style = Broadcast. Broadcasted {Style} (bc. f, unpack_args_voa (i, bc. args))
0 commit comments