class Resultr::Result
Attributes
reason[R]
value[R]
Public Class Methods
new(kind, value)
click to toggle source
# File lib/resultr/result.rb, line 8 def initialize(kind, value) @kind = kind @value = value end
Public Instance Methods
and_then() { |value| ... }
click to toggle source
# File lib/resultr/result.rb, line 21 def and_then if ok? yield @value else self end end
err?()
click to toggle source
# File lib/resultr/result.rb, line 17 def err? @kind == :err end
expect!(message = nil)
click to toggle source
# File lib/resultr/result.rb, line 37 def expect!(message = nil) return @value if ok? raise ::Resultr::ExpectationError, message || @value end
ok?()
click to toggle source
# File lib/resultr/result.rb, line 13 def ok? @kind == :ok end
or_else() { |value| ... }
click to toggle source
# File lib/resultr/result.rb, line 29 def or_else if err? yield @value else self end end
thus() { |result_proxy| ... }
click to toggle source
# File lib/resultr/result.rb, line 43 def thus result_proxy = ::Resultr::ResultProxy.new(self) yield result_proxy end