definition:
|
updRule :: (a -> a)
-> ([(VarIndex, a)] -> [(VarIndex, a)])
-> (AExpr a -> AExpr a)
-> (String -> String)
-> ARule a -> ARule a
updRule fa fvs fe fs = trRule rule ext
where
rule a vs e = ARule (fa a) (fvs vs) (fe e)
ext a s = AExternal (fa a) (fs s)
|
demand:
|
no demanded arguments
|
deterministic:
|
deterministic operation
|
documentation:
|
--- update rule
|
failfree:
|
(_, _, _, _)
|
indeterministic:
|
referentially transparent operation
|
infix:
|
no fixity defined
|
iotype:
|
{(_,_,_,_) |-> {trRule}}
|
name:
|
updRule
|
precedence:
|
no precedence defined
|
result-values:
|
{trRule}
|
signature:
|
(a -> a) -> ([(Prelude.Int, a)] -> [(Prelude.Int, a)])
-> (FlatCurry.Annotated.Types.AExpr a -> FlatCurry.Annotated.Types.AExpr a)
-> (String -> String) -> FlatCurry.Annotated.Types.ARule a
-> FlatCurry.Annotated.Types.ARule a
|
solution-complete:
|
operation might suspend on free variables
|
terminating:
|
yes
|
totally-defined:
|
reducible on all ground data terms
|