module Divergent::Monad

The module defines the interfaces that other class should implement.

Examples:

Maybe.unit(1) # => Some(1)
Maybe.unit(1).fmap { |v| v + 1 } => Some(2)

Public Class Methods

included(subclass) click to toggle source
# File lib/divergent/monad.rb, line 24
def self.included(subclass)
  subclass.extend ClassMethods
  subclass.include InstanceMethods
end