definition:
|
usedFunctions :: [QName] -> [FuncDecl] -> [FuncDecl]
usedFunctions _ [] = []
usedFunctions usedfns (fdecl : fdecls)
| funcName fdecl `elem` usedfns
= fdecl : usedFunctions (union (funcsOfFuncDecl fdecl) usedfns) fdecls
| otherwise
= usedFunctions usedfns fdecls
|
demand:
|
argument 2
|
deterministic:
|
deterministic operation
|
documentation:
|
Removes from a list of function declarations the functions not used
by an initial list of function names.
It is assumed that the list of functions is already sorted by
dependencies (ealier functions might call later ones).
|
failfree:
|
(_, _)
|
indeterministic:
|
referentially transparent operation
|
infix:
|
no fixity defined
|
iotype:
|
{(_,{[]}) |-> {[]} || (_,{:}) |-> {:,[]}}
|
name:
|
usedFunctions
|
precedence:
|
no precedence defined
|
result-values:
|
{:,[]}
|
signature:
|
[(String, String)] -> [FlatCurry.Types.FuncDecl] -> [FlatCurry.Types.FuncDecl]
|
solution-complete:
|
operation might suspend on free variables
|
terminating:
|
possibly non-terminating
|
totally-defined:
|
possibly non-reducible on same data term
|