module Enzymator::Types::List::Foldable::Enumerable

Public Instance Methods

enzy_fold(empty, append) click to toggle source
# File lib/enzymator/types/list/foldable/enumerable.rb, line 7
def enzy_fold(empty, append)
  append = enzy_mappend if append == :mappend
  empty  = enzy_mempty  if empty  == :mempty

  reduce(empty, &append)
end

Private Instance Methods

enzy_inner_type() click to toggle source
# File lib/enzymator/types/list/foldable/enumerable.rb, line 24
def enzy_inner_type
  first_elem = first
  first_elem.nil? ? :missing_inner_type : first_elem.class
end
enzy_mappend() click to toggle source
# File lib/enzymator/types/list/foldable/enumerable.rb, line 16
def enzy_mappend
  enzy_inner_type.enzy_mappend
end
enzy_mempty() click to toggle source
# File lib/enzymator/types/list/foldable/enumerable.rb, line 20
def enzy_mempty
  enzy_inner_type.enzy_mempty
end