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

definition:
rnmAllVars :: Update (AExpr _) VarIndex
rnmAllVars f = trExpr var ALit AComb lt fre AOr ACase branch ATyped
 where
   var a = AVar a . f
   fre a vs b = AFree a (map (\(v, x) -> (f v, x)) vs) b
   lt a = ALet a . map (\ ((n, x), exp) -> ((f n, x),exp))
   branch = ABranch . updPatArgs (map (\(v, a) -> (f v, a)))
demand:
no demanded arguments
deterministic:
deterministic operation
documentation:
--- rename all variables (also in patterns) in expression
failfree:
_
indeterministic:
referentially transparent operation
infix:
no fixity defined
iotype:
{(_) |-> {trExpr}}
name:
rnmAllVars
precedence:
no precedence defined
result-values:
{trExpr}
signature:
(Prelude.Int -> Prelude.Int) -> 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