Sha256: dffad193448490cfd821d1bf5134ed3577fd6768aa8e6922592e89d1dcc43f80

Contents?: true

Size: 287 Bytes

Versions: 14

Compression:

Stored size: 287 Bytes

Contents

require 'gorillib/object/blank'

#
# deep_compact! removes all 'blank?' elements in the array in place, recursively
#
class Array
  def deep_compact!
    self.map! do |val|
      val.deep_compact! if val.respond_to?(:deep_compact!)
      val unless val.blank?
    end.compact!
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
gorillib-0.4.0pre lib/gorillib/array/deep_compact.rb
gorillib-0.4.1pre lib/gorillib/array/deep_compact.rb
gorillib-0.1.11 lib/gorillib/array/deep_compact.rb
gorillib-0.1.9 lib/gorillib/array/deep_compact.rb
gorillib-0.1.8 lib/gorillib/array/deep_compact.rb
gorillib-0.1.7 lib/gorillib/array/deep_compact.rb
gorillib-0.1.6 lib/gorillib/array/deep_compact.rb
gorillib-0.1.5 lib/gorillib/array/deep_compact.rb
gorillib-0.1.4 lib/gorillib/array/deep_compact.rb
gorillib-0.1.3 lib/gorillib/array/deep_compact.rb
gorillib-0.1.2 lib/gorillib/array/deep_compact.rb
gorillib-0.1.1 lib/gorillib/array/deep_compact.rb
gorillib-0.1.0 lib/gorillib/array/deep_compact.rb
gorillib-0.0.8 lib/gorillib/array/deep_compact.rb