@@ -206,7 +206,7 @@ function vstack_plus(itr)
206
206
s = size (val)
207
207
n = Base. haslength (itr) ? prod (s)* length (itr) : nothing
208
208
209
- v = similar_vector (val, something (n, prod (s)))
209
+ v = similar_vector (no_wraps ( val) , something (n, prod (s)))
210
210
copyto! (v, 1 , no_wraps (val), 1 , prod (s))
211
211
212
212
w = stack_rest (v, 0 , n, s, itr, state):: Vector
@@ -275,8 +275,6 @@ using OffsetArrays
275
275
no_wraps (a) = a
276
276
no_wraps (a:: OffsetArray ) = parent (a)
277
277
278
- similar_vector (a:: OffsetArray , n:: Int ) = similar_vector (parent (a), n)
279
-
280
278
rewrap_like (A, a) = A
281
279
function rewrap_like (A, a:: OffsetArray )
282
280
B = rewrap_like (A, parent (a))
287
285
288
286
using NamedDims
289
287
290
- similar_vector (a:: NamedDimsArray , n:: Int ) = similar_vector (parent (a), n)
291
-
292
288
ensure_named (a:: AbstractArray , L:: Tuple ) = NamedDimsArray (a, L)
293
289
ensure_named (a:: NamedDimsArray , L:: Tuple ) = refine_names (a, L)
294
290
@@ -303,12 +299,13 @@ getnames(xs::AbstractArray{<:AbstractArray}) =
303
299
304
300
# tuple of arrays
305
301
stack (x:: AT ) where {AT <: Tuple{Vararg{NamedDimsArray{L,T,IN}}} } where {T,IN,L} =
306
- ensure_named (stack (map (parent,x)), getnames (x))
302
+ ensure_named (stack (map (parent, x)), getnames (x))
307
303
308
304
getnames (xs:: Tuple{Vararg{<:NamedDimsArray}} ) =
309
305
(dimnames (first (xs))... , :_ )
310
306
311
307
# generators
308
+ #=
312
309
function stack(xs::Base.Generator{<:NamedDimsArray{L}}) where {L}
313
310
w = stack_iter(xs)
314
311
l = (ntuple(_ -> :_, ndims(w)-length(L))..., L...)
@@ -321,6 +318,7 @@ function stack(xs::Base.Generator{<:Iterators.ProductIterator{<:Tuple{<:NamedDim
321
318
l = (ntuple(_ -> :_, ndims(w)-length(L))..., L...)
322
319
ensure_named(w, l)
323
320
end
321
+ =#
324
322
325
323
function rewrap_like (A, a:: NamedDimsArray{L} ) where {L}
326
324
B = rewrap_like (A, parent (a))
0 commit comments