resultt 0.1.0 → 1.0.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2dfaf0db7a6d1c04863673b8b799a21af5989232c7ac35a9c32804beb6673209
4
- data.tar.gz: 7a3051b8403628186b4f7d218b9dc7414b40725a82538c98c2a6d430abe56492
3
+ metadata.gz: ed2cb32f4444cbe09ba72b7c324d42917670895db8290b69f5b7dc188d03b32c
4
+ data.tar.gz: 77cf2965c93b0f1276f55b43dec5aa708089370cfce0dade6261dc9b88cbb38d
5
5
  SHA512:
6
- metadata.gz: b53e507e0973e2f3611402b035b16d0ee76e9f5df070bf33bc1a9ca0933718aa17d266a6e7d51f0d7b8abfa750cfd59c41b7a5a0debab4001fcfc561cd96d0e5
7
- data.tar.gz: e26f335c786ed51137215577868527aabf6aac046f10bbedb0499efee01cc2214bc25b1aaeeddd7ae147f2b9cdb662b2947293a9ee3588e48b89b2392584c35e
6
+ metadata.gz: 40f63cd41eb3fc36e546b9ad01269e4311680c5d1d6aafe672239c578456fd8b148fddb82bc4c67463722337a6b90cede2c375f30cefd24de5badad655887c69
7
+ data.tar.gz: 22494a654d4cfe39cea91c903478471e05d13a3e659c43087d93664e8eb7df7bb066e1f755d8052d67acfeb7cb30b0d94462ede84e5b478e362e60243db07c56
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- resultt (0.1.0)
4
+ resultt (1.0.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/Rakefile CHANGED
@@ -4,3 +4,13 @@ require "rspec/core/rake_task"
4
4
  RSpec::Core::RakeTask.new(:spec)
5
5
 
6
6
  task :default => :spec
7
+
8
+ desc 'Start a console session with Fawry gem loaded'
9
+ task :console do
10
+ require 'irb'
11
+ require 'irb/completion'
12
+ require 'resultt'
13
+
14
+ ARGV.clear
15
+ IRB.start
16
+ end
data/lib/resultt.rb CHANGED
@@ -5,7 +5,8 @@ module Resultt
5
5
  class NilValueError < StandardError; end;
6
6
 
7
7
  def Result
8
- success = Success.new yield
8
+ value = yield_all(yield)
9
+ success = Success.new(value)
9
10
  raise NilValueError, 'Resultt returned a nil value' if success.value.nil?
10
11
 
11
12
  success
@@ -58,4 +59,12 @@ module Resultt
58
59
  end
59
60
  alias success? ok?
60
61
  end
62
+
63
+ private
64
+
65
+ def yield_all(yielded)
66
+ return yield_all(yielded.call) if yielded.is_a? Proc
67
+
68
+ yielded
69
+ end
61
70
  end
@@ -1,3 +1,3 @@
1
1
  module Resultt
2
- VERSION = "0.1.0"
2
+ VERSION = "1.0.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resultt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amr Bakry
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-10-11 00:00:00.000000000 Z
11
+ date: 2020-01-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler