Skip to content

Instantly share code, notes, and snippets.

def my_flatten(s)
s.inject([]) do |arr, el|
el.respond_to?(:to_ary) ? my_flatten(arr+el) : arr.push(el)
end
end
samples = [
[[[2,3],[5,6,7],[[8,9],10],11,12]],
[1,2,[3],4],
[:foo, 'bar', 42, [{baz: 23}]]