How to flatten N-dimensional array?

Pavel Shkadzko p.shkadzko at gmail.com
Sat May 23 18:15:32 UTC 2020


I have tried to implement a simple flatten function for 
multidimensional arrays with recursive templates but got stuck. 
Then I googled a little and stumped into complex 
https://rosettacode.org/wiki/Flatten_a_list#D implementation 
which requires your arrays to be either TreeList or Algebraic. 
That is, it does not work out-of-the-box on something like 
int[][][].

I'd like to clarify a couple of questions first.

How come Phobos doesn't have "flatten" function for arrays?

Is there an implementation of flatten that works out-of-the-box 
on N-dim arrays outside of Phobos? Excluding "flattened" from 
mir.ndslice since it works on Slices.


More information about the Digitalmars-d-learn mailing list