From 753eba6524adbbc8ff9411f6d3122971c7526452 Mon Sep 17 00:00:00 2001 From: Michael Abbott Date: Mon, 30 Mar 2020 09:54:20 +0200 Subject: [PATCH] Use parent for similar(::PermutedDimsArray) --- base/permuteddimsarray.jl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/base/permuteddimsarray.jl b/base/permuteddimsarray.jl index d50cc11678e78e..348d4ad449a538 100644 --- a/base/permuteddimsarray.jl +++ b/base/permuteddimsarray.jl @@ -46,9 +46,11 @@ function PermutedDimsArray(data::AbstractArray{T,N}, perm) where {T,N} end Base.parent(A::PermutedDimsArray) = A.parent -Base.size(A::PermutedDimsArray{T,N,perm}) where {T,N,perm} = genperm(size(parent(A)), perm) +Base.size(A::PermutedDimsArray{T,N,perm}) where {T,N,perm} = genperm(size(parent(A)), perm) Base.axes(A::PermutedDimsArray{T,N,perm}) where {T,N,perm} = genperm(axes(parent(A)), perm) +Base.similar(A::PermutedDimsArray, T::Type, dims::Base.Dims) = similar(parent(A), T, dims) + Base.unsafe_convert(::Type{Ptr{T}}, A::PermutedDimsArray{T}) where {T} = Base.unsafe_convert(Ptr{T}, parent(A)) # It's OK to return a pointer to the first element, and indeed quite