active_object 4.0.7 → 4.0.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 24ffb9180e5cc9d8cb5d113917fd0dfbb9df662b
4
- data.tar.gz: b51ad3733a1033e3572b2e8885fe580d6e7196bb
3
+ metadata.gz: 6fc08a3fb5836a6f154a0f1d7854cdafd68dfcea
4
+ data.tar.gz: 7deb7107836576302250d73656aaf4c0dd9eccb1
5
5
  SHA512:
6
- metadata.gz: 3e2c7cf4d9c1ac6f77ef2d1d4a5b6b03a6a7531135709513d835373104f137a4bb9422ba828cf8b185fba932c3448ff9423c97090f6a49234e186c822958e5f1
7
- data.tar.gz: a98cbeceb546c2c4d0dde6a742fdf4f21b7279a9e41df8d7ff3fb06b61e54ceedd6f02e97933df0c524e379e47f7ee816b02017cd4e909009e799d63976234e8
6
+ metadata.gz: d22be40f8fbe844dc638f0d265d03746816850fe2e1e5484ee67fe8131123588c232470f7d14afb96c3498bc3dfe01e632103c195b2384bd92024fdc5ab0f571
7
+ data.tar.gz: cc1543d95b6ca3a04b422ba207ef4af2e7c1700aab01d962953dd7a140e92eb91fc8635421d939d03a472b160af0d5c5e4b5e69bdc3adda3003672e6807cfff6
data/README.md CHANGED
@@ -459,6 +459,22 @@ end
459
459
  { foo: 'bar', baz: 'boz' }.assert_valid_keys(:foo, :boo) #=> raises 'ArgumentError: Unknown key: :baz. Valid keys are: :foo, :boo'
460
460
  ```
461
461
 
462
+ **Collect Keys:**
463
+ `collect_keys` returns an array with all keys converted using the block operation.
464
+
465
+ ```ruby
466
+ { foo: 'bar', 'baz' => :boo }.collect_keys #=> [:foo, 'baz']
467
+ { foo: 'bar', 'baz' => :boo }.collect_keys { |k| k.to_s.upcase } #=> ['FOO', BAZ']
468
+ ```
469
+
470
+ **Collect Values:**
471
+ `collect_values` returns an array with all values converted using the block operation.
472
+
473
+ ```ruby
474
+ { foo: 'bar', baz: :boo }.collect_values #=> ['bar', :boo]
475
+ { foo: 'bar', baz: :boo }.collect_values { |k| k.to_s.upcase } #=> ['BAR', BOO']
476
+ ```
477
+
462
478
  **Compact:**
463
479
  `compact` and `compact!` returns a hash with non nil values.
464
480
 
@@ -581,7 +597,7 @@ h.shuffle! #=> { d: 4, b: 2, c: 3, a: 1 }
581
597
  ```
582
598
 
583
599
  **Slice:**
584
- `slice` a hash to include only the given keys. Returns a hash containing the given keys.
600
+ `slice` returns a hash to include only the given keys. Returns a hash containing the given keys.
585
601
  `slice!` replaces the hash with only the given keys. Returns a hash containing the removed key/value pairs.
586
602
 
587
603
  ```ruby
@@ -622,14 +638,14 @@ h.slice!(:a, :b) #=> { c: 3, d: 4 }
622
638
  ```
623
639
 
624
640
  **Transform Keys:**
625
- `transform_keys` and `transform_keys!` a new hash with all keys converted using the block operation.
641
+ `transform_keys` and `transform_keys!` returns a new hash with all keys converted using the block operation.
626
642
 
627
643
  ```ruby
628
644
  { foo: 'bar', baz: 'boo' }.transform_keys { |k| k.to_s.upcase } #=> { 'FOO' => 'bar', 'BAZ' => 'boo' }
629
645
  ```
630
646
 
631
647
  **Transform Values:**
632
- `transform_values` and `transform_values!` a new hash with all values converted using the block operation.
648
+ `transform_values` and `transform_values!` returns a new hash with all values converted using the block operation.
633
649
 
634
650
  ```ruby
635
651
  { foo: 'bar', baz: 'boo' }.transform_values { |v| v.to_s.upcase } #=> {foo: 'BAR', baz: 'BOO' }
@@ -28,6 +28,20 @@ module ActiveObject::Hash
28
28
  reject! { |_, val| val.nil? }
29
29
  end
30
30
 
31
+ # rubocop:disable Lint/UnusedMethodArgument
32
+ def collect_keys(&block)
33
+ return(enum_for(:collect_keys)) unless block_given?
34
+
35
+ collect { |key, _| yield(key) }
36
+ end
37
+
38
+ def collect_values(&block)
39
+ return(enum_for(:collect_values)) unless block_given?
40
+
41
+ collect { |_, val| yield(val) }
42
+ end
43
+ # rubocop:enable Lint/UnusedMethodArgument
44
+
31
45
  def deep_merge(other_hash, &block)
32
46
  dup.deep_merge!(other_hash, yield(block))
33
47
  end
@@ -1,3 +1,3 @@
1
1
  module ActiveObject
2
- VERSION = '4.0.7'.freeze
2
+ VERSION = '4.0.8'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_object
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.7
4
+ version: 4.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juan Gomez
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-05-01 00:00:00.000000000 Z
11
+ date: 2017-05-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-configurable
@@ -197,7 +197,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
197
197
  version: '0'
198
198
  requirements: []
199
199
  rubyforge_project:
200
- rubygems_version: 2.6.11
200
+ rubygems_version: 2.6.12
201
201
  signing_key:
202
202
  specification_version: 4
203
203
  summary: Gem for commonly used ruby object helpers.