Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name = "FillArrays"
uuid = "1a297f60-69ca-5386-bcde-b61e274b549b"
version = "0.11.7"
version = "0.12.0"

[deps]
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
Expand Down
8 changes: 8 additions & 0 deletions src/trues.jl
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,11 @@ function Base.getindex(x::AbstractArray{T,N}, mask::Trues{N, NTuple{N,Base.OneTo
end
return x[trues(size(x))] # else revert to usual getindex method
end

# https://github.com/JuliaArrays/FillArrays.jl/issues/148
function Base.getindex(
a::FillArrays.AbstractFill{T, 1, Axes} where Axes,
b::Trues{1, Tuple{Base.OneTo{Int64}}}) where T
@boundscheck length(a) == length(b) || throw(BoundsError(a, b))
return Fill(a[1], length(a))
end
2 changes: 2 additions & 0 deletions test/runtests.jl
Original file line number Diff line number Diff line change
Expand Up @@ -1204,6 +1204,8 @@ end
@test_throws BoundsError ones(3)[Trues(2)]
@test_throws BoundsError setindex!(ones(3), zeros(3), Trues(2))
@test_throws DimensionMismatch setindex!(ones(2), zeros(3), Trues(2))
@test Ones(3)[Trues(3)] == Ones(3)
@test_throws BoundsError Ones(3)[Trues(2)]
end

@testset "FillArray interface" begin
Expand Down