CurryInfo: call-analysis-3.2.0 / Analysis.printProgram

definition: Info
 
printProgram :: ADom a -> [Rule] -> [(String,[a])] -> IO ()
printProgram adom rules maincalls = do
  putStrLn $ "\nRewrite rules:\n\n" ++ showTRS rules
  putStrLn $ "\nMain calls: " ++
             intercalate ", " (map showATermCall maincalls)
  putStrLn ""
 where
  showATerm = adomShow adom

  showATermCall (f,args) =
    f ++ (if null args
          then []
          else '(' : intercalate "," (map showATerm args) ++ ")")
demand: Info
 no demanded arguments
deterministic: Info
 deterministic operation
documentation: Info
 
Prints a program and a list of abstract main calls.
The abstract domain is provided as a first argument.
failfree: Info
 <FAILING>
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {(_,_,_) |-> _}
name: Info
 printProgram
precedence: Info
 no precedence defined
result-values: Info
 _
signature: Info
 ADom a -> [TRS.Rule] -> [(String, [a])] -> Prelude.IO ()
solution-complete: Info
 operation might suspend on free variables
terminating: Info
 possibly non-terminating
totally-defined: Info
 possibly non-reducible on same data term