class Errant::Success

Attributes

exceptions[R]
value[R]

Public Class Methods

[](value) click to toggle source
# File lib/errant/success.rb, line 54
def self.[](value)
  new(*Result::DEFAULT_EXCEPTIONS)[value]
end
new(*exceptions) click to toggle source
Calls superclass method Errant::Result::new
# File lib/errant/success.rb, line 5
def initialize(*exceptions)
  super
end

Public Instance Methods

[](value) click to toggle source
# File lib/errant/success.rb, line 49
def [](value)
  @value = value
  self
end
each_error(&blk) click to toggle source
# File lib/errant/success.rb, line 22
def each_error(&blk)
  self
end
map_error(&blk) click to toggle source
# File lib/errant/success.rb, line 26
def map_error(&blk)
  self
end
method_missing(name, *args, &block) click to toggle source
# File lib/errant/success.rb, line 30
def method_missing(name, *args, &block)
  __copy[@value.send(name, *args, &block)]
rescue *exceptions => e
  Failure[e]
end
or_else(&blk) click to toggle source
# File lib/errant/success.rb, line 36
def or_else(&blk)
  value
end
successful?() click to toggle source
# File lib/errant/success.rb, line 40
def successful?
  true
end
to_a() click to toggle source
# File lib/errant/success.rb, line 44
def to_a
  __enumerable_value
end
Also aliased as: to_ary
to_ary()
Alias for: to_a

Private Instance Methods

__copy() click to toggle source
# File lib/errant/success.rb, line 60
def __copy
  Success.new(*exceptions)
end
__enumerable_value() click to toggle source
# File lib/errant/success.rb, line 64
def __enumerable_value
  [value]
end