diff --git a/lib/ArrayInterfaceOffsetArrays/Project.toml b/lib/ArrayInterfaceOffsetArrays/Project.toml index bf34d6887..c8b0dab23 100644 --- a/lib/ArrayInterfaceOffsetArrays/Project.toml +++ b/lib/ArrayInterfaceOffsetArrays/Project.toml @@ -1,6 +1,6 @@ name = "ArrayInterfaceOffsetArrays" uuid = "015c0d05-e682-4f19-8f0a-679ce4c54826" -version = "0.1.2" +version = "0.1.3" [deps] ArrayInterface = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9" diff --git a/lib/ArrayInterfaceOffsetArrays/src/ArrayInterfaceOffsetArrays.jl b/lib/ArrayInterfaceOffsetArrays/src/ArrayInterfaceOffsetArrays.jl index b9ca90e98..96b191c0e 100644 --- a/lib/ArrayInterfaceOffsetArrays/src/ArrayInterfaceOffsetArrays.jl +++ b/lib/ArrayInterfaceOffsetArrays/src/ArrayInterfaceOffsetArrays.jl @@ -44,5 +44,11 @@ end d = ArrayInterface.to_dims(A, dim) OffsetArrays.IdOffsetRange(ArrayInterface.axes(parent(A), d), relative_offsets(A, d)) end +function ArrayInterface.stride_rank(T::Type{<:OffsetArray}) + ArrayInterface.stride_rank(ArrayInterface.parent_type(T)) +end +function ArrayInterface.contiguous_axis(T::Type{<:OffsetArray}) + ArrayInterface.contiguous_axis(ArrayInterface.parent_type(T)) +end end # module diff --git a/lib/ArrayInterfaceOffsetArrays/test/runtests.jl b/lib/ArrayInterfaceOffsetArrays/test/runtests.jl index 36e5bc3eb..bc69420ae 100644 --- a/lib/ArrayInterfaceOffsetArrays/test/runtests.jl +++ b/lib/ArrayInterfaceOffsetArrays/test/runtests.jl @@ -29,3 +29,5 @@ o = OffsetArray(vec(A), 8); offset_view = @view OffsetArrays.centered(zeros(eltype(A), 5, 5))[:, begin]; # SubArray of OffsetArray @test @inferred(ArrayInterface.offsets(offset_view)) == (-2,) +B = OffsetArray(PermutedDimsArray(rand(2,3,4), (2,3,1))); +@test @inferred(ArrayInterface.StrideIndex(B)) === ArrayInterface.StrideIndex{3, (2, 3, 1), 3}((2, 6, static(1)), (1, 1, 1))