@@ -401,7 +401,7 @@ similar(M::MulAdd{<:AbstractBandedLayout,<:AbstractBandedLayout}, ::Type{T}, axe
401
401
# BandedFill * BandedFill
402
402
# ##
403
403
404
- copy (M:: MulAdd{BandedColumns{FillLayout}, BandedColumns{FillLayout },ZerosLayout} ) =
404
+ copy (M:: MulAdd{<: BandedColumns{<:AbstractFillLayout},<: BandedColumns{<:AbstractFillLayout },ZerosLayout} ) =
405
405
_bandedfill_mul (M, axes (M. A), axes (M. B))
406
406
407
407
_bandedfill_mul (M, _, _) = copyto! (similar (M), M)
@@ -417,6 +417,13 @@ function _bandedfill_mul(M::MulAdd, ::Tuple{InfAxes,InfAxes}, ::Tuple{InfAxes,In
417
417
ret
418
418
end
419
419
420
+ _bandedfill_mul (M:: MulAdd , :: Tuple{InfAxes,Any} , :: Tuple{Any,Any} ) = ApplyArray (* , M. A, M. B)
421
+ _bandedfill_mul (M:: MulAdd , :: Tuple{InfAxes,Any} , :: Tuple{Any,InfAxes} ) = ApplyArray (* , M. A, M. B)
422
+ _bandedfill_mul (M:: MulAdd , :: Tuple{Any,Any} , :: Tuple{Any,InfAxes} ) = ApplyArray (* , M. A, M. B)
423
+ _bandedfill_mul (M:: MulAdd , :: Tuple{Any,InfAxes} , :: Tuple{InfAxes,InfAxes} ) = ApplyArray (* , M. A, M. B)
424
+ _bandedfill_mul (M:: MulAdd , :: Tuple{InfAxes,InfAxes} , :: Tuple{InfAxes,Any} ) = ApplyArray (* , M. A, M. B)
425
+ _bandedfill_mul (M:: MulAdd , :: Tuple{Any,InfAxes} , :: Tuple{InfAxes,Any} ) = ApplyArray (* , M. A, M. B)
426
+
420
427
mulreduce (M:: Mul{<:BandedColumns{<:AbstractFillLayout}, <:PertToeplitzLayout} ) = ApplyArray (M)
421
428
mulreduce (M:: Mul{<:PertToeplitzLayout, <:BandedColumns{<:AbstractFillLayout}} ) = ApplyArray (M)
422
429
mulreduce (M:: Mul{<:BandedColumns{<:AbstractFillLayout}, <:BandedToeplitzLayout} ) = ApplyArray (M)
0 commit comments