CurryInfo: rewriting-3.0.0 / Rewriting.Files.readCurryProgram

definition:
 
readCurryProgram :: String -> IO (Either String RWData)
readCurryProgram fn = do res <- tryReadCurryFile fn
                         case res of
                           Left e   -> return (Left e)
                           Right cp -> return (Right (fromCurryProg cp))
demand:
 no demanded arguments
deterministic:
 deterministic operation
documentation:
 
Tries to read and transform a Curry program into an equivalent
representation, where every function gets assigned the corresponding term
rewriting system and every type has a corresponding type declaration.
failfree:
 <FAILING>
indeterministic:
 referentially transparent operation
infix:
 no fixity defined
iotype:
 {(_) |-> _}
name:
 readCurryProgram
precedence:
 no precedence defined
result-values:
 _
signature:
 String
-> Prelude.IO (Prelude.Either String (Data.Map.Map (String, String) [(Rewriting.Term.Term (String, String), Rewriting.Term.Term (String, String))], [AbstractCurry.Types.CTypeDecl]))
solution-complete:
 operation might suspend on free variables
terminating:
 possibly non-terminating
totally-defined:
 possibly non-reducible on same data term