Skip to content

Commit 61823a9

Browse files
authored
add parent(r::IdOffsetRange) (#103)
* add parent(r::IdOffsetRange) * add test for parent(r::IdOffsetRange)
1 parent 098afd2 commit 61823a9

File tree

2 files changed

+3
-0
lines changed

2 files changed

+3
-0
lines changed

src/axes.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ end
124124
offset_coerce(::Type{I}, r::AbstractUnitRange) where I<:AbstractUnitRange{T} where T =
125125
convert(I, r), 0
126126

127+
@inline Base.parent(r::IdOffsetRange) = r.parent
127128
@inline Base.axes(r::IdOffsetRange) = (Base.axes1(r),)
128129
@inline Base.axes1(r::IdOffsetRange) = IdOffsetRange(Base.axes1(r.parent), r.offset)
129130
@inline Base.unsafe_indices(r::IdOffsetRange) = (r,)

test/runtests.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ using CatIndices: BidirectionalVector
3434
@test @inferred(OffsetArrays.IdOffsetRange{Int}(ro)) === ro
3535
@test @inferred(OffsetArrays.IdOffsetRange{Int16}(ro)) === OffsetArrays.IdOffsetRange(Base.OneTo(Int16(3)))
3636
@test @inferred(OffsetArrays.IdOffsetRange(ro)) === ro
37+
@test parent(ro) === ro.parent
38+
@test parent(rs) === rs.parent
3739
# construction/coercion preserves the values, altering the axes if needed
3840
r2 = @inferred(typeof(rs)(ro))
3941
@test typeof(r2) === typeof(rs)

0 commit comments

Comments
 (0)