Module ICurry.Extended.Files

Module for handling Extended ICurry files

Author: Marc Andre Wittorf

Summary of exported operations:

lookupIECurryFile :: [String] -> String -> IO (Maybe String)   
Look up an Extended ICurry file in the search paths
getIECurryFile :: [String] -> String -> IO String   
Get an Extended ICurry file in the search paths.
readIECurry :: [String] -> String -> IO IEProg   
Read an Extended ICurry file.
writeIECurry :: [String] -> String -> IEProg -> IO ()   
Write an Extended ICurry file.

Exported operations:

lookupIECurryFile :: [String] -> String -> IO (Maybe String)   

Look up an Extended ICurry file in the search paths

Example call:
(lookupIECurryFile paths modname)
Parameters:
  • paths : the search paths
  • modname : the module name
Returns:
the module's path

getIECurryFile :: [String] -> String -> IO String   

Get an Extended ICurry file in the search paths. Error if not found

Example call:
(getIECurryFile paths modname)
Parameters:
  • paths : the search paths
  • modname : the module name
Returns:
the module's path

readIECurry :: [String] -> String -> IO IEProg   

Read an Extended ICurry file. Error if not found

Example call:
(readIECurry paths modname)
Parameters:
  • paths : the search paths
  • modname : the module name
Returns:
the Extended ICurry abstract representation

writeIECurry :: [String] -> String -> IEProg -> IO ()   

Write an Extended ICurry file. Find target directory based on source file

Example call:
(writeIECurry paths modname prog)
Parameters:
  • paths : the search paths
  • modname : the module name (for finding correct path)
  • prog : the Extended ICurry module