CurryInfo: contract-prover-4.0.0 / ContractProver.writeTransformedTAFCY

definition:
 
writeTransformedTAFCY :: Options -> String -> TAProg -> IO ()
writeTransformedTAFCY opts progfile prog = do
  ccpath <- getContractCheckerModulePath
  ccprog <- runModuleActionQuiet readTypeAnnotatedFlatCurry ccpath
  let rnmccprog = rnmProg (progName prog) ccprog
      ccimps    = progImports rnmccprog
      ccfuncs   = progFuncs rnmccprog
  writeTypeAnnotatedFlatCurryFile progfile
     (updProgFuncs (++ ccfuncs)
                   (updProgImports (`union` ccimps) prog))
  printWhenStatus opts $ "Transformed program written to: " ++ progfile
demand:
 no demanded arguments
deterministic:
 deterministic operation
documentation:
 
Writes the transformed type-annotated FlatCurry program
together with the contents of the auxiliary `ContractChecker` module.
failfree:
 <FAILING>
indeterministic:
 referentially transparent operation
infix:
 no fixity defined
iotype:
 {(_,_,_) |-> _}
name:
 writeTransformedTAFCY
precedence:
 no precedence defined
result-values:
 _
signature:
 ToolOptions.Options -> String
-> FlatCurry.Annotated.Types.AProg FlatCurry.Types.TypeExpr -> Prelude.IO ()
solution-complete:
 operation might suspend on free variables
terminating:
 possibly non-terminating
totally-defined:
 possibly non-reducible on same data term