Skip to content

Commit 8d81d29

Browse files
authored
Fix sort for RangeCumSum (#210)
* Fix sort for RangeCumSum * Test for value match
1 parent f28563b commit 8d81d29

File tree

4 files changed

+9
-3
lines changed

4 files changed

+9
-3
lines changed

Project.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "ArrayLayouts"
22
uuid = "4c555306-a7a7-4459-81d9-ec55ddd5c99a"
33
authors = ["Sheehan Olver <[email protected]>"]
4-
version = "1.6.1"
4+
version = "1.6.2"
55

66
[deps]
77
FillArrays = "1a297f60-69ca-5386-bcde-b61e274b549b"

src/ArrayLayouts.jl

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ using Base: AbstractCartesianIndex, OneTo, oneto, RangeIndex, ReinterpretArray,
77
Slice, tuple_type_tail, unalias,
88
@propagate_inbounds
99

10-
import Base: axes, size, length, eltype, ndims, first, last, diff, isempty, union, sort!,
10+
import Base: axes, size, length, eltype, ndims, first, last, diff, isempty, union, sort!, sort,
1111
==, *, +, -, /, \, copy, copyto!, similar, getproperty, getindex, strides,
1212
reverse, unsafe_convert, convert, view
1313

src/cumsum.jl

+2-1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ isempty(r::RangeCumsum) = isempty(r.range)
3737
union(a::RangeCumsum{<:Any,<:OneTo}, b::RangeCumsum{<:Any,<:OneTo}) =
3838
RangeCumsum(OneTo(max(last(a.range), last(b.range))))
3939

40-
sort!(a::RangeCumsum{<:Any,<:AbstractUnitRange}) = a
40+
sort!(a::RangeCumsum{<:Any,<:Base.OneTo}) = a
41+
sort(a::RangeCumsum{<:Any,<:Base.OneTo}) = a
4142

4243
convert(::Type{RangeCumsum{T,R}}, r::RangeCumsum) where {T,R} = RangeCumsum{T,R}(convert(R, r.range))

test/test_cumsum.jl

+5
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,12 @@ include("infinitearrays.jl")
1919

2020
a,b = RangeCumsum(Base.OneTo(5)), RangeCumsum(Base.OneTo(6))
2121
@test union(a,b) union(b,a) b
22+
@test sort!(copy(a)) == a
2223
@test sort!(a) a
24+
@test sort(a) a == Vector(a)
25+
26+
r = RangeCumsum(-4:4)
27+
@test sort(r) == sort(Vector(r))
2328

2429
a = RangeCumsum(Base.OneTo(3))
2530
b = RangeCumsum(1:3)

0 commit comments

Comments
 (0)