Method: Fr::Reader.bind

Defined in:
lib/fr/monad/reader.rb

.bind(f, &g) ⇒ Object



28
29
30
31
32
33
34
# File 'lib/fr/monad/reader.rb', line 28

def bind(f, &g)
  lambda do |state|
    tuple = f.call(state)
    g.call(tuple[:value])
     .call(tuple[:state])
  end
end