ministryofjustice/Claim-for-Crown-Court-Defence

View on GitHub
lib/extensions/array_extension.rb

Summary

Maintainability
A
0 mins
Test Coverage
B
80%
module Extensions
  module ArrayExtension
    def zeroize_nils(value = 0.00)
      map { |element| element.presence || value }
    end

    def zeroize_nils!(value = 0.00)
      replace(zeroize_nils(value))
    end

    def average(total = size)
      any? ? sum.to_f / total : 0
    end

    def flat_select(&)
      flatten.compact.select(&)
    end
  end
end