Skip to content
This repository was archived by the owner on May 4, 2019. It is now read-only.

Commit 9428f16

Browse files
committed
Adapt to removal of _deleteat_(beg/end)!() and _growat_(beg/end)!() from Julia (#127)
Update splice!() to reflect changes in the corresponding Base function. This fixes the tests on recent Julia 0.5 master.
1 parent 57bea9f commit 9428f16

File tree

1 file changed

+24
-12
lines changed

1 file changed

+24
-12
lines changed

src/datavector.jl

+24-12
Original file line numberDiff line numberDiff line change
@@ -68,19 +68,31 @@ function Base.splice!(dv::DataVector, inds::(@compat Union{Integer, UnitRange{In
6868
l = last(inds)
6969
d = length(inds)
7070

71-
if m < d
72-
delta = d - m
73-
if f-1 < n-l
74-
Base._deleteat_beg!(a, f, delta)
75-
else
76-
Base._deleteat_end!(a, l-delta+1, delta)
71+
if VERSION >= v"0.5.0-dev+5022"
72+
if m < d
73+
delta = d - m
74+
i = (f - 1 < n - l) ? f : (l - delta + 1)
75+
Base._deleteat!(a, i, delta)
76+
elseif m > d
77+
delta = m - d
78+
i = (f - 1 < n - l) ? f : (l + 1)
79+
Base._growat!(a, i, delta)
7780
end
78-
elseif m > d
79-
delta = m - d
80-
if f-1 < n-l
81-
Base._growat_beg!(a, f, delta)
82-
else
83-
Base._growat_end!(a, l+1, delta)
81+
else
82+
if m < d
83+
delta = d - m
84+
if f-1 < n-l
85+
Base._deleteat_beg!(a, f, delta)
86+
else
87+
Base._deleteat_end!(a, l-delta+1, delta)
88+
end
89+
elseif m > d
90+
delta = m - d
91+
if f-1 < n-l
92+
Base._growat_beg!(a, f, delta)
93+
else
94+
Base._growat_end!(a, l+1, delta)
95+
end
8496
end
8597
end
8698

0 commit comments

Comments
 (0)