CurryInfo: currypp-3.2.0 / CPP.ICode.ParseMonad.bindPM

definition:
bindPM :: PM a -> (a -> PM b) -> PM b
bindPM (PM m) f = PM $ bindWM m $ \b -> case b of
                                         Errors p -> cleanWM (Errors p)
                                         OK x     -> case f x of
                                                      PM a -> a
demand:
argument 1
deterministic:
deterministic operation
documentation:
--- Bind
failfree:
(_, _)
indeterministic:
referentially transparent operation
infix:
no fixity defined
iotype:
{({PM},_) |-> _}
name:
bindPM
precedence:
no precedence defined
result-values:
_
signature:
PM a -> (a -> PM b) -> PM b
solution-complete:
operation might suspend on free variables
terminating:
yes
totally-defined:
reducible on all ground data terms