CurryInfo: flatcurry-annotated-3.3.0 / FlatCurry.Annotated.Goodies.updLets

definition:
updLets :: (a -> [((VarIndex, a), AExpr a)] -> AExpr a -> AExpr a) -> AExpr a -> AExpr a
updLets lt = trExpr AVar ALit AComb lt AFree AOr ACase ABranch ATyped
demand:
no demanded arguments
deterministic:
deterministic operation
documentation:
--- update all let expressions in given expression
failfree:
_
indeterministic:
referentially transparent operation
infix:
no fixity defined
iotype:
{(_) |-> {trExpr}}
name:
updLets
precedence:
no precedence defined
result-values:
{trExpr}
signature:
(a -> [((Prelude.Int, a), FlatCurry.Annotated.Types.AExpr a)]
-> FlatCurry.Annotated.Types.AExpr a -> FlatCurry.Annotated.Types.AExpr a)
-> FlatCurry.Annotated.Types.AExpr a -> FlatCurry.Annotated.Types.AExpr a
solution-complete:
operation might suspend on free variables
terminating:
possibly non-terminating
totally-defined:
reducible on all ground data terms