definition: |
updCStatement :: (CExpr -> CExpr) -> (CPattern -> CPattern) -> (CLocalDecl -> CLocalDecl) -> CStatement -> CStatement updCStatement fe fp fd = trCStatement sexp spat slet where sexp exp = CSExpr (fe exp) spat pat exp = CSPat (fp pat) (fe exp) slet locals = CSLet (map fd locals) |
demand: |
no demanded arguments |
deterministic: |
deterministic operation |
documentation: |
Updates a statement (occuring in do expressions or list comprehensions). |
failfree: |
(_, _, _) |
indeterministic: |
referentially transparent operation |
infix: |
no fixity defined |
iotype: |
{(_,_,_) |-> {trCStatement}} |
name: |
updCStatement |
precedence: |
no precedence defined |
result-values: |
{trCStatement} |
signature: |
(AbstractCurry.Types.CExpr -> AbstractCurry.Types.CExpr) -> (AbstractCurry.Types.CPattern -> AbstractCurry.Types.CPattern) -> (AbstractCurry.Types.CLocalDecl -> AbstractCurry.Types.CLocalDecl) -> AbstractCurry.Types.CStatement -> AbstractCurry.Types.CStatement |
solution-complete: |
operation might suspend on free variables |
terminating: |
yes |
totally-defined: |
reducible on all ground data terms |