diff --git a/src/wrappers.jl b/src/wrappers.jl index 7bb0e89..ca29c03 100644 --- a/src/wrappers.jl +++ b/src/wrappers.jl @@ -129,6 +129,7 @@ ndims(::Type{<:LinearAlgebra.UpperTriangular}) = 2 ndims(::Type{<:LinearAlgebra.UnitUpperTriangular}) = 2 ndims(::Type{<:LinearAlgebra.Diagonal}) = 2 ndims(::Type{<:LinearAlgebra.Tridiagonal}) = 2 +ndims(::Type{<:LinearAlgebra.Symmetric}) = 2 ndims(::Type{<:WrappedArray{<:Any,N}}) where {N} = N eltype(::Type{<:WrappedArray{T}}) where {T} = T # every wrapper has a T typevar diff --git a/test/runtests.jl b/test/runtests.jl index 11b4a6e..65a5b24 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -193,6 +193,7 @@ end @testset "type information" begin @test Adapt.ndims(LinearAlgebra.Transpose{Float64,Array{Float64,1}}) == 2 + @test Adapt.ndims(LinearAlgebra.Symmetric{Float64,Matrix{Float64}}) == 2 @test Adapt.ndims(Adapt.WrappedSubArray{Float64,3,Array{Float64,3}}) == 3 @test Adapt.parent(LinearAlgebra.Transpose{Float64,Array{Float64,1}}) == Array