lib/active_object/hash.rb in active_object-4.0.7 vs lib/active_object/hash.rb in active_object-4.0.8

- old
+ new

@@ -26,9 +26,23 @@ def compact! reject! { |_, val| val.nil? } end + # rubocop:disable Lint/UnusedMethodArgument + def collect_keys(&block) + return(enum_for(:collect_keys)) unless block_given? + + collect { |key, _| yield(key) } + end + + def collect_values(&block) + return(enum_for(:collect_values)) unless block_given? + + collect { |_, val| yield(val) } + end + # rubocop:enable Lint/UnusedMethodArgument + def deep_merge(other_hash, &block) dup.deep_merge!(other_hash, yield(block)) end # rubocop:disable Metrics/MethodLength