CurryInfo: contract-prover-4.0.0 / ContractProver.writeTransformedFCY

definition: Info
 
writeTransformedFCY :: Options -> String -> Prog -> IO ()
writeTransformedFCY opts progfile prog = do
  ccpath <- getContractCheckerModulePath
  ccprog <- runModuleActionQuiet readFlatCurry ccpath
  let rnmccprog = FCG.rnmProg (FCG.progName prog) ccprog
      ccimps    = FCG.progImports rnmccprog
      ccfuncs   = FCG.progFuncs rnmccprog
  writeFCY progfile
           (FCG.updProgFuncs (++ ccfuncs)
                             (FCG.updProgImports (`union` ccimps) prog))
  printWhenStatus opts $ "Transformed program written to: " ++ progfile
demand: Info
 no demanded arguments
deterministic: Info
 deterministic operation
documentation: Info
 
Writes the transformed FlatCurry program together with the contents
of the auxiliary `ContractChecker` module.
failfree: Info
 <FAILING>
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {(_,_,_) |-> _}
name: Info
 writeTransformedFCY
precedence: Info
 no precedence defined
result-values: Info
 _
signature: Info
 ToolOptions.Options -> String -> FlatCurry.Types.Prog -> 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