CurryInfo: abstract-haskell-3.0.0 / AbstractHaskell.Goodies.renameSymbolInProg

definition:
renameSymbolInProg :: (QName -> QName) -> Prog -> Prog
renameSymbolInProg ren (Prog name imports typedecls fundecls opdecls) =
  Prog
    (fst (ren (name, "")))
    (map (\mod -> fst $ ren (mod, "")) imports)
    (map (renameSymbolInTypeDecl ren) typedecls)
    (map (renameSymbolInFunc ren) fundecls)
    (map (renameOpDecl ren) opdecls)
demand:
argument 2
deterministic:
deterministic operation
failfree:
(_, _)
indeterministic:
referentially transparent operation
infix:
no fixity defined
iotype:
{(_,{Prog}) |-> {Prog}}
name:
renameSymbolInProg
precedence:
no precedence defined
result-values:
{Prog}
signature:
((String, String) -> (String, String)) -> AbstractHaskell.Types.Prog
-> AbstractHaskell.Types.Prog
solution-complete:
operation might suspend on free variables
terminating:
possibly non-terminating
totally-defined:
reducible on all ground data terms