Skip to content

Commit cca6705

Browse files
committed
Support UnitRange(::ClosedInterval)
1 parent b981da8 commit cca6705

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

src/closed.jl

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,10 @@ function convert(::Type{R}, i::ClosedInterval{I}) where {R<:AbstractUnitRange,I<
100100
R(minimum(i), maximum(i))
101101
end
102102

103+
function (::Type{R})(i::ClosedInterval{I}) where {R<:AbstractUnitRange,I<:Integer}
104+
R(minimum(i), maximum(i))
105+
end
106+
103107
range(i::ClosedInterval{I}) where {I<:Integer} = convert(UnitRange{I}, i)
104108

105109
Base.promote_rule(::Type{ClosedInterval{T1}}, ::Type{ClosedInterval{T2}}) where {T1,T2} = ClosedInterval{promote_type(T1, T2)}

test/runtests.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ using Compat.Dates
1515
@test @inferred(convert(UnitRange, I)) === 0:3
1616
@test @inferred(range(I)) === 0:3
1717
@test @inferred(convert(UnitRange{Int16}, I)) === Int16(0):Int16(3)
18+
@test @inferred(UnitRange{Int16}(I)) === Int16(0):Int16(3)
1819
J = 3..2
1920
K = 5..4
2021
L = 3 ± 2

0 commit comments

Comments
 (0)