definition:
|
writeResInfoFile :: Options -> [(QName,ResiduationInfo)] -> IO ()
writeResInfoFile opts resinfo = do
let rifile = optOutput opts
createDirectoryIfMissing True (takeDirectory rifile)
writeFile rifile (show (map fri2term resinfo) ++ "\n")
printWhenStatus opts $ "Residuation info written into '" ++ rifile ++ "'"
where
fri2term (qn,ri) = (showQName qn, ri2term ri)
where
ri2term MayResiduate = [0]
ri2term NoResInfo = [0]
ri2term (NoResiduateIf xs) = xs
|
demand:
|
no demanded arguments
|
deterministic:
|
deterministic operation
|
documentation:
|
Writes a file containing residuation information in Curry term format.
The term is a list of pairs consisting of the qualified function name
together with the list of argument positions which must be ground values
to ensure that the function call does not residuate and yields a
ground value. If the function might always residuate, the argument
position list is [0].
|
indeterministic:
|
referentially transparent operation
|
infix:
|
no fixity defined
|
iotype:
|
{(_,_) |-> _}
|
name:
|
writeResInfoFile
|
precedence:
|
no precedence defined
|
result-values:
|
_
|
signature:
|
ToolOptions.Options
-> [((String, String), Analysis.Residuation.ResiduationInfo)] -> Prelude.IO ()
|
solution-complete:
|
operation might suspend on free variables
|
terminating:
|
possibly non-terminating
|
totally-defined:
|
possibly non-reducible on same data term
|