diff --git a/ext/StructArraysSparseArraysExt.jl b/ext/StructArraysSparseArraysExt.jl index 8b712279..f6dfd0bf 100644 --- a/ext/StructArraysSparseArraysExt.jl +++ b/ext/StructArraysSparseArraysExt.jl @@ -1,11 +1,11 @@ module StructArraysSparseArraysExt -using StructArrays: StructArray, components +using StructArrays: StructArray, components, createinstance import SparseArrays: sparse, issparse function sparse(S::StructArray{T}) where {T} sparse_components = map(sparse, components(S)) - T.(sparse_components...) + return createinstance.(T, sparse_components...) end issparse(S::StructArray) = all(issparse, components(S))