CurryInfo: cpm-3.3.0 / CPM.AbstractCurry.applyModuleRenames

definition: Info
 
applyModuleRenames :: [(String, String)] -> CurryProg -> CurryProg
applyModuleRenames names prog =
  updCProg maybeRename (map maybeRename) id id id id id id
           (updQNamesInCProg rnm prog)
 where
  maybeRename n = case lookup n names of
    Just n' -> n'
    Nothing -> n
  rnm mn@(mod, n) = case lookup mod names of
    Just mod' -> (mod', n)
    Nothing   -> mn
demand: Info
 no demanded arguments
deterministic: Info
 deterministic operation
documentation: Info
 
Renames all references to some modules in a Curry program.

@param mods - a map from old to new module names
@param prog - the program to modify
failfree: Info
 (_, _)
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {(_,_) |-> _}
name: Info
 applyModuleRenames
precedence: Info
 no precedence defined
result-values: Info
 _
signature: Info
 [(String, String)] -> AbstractCurry.Types.CurryProg
-> AbstractCurry.Types.CurryProg
solution-complete: Info
 operation might suspend on free variables
terminating: Info
 possibly non-terminating
totally-defined: Info
 possibly non-reducible on same data term