handleit 1.2.6 → 1.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/h.rb +1 -0
  3. data/lib/handle.rb +16 -4
  4. metadata +3 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2d1d9aa67b2978e194925dcbd564104257df6128cd764cf8b9cfc1fd79640584
4
- data.tar.gz: 5ba49368ecba15844c3b749b9ce8a86c1cff4cbc9cb3adf6cd1d12dff4e4fd77
3
+ metadata.gz: 1ce233cb6f9cde163e25b2d657e3f4e9d3cd754412e44b7de2c64b1fb140b325
4
+ data.tar.gz: 3a61af9d67ea864a1a16ef5b217d653831628e54df8a42580ccfd02416de81a9
5
5
  SHA512:
6
- metadata.gz: cd1bd74c1f31a555f151463869829ff6189db451571dea01427abf61edbe8601dd94d71050ecac19f774b9ad11f80014098a919c39432e96b62b3cb461d9a678
7
- data.tar.gz: 9751753eca99dbdb8e5e9e8b69bc70281c850314cb16453e090459938f57a9ab3b560d884c14207fc9b6d8754ede86331563f086583e86db4588fd32071a05dc
6
+ metadata.gz: eecad44f33d0aec1d36ba0afa4aef18ffd8a297ce360c178e8f60820abed24480617ffa945f7abe0a9a79ac08aaa5b474e5232eb684ef4e73241ca921fbe4944
7
+ data.tar.gz: 00c0c990ac864caf27ad6fcf0bc77fdb1f272592f24184a355897b4a81344a9780f17ea19aaf33fcf6034e12c4982e29ba3da46bde67195c5bfad0a968b9cf92
data/lib/h.rb ADDED
@@ -0,0 +1 @@
1
+ class H < Handle; end
data/lib/handle.rb CHANGED
@@ -19,11 +19,23 @@ class Handle
19
19
  error_handler(e)
20
20
  end
21
21
 
22
- def with(args={})
22
+ def >(args={}, &block)
23
+ with(args, &block)
24
+ end
25
+
26
+ def <=
27
+ result
28
+ end
29
+
30
+ def e(&block)
31
+ on_fail(&block)
32
+ end
33
+
34
+ def with(args={}, &block)
23
35
  args = args.slice(:on_fail)
24
36
 
25
37
  if success?
26
- @returns_pool << yield(@result.return, **options = {})
38
+ @returns_pool << block.call(@result.return, **options = {})
27
39
  @result.return = @returns_pool.last
28
40
  end
29
41
  self
@@ -36,8 +48,8 @@ class Handle
36
48
  end
37
49
  end
38
50
 
39
- def on_fail
40
- yield(@result.error, **options = {}) unless success?
51
+ def on_fail(&block)
52
+ block.call(@result.error, **options = {}) unless success?
41
53
  self
42
54
  end
43
55
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: handleit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.6
4
+ version: 1.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oleg Saltykov
@@ -16,6 +16,7 @@ executables: []
16
16
  extensions: []
17
17
  extra_rdoc_files: []
18
18
  files:
19
+ - lib/h.rb
19
20
  - lib/handle.rb
20
21
  homepage: https://github.com/nucleom42/handleit
21
22
  licenses:
@@ -36,7 +37,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
36
37
  - !ruby/object:Gem::Version
37
38
  version: '0'
38
39
  requirements: []
39
- rubygems_version: 3.1.4
40
+ rubygems_version: 3.0.9
40
41
  signing_key:
41
42
  specification_version: 4
42
43
  summary: Handleit - promise like way of handling logic execution with ability of chaining