handleit 1.2.6 → 1.2.7

Sign up to get free protection for your applications and to get access to all the features.
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