refinements 12.0.0 → 12.0.1

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
  SHA256:
3
- metadata.gz: a497496f7842bab471ed5d7703054c050aad5d62dcdc317678d4d40d871dbefe
4
- data.tar.gz: 117975da807b741ff3b9dff8d585dbba8d00243af81f7c8daf964cda0de6b7b9
3
+ metadata.gz: 47bc3f7ccc3358f2f2d4e460f54cfca8df6d61591c23ffcc045f25553a8042fb
4
+ data.tar.gz: e2a45a52cacf3f25d0669fbc26a1c7c6fd910ffde9b99a5f492288da1578ede4
5
5
  SHA512:
6
- metadata.gz: bf13a20ac2e6f6849ab0ae65929f0574c6569cf5840e8aada271f63749326c319531c1e6a572b9bad2526cfb5280df48d9f1ee638a4cff87105e2429edad2d23
7
- data.tar.gz: 6b07855b0b39fe4d45509e9cbc11c8e7392a686cd485b73cab3c6134ad6d709f3355cb0b3f18bff81becbfb87058c8f3e0e872ad7db69a657a1c25e8d1390533
6
+ metadata.gz: 0613be51ea01d39789f44b5e7a7b1ee2b2d51ecd99e8060127a2e27b0273fc33f68537ac811a9f6b3f1a1caa927ecca9647c1d0b8a3bc951b02930373dc06d94
7
+ data.tar.gz: efddb442981da3c05360993f25d87cbbe4dff0d783f94414e80f83b6856877ed1500bb90fd999d60ed6cb00769abea00e291308b4afefd943b9a04de5d7e532c
checksums.yaml.gz.sig CHANGED
Binary file
data/README.adoc CHANGED
@@ -575,12 +575,13 @@ expression `example.fetch(:desired_key) || "default_value"`.
575
575
 
576
576
  [source,ruby]
577
577
  ----
578
- {a: "demo"}.fetch_value :a, "default" # "demo"
579
- {a: "demo"}.fetch_value :a # "demo"
580
- {a: nil}.fetch_value :a, "default" # "default"
581
- {}.fetch_value(:a) { "default" } # "default"
582
- {}.fetch_value :a # KeyError
583
- {a: "demo"}.fetch_value # ArgumentError
578
+ {a: "demo"}.fetch_value :a, "default" # "demo"
579
+ {a: "demo"}.fetch_value :a # "demo"
580
+ {a: nil}.fetch_value :a, "default" # "default"
581
+ {a: nil}.fetch_value(:a) { "default" } # "default"
582
+ {}.fetch_value :a # KeyError
583
+ {}.fetch_value(:a) { "default" } # "default"
584
+ {a: "demo"}.fetch_value # ArgumentError
584
585
  ----
585
586
 
586
587
  ===== #flatten_keys
@@ -51,7 +51,9 @@ module Refinements
51
51
  each.with_object({}) { |(key, value), diff| diff[key] = [value, nil] }
52
52
  end
53
53
 
54
- def fetch_value(key, *default, &) = fetch(key, *default, &) || default.first
54
+ def fetch_value(key, *default, &)
55
+ fetch(key, *default, &) || (yield if block_given?) || default.first
56
+ end
55
57
 
56
58
  def flatten_keys prefix: nil, delimiter: "_"
57
59
  reduce({}) do |accumulator, (key, value)|
data/refinements.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "refinements"
5
- spec.version = "12.0.0"
5
+ spec.version = "12.0.1"
6
6
  spec.authors = ["Brooke Kuhlmann"]
7
7
  spec.email = ["brooke@alchemists.io"]
8
8
  spec.homepage = "https://alchemists.io/projects/refinements"
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: refinements
3
3
  version: !ruby/object:Gem::Version
4
- version: 12.0.0
4
+ version: 12.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -35,7 +35,7 @@ cert_chain:
35
35
  3n5C8/6Zh9DYTkpcwPSuIfAga6wf4nXc9m6JAw8AuMLaiWN/r/2s4zJsUHYERJEu
36
36
  gZGm4JqtuSg8pYjPeIJxS960owq+SfuC+jxqmRA54BisFCv/0VOJi7tiJVY=
37
37
  -----END CERTIFICATE-----
38
- date: 2024-01-01 00:00:00.000000000 Z
38
+ date: 2024-01-13 00:00:00.000000000 Z
39
39
  dependencies: []
40
40
  description:
41
41
  email:
@@ -91,7 +91,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
91
91
  - !ruby/object:Gem::Version
92
92
  version: '0'
93
93
  requirements: []
94
- rubygems_version: 3.5.3
94
+ rubygems_version: 3.5.4
95
95
  signing_key:
96
96
  specification_version: 4
97
97
  summary: A collection of core Ruby object refinements.
metadata.gz.sig CHANGED
Binary file