t_algebra 0.1.2 → 0.1.3

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: 2c61dbc20ba8e3f3b37778601949560237c224902454ab26b935c5dc048c8511
4
- data.tar.gz: 1a9f3e3b7dc17c500c7e827514cc332b1ac9d4c5da919d8de9c4cd16cb1fc6a8
3
+ metadata.gz: 6221dd03765274df626f469be73419363b05e6477d272b08ec52b1d84a2a4b53
4
+ data.tar.gz: de23c69aaba2ef29785c30e329b99b164c185664435da5d80ae0c6c45db2701b
5
5
  SHA512:
6
- metadata.gz: 823c7c82e469fb68b44cb00dda7f796ce1d8c1717c9cb312e659d42a68d21a46b43c34b8af08792728fb13042302138b212c9ec93d1ccf1b338ba13036c6afb8
7
- data.tar.gz: 0b6223275fa9dc3b21e31ad1a0975457e3214351aa4b008cd1e894ef51bd2fca60e60159a42f9c55f9d5ce49da8fd487502b7d4ce3991891ba6c452e6ecf5899
6
+ metadata.gz: 731382f98a5589bd8eae51bbc590eba8a4b08abe3fce0b4f28a39186884fa24c34c39547360c8babe1c81bf5b8357827dc7dbcaa1ffe0b27e6a6e21ed1c80aa2
7
+ data.tar.gz: b48960e069fbac98a2da345bf29fd6f8df55f160c7d25fad674e2918522ff8c5024c366ab9d08d85eea144ed8af7ea070e25857ba5543b1f3c0b0751639bf791
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- t_algebra (0.1.1)
4
+ t_algebra (0.1.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -43,6 +43,14 @@ module TAlgebra
43
43
  alias_method :valid?, :right?
44
44
  alias_method :failure?, :left?
45
45
 
46
+ def fetch(key)
47
+ fmap { |o| o.respond_to?(:[]) ? o[key] : o.send(key) }.optional
48
+ end
49
+
50
+ def fetch!(key)
51
+ fmap { |o| o.respond_to?(:[]) ? o[key] : o.send(key) }.required
52
+ end
53
+
46
54
  def fmap
47
55
  super.with_name(name)
48
56
  rescue => e
@@ -1,3 +1,3 @@
1
1
  module TAlgebra
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: t_algebra
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - aaron