Sha256: 4d30a33cb35d04cda60e3ec0b80a0c3e2678f2017bc16f1a1fe3f86d77485816

Contents?: true

Size: 538 Bytes

Versions: 17

Compression:

Stored size: 538 Bytes

Contents

require 'active_support/core_ext/object/blank'

module MoreCoreExtensions
  module HashDeletes
    # Deletes all keys where the value is nil
    #
    #   {:a => 1, :b => [], :c => nil}.delete_nils # => {:a => 1, :b => []}
    def delete_nils
      delete_if { |k, v| v.nil? }
    end

    # Deletes all keys where the value is blank
    #
    #   {:a => 1, :b => [], :c => nil}.delete_blanks # => {:a => 1}
    def delete_blanks
      delete_if { |k, v| v.blank? }
    end
  end
end

Hash.send(:include, MoreCoreExtensions::HashDeletes)

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
more_core_extensions-4.1.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-4.0.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-3.8.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-3.7.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-3.6.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-3.5.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-3.4.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-3.3.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-3.2.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-3.1.1 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-3.1.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-1.2.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-1.1.2 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-1.1.1 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-1.1.0 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-1.0.2 lib/more_core_extensions/core_ext/hash/deletes.rb
more_core_extensions-1.0.1 lib/more_core_extensions/core_ext/hash/deletes.rb