A shipment of emergency supplies has arrived, but there's a problem. To protect from damage, the items β flashlights, first-aid kits, blankets β are packed inside boxes, and some of those boxes are nested several layers deep inside other boxes!
To be prepared for an emergency, everything must be easily accessible in one box. Can you unpack all the supplies and place them into a single box, so they're ready when needed most?
Take a nested array of any depth and return a fully flattened array.
Note that some language tracks may include null-like values in the input array, and the way these values are represented varies by track. Such values should be excluded from the flattened array.
Additionally, the input may be of a different data type and contain different types, depending on the track.
Check the test suite for details.
input: [1, [2, 6, null], [[null, [4]], 5]]
output: [1, 2, 6, 4, 5]
The above description of this exercise is shared between all Exercism tracks. It speaks of "arrays", but there is no such data type in Elixir. This exercise is about lists.
Sign up to Exercism to learn and master Elixir with 57 concepts, 160 exercises, and real human mentoring, all for free.