Skip to content

Commit cb14027

Browse files
fix: make Base method dispatches more abstract
1 parent 4b0f574 commit cb14027

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/vector_of_array.jl

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -474,18 +474,20 @@ function Base.copy(VA::AbstractDiffEqArray)
474474
end
475475
Base.copy(VA::AbstractVectorOfArray) = typeof(VA)(copy(VA.u))
476476

477-
Base.zero(VA::VectorOfArray) = VectorOfArray(Base.zero.(VA.u))
477+
Base.zero(VA::AbstractVectorOfArray) = VectorOfArray(Base.zero.(VA.u))
478478

479-
function Base.zero(VA::DiffEqArray)
479+
function Base.zero(VA::AbstractDiffEqArray)
480480
u = Base.zero.(VA.u)
481-
DiffEqArray(u, VA.t, VA.p, VA.sys)
481+
DiffEqArray(u, VA.t, parameter_values(VA), symbolic_container(VA))
482482
end
483483

484484
Base.sizehint!(VA::AbstractVectorOfArray{T, N}, i) where {T, N} = sizehint!(VA.u, i)
485485

486486
Base.reverse!(VA::AbstractVectorOfArray) = reverse!(VA.u)
487-
Base.reverse(VA::VectorOfArray) = VectorOfArray(reverse(VA.u))
488-
Base.reverse(VA::DiffEqArray) = DiffEqArray(reverse(VA.u), VA.t, VA.p, VA.sys)
487+
Base.reverse(VA::AbstractVectorOfArray) = VectorOfArray(reverse(VA.u))
488+
function Base.reverse(VA::AbstractDiffEqArray)
489+
DiffEqArray(reverse(VA.u), VA.t, parameter_values(VA), symbolic_container(VA))
490+
end
489491

490492
function Base.resize!(VA::AbstractVectorOfArray, i::Integer)
491493
if Base.hasproperty(VA, :sys) && VA.sys !== nothing

0 commit comments

Comments
 (0)