To fix the code, you can make the following changes:
main.rb100 chars7 lines
Here are the changes made:
flattenarray
is changed to FlattenArray
to follow Ruby conventions of using CamelCase for class names.return [] if ar.all?(&:nil?)
statement is changed to return [] if ar.nil?
to handle cases where the input array is nil
.ar.compact! if ar.include?(nil)
statement is removed because flatten
already removes nil
values.ar.flatten
statement is moved to the end and combined with compact
to first remove nil
values and then flatten the array.Now, the flatten
method in the FlattenArray
class will return a flattened array with nil
values removed.
gistlibby LogSnag