class Maybe
Public Class Methods
concat(list, default = none)
click to toggle source
# File lib/indubitably.rb, line 27 def self.concat(list, default = none) if default == none list.select(&:is_some?).map(&:get) else list.map { |x| x.or_else(default) } end end
empty_value?(value)
click to toggle source
# File lib/indubitably.rb, line 35 def self.empty_value?(value) value.nil? || (value.respond_to?(:length) && value.length == 0) end
join?(value)
click to toggle source
# File lib/indubitably.rb, line 39 def self.join?(value) return value if value.is_a?(Maybe) Maybe(value) end
none()
click to toggle source
# File lib/indubitably.rb, line 44 def self.none @@none ||= None.new end
seq(list, default = none)
click to toggle source
# File lib/indubitably.rb, line 48 def self.seq(list, default = none) Maybe(concat(list, default)) end
Public Instance Methods
==(other)
click to toggle source
# File lib/indubitably.rb, line 18 def ==(other) other.class == self.class end
Also aliased as: eql?
or_nil()
click to toggle source
# File lib/indubitably.rb, line 23 def or_nil or_else(nil) end
to_ary()
click to toggle source
# File lib/indubitably.rb, line 13 def to_ary __enumerable_value end
Also aliased as: to_a