A function like copyto! that acts recursively as deepcopy

Something like

function recursive_copyto!(a::AbstractArray{T}, b::AbstractArray{T}) where {T}
    if T <: AbstractArray
        foreach(recursive_copyto!, a, b)
    else
        copyto!(a, b)
    end
    a
end

?

1 Like