diff --git a/Project.toml b/Project.toml index d0d3e60..6a51fba 100644 --- a/Project.toml +++ b/Project.toml @@ -1,6 +1,6 @@ name = "FillArrays" uuid = "1a297f60-69ca-5386-bcde-b61e274b549b" -version = "1.14.0" +version = "1.15.0" [deps] LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" diff --git a/src/FillArrays.jl b/src/FillArrays.jl index 66dad48..3ea1fe5 100644 --- a/src/FillArrays.jl +++ b/src/FillArrays.jl @@ -885,6 +885,9 @@ function repeat(A::AbstractFill; inner=ntuple(x->1, ndims(A)), outer=ntuple(x->1 _repeat(A, inner=inner, outer=outer) end +Base.checkindex(::Type{Bool}, inds::AbstractUnitRange, I::AbstractFill) = Base.checkindex(Bool, inds, getindex_value(I)) +Base.checkindex(::Type{Bool}, inds::AbstractUnitRange, I::AbstractFill{Bool}) = axes(I,1) == inds + include("oneelement.jl") end # module diff --git a/test/runtests.jl b/test/runtests.jl index 32cd2ed..e18bd01 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -342,6 +342,13 @@ end @test StepRangeLen(z) ≡ convert(StepRangeLen, z) ≡ convert(StepRangeLen{Int}, z) ≡ convert(typeof(s), z) ≡ convert(AbstractRange, z) ≡ s end end + + @testset "checkindex with an AbstractFill index" begin + @test Base.checkindex(Bool, 1:5, Fill(2, 3)) + @test !Base.checkindex(Bool, 1:5, Fill(0, 3)) + @test Base.checkindex(Bool, 1:5, Fill(true, 5)) + @test !Base.checkindex(Bool, 1:5, Fill(true, 2)) + end end @testset "RectDiagonal" begin