resultt 0.1.0 → 1.0.0

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: 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