My simple solution... recursively remove nil. Kinda lame but oh well.
#
# Recursively clean nils out of our array structures...
#
def arrayDeepCompact(array)
array.each do |element|
if element.kind_of?(Array)
element.compact!
arrayDeepCompact(element)
end
end
end
Or if you prefer an extension
#
# Recursively clean nils out of our array structures...
#
class Array
def deep_compact()
dc(self)
end
private
def dc(array)
array.each do |element|
if element.kind_of?(Array)
element.compact! #compact first so won't need to itter over nil
dc(element)
end
end
end
end
No comments:
Post a Comment