class Resonad::Failure
Attributes
error[RW]
Private Class Methods
[](error = nil)
click to toggle source
# File lib/resonad.rb, line 73 def self.[](error = nil) if nil == error NIL_FAILURE else new(error) end end
new(error)
click to toggle source
# File lib/resonad.rb, line 81 def initialize(error) @error = error freeze end
Private Instance Methods
__flat_map(_)
click to toggle source
# File lib/resonad.rb, line 126 def __flat_map(_) self end
__flat_map_error(callable)
click to toggle source
# File lib/resonad.rb, line 130 def __flat_map_error(callable) callable.(error) end
__map(_)
click to toggle source
# File lib/resonad.rb, line 104 def __map(_) self end
__map_error(callable)
click to toggle source
# File lib/resonad.rb, line 117 def __map_error(callable) new_error = callable.(error) if new_error.__id__ == error.__id__ self else self.class.new(new_error) end end
__on_failure(callable)
click to toggle source
# File lib/resonad.rb, line 112 def __on_failure(callable) callable.(error) self end
__on_success(_)
click to toggle source
# File lib/resonad.rb, line 108 def __on_success(_) self end
deconstruct()
click to toggle source
# File lib/resonad.rb, line 94 def deconstruct [:failure, error] end
deconstruct_keys(_)
click to toggle source
# File lib/resonad.rb, line 98 def deconstruct_keys(_) { error: error } end
success?()
click to toggle source
# File lib/resonad.rb, line 86 def success? false end
value()
click to toggle source
# File lib/resonad.rb, line 90 def value raise NonExistentValue, "Failure resonads do not have values" end