class Some
Attributes
value[R]
Public Class Methods
new(value)
click to toggle source
# File lib/totally_lazy/option.rb, line 64 def initialize(value) @value = value end
Public Instance Methods
<=>(other)
click to toggle source
# File lib/totally_lazy/option.rb, line 134 def <=>(other) @value <=> other.value end
contains?(value)
click to toggle source
# File lib/totally_lazy/option.rb, line 68 def contains?(value) @value == value end
enumerator()
click to toggle source
# File lib/totally_lazy/option.rb, line 127 def enumerator Enumerator.new { |y| y << @value raise StopIteration.new } end
exists?(fn_pred=nil, &block_pred)
click to toggle source
# File lib/totally_lazy/option.rb, line 72 def exists?(fn_pred=nil, &block_pred) assert_funcs(fn_pred, block_given?) block_given? ? block_pred.call(@value) : fn_pred.(@value) end
flat_map(fn=nil, &block)
click to toggle source
# File lib/totally_lazy/option.rb, line 82 def flat_map(fn=nil, &block) # function should return an option assert_funcs(fn, block_given?) block_given? ? block.call(@value) : fn.(@value) end
fold(seed, fn=nil, &block)
click to toggle source
# File lib/totally_lazy/option.rb, line 87 def fold(seed, fn=nil, &block) assert_funcs(fn, block_given?) block_given? ? block.call(seed, @value) : fn.(seed, @value) end
Also aliased as: fold_left
get()
click to toggle source
# File lib/totally_lazy/option.rb, line 102 def get @value end
get_or_else(value_or_fn=nil, &block)
click to toggle source
# File lib/totally_lazy/option.rb, line 106 def get_or_else(value_or_fn=nil, &block) assert_funcs(value_or_fn, block_given?) get end
Also aliased as: or_else
get_or_nil()
click to toggle source
# File lib/totally_lazy/option.rb, line 113 def get_or_nil get end
get_or_raise(error)
click to toggle source
# File lib/totally_lazy/option.rb, line 117 def get_or_raise(error) get end
Also aliased as: get_or_throw
is_empty?()
click to toggle source
# File lib/totally_lazy/option.rb, line 94 def is_empty? false end
map(fn=nil, &block)
click to toggle source
# File lib/totally_lazy/option.rb, line 77 def map(fn=nil, &block) assert_funcs(fn, block_given?) option(block_given? ? block.call(@value) : fn.(@value)) end
size()
click to toggle source
# File lib/totally_lazy/option.rb, line 98 def size 1 end
to_either(left)
click to toggle source
# File lib/totally_lazy/option.rb, line 123 def to_either(left) right(value) end
to_s()
click to toggle source
# File lib/totally_lazy/option.rb, line 138 def to_s "some(#{value})" end