@@ -3,6 +3,7 @@ using ArrayLayouts, LazyArrays, BandedMatrices, LinearAlgebra, Test
33using BandedMatrices: AbstractBandedLayout, _BandedMatrix, isbanded, BandedStyle, BandedColumns, BandedRows, resize, bandeddata
44using LazyArrays: PaddedLayout, PaddedRows, Accumulate, PaddedColumns, arguments, call, LazyArrayStyle, ApplyLayout, simplifiable, resizedata!, MulStyle, LazyLayout, BroadcastLayout, CachedArrayStyle
55using ArrayLayouts: OnesLayout, StridedLayout
6+ import Base. Broadcast: BroadcastStyle
67LazyArraysBandedMatricesExt = Base. get_extension (LazyArrays, :LazyArraysBandedMatricesExt )
78BroadcastBandedLayout = LazyArraysBandedMatricesExt. BroadcastBandedLayout
89ApplyBandedLayout = LazyArraysBandedMatricesExt. ApplyBandedLayout
@@ -970,8 +971,15 @@ LinearAlgebra.lmul!(β::Number, A::PseudoBandedMatrix) = (lmul!(β, A.data); A)
970971
971972 @testset " BroadcastStyle with cached data" begin
972973 A = _BandedMatrix (Accumulate (* , 1 : 10 )' , 1 : 10 , 0 , 0 )
973- @test Base. BroadcastStyle (typeof (A)) == CachedArrayStyle {2} ()
974- @test Base. BroadcastStyle (typeof (A' )) == CachedArrayStyle {2} ()
974+ @test BroadcastStyle (typeof (A)) == CachedArrayStyle {2} ()
975+ @test BroadcastStyle (typeof (A' )) == CachedArrayStyle {2} ()
976+ end
977+
978+ @testset " Combining BandedStyle with CachedArrayStyle" begin
979+ @test BroadcastStyle (CachedArrayStyle {1} (), BandedStyle ()) == CachedArrayStyle {2} ()
980+ @test BroadcastStyle (BandedStyle (), CachedArrayStyle {1} ()) == CachedArrayStyle {2} ()
981+ @test BroadcastStyle (CachedArrayStyle {2} (), BandedStyle ()) == CachedArrayStyle {2} ()
982+ @test BroadcastStyle (BandedStyle (), CachedArrayStyle {2} ()) == CachedArrayStyle {2} ()
975983 end
976984end
977985
0 commit comments