Safe Haskell | None |
---|---|
Language | Haskell2010 |
Reading Symbols
from and writing to interface files
- newtype NamesDB = NamesDB FilePath
- runNamesModuleT :: ModuleT [Symbol] IO a -> Packages -> Map ModuleName [Symbol] -> IO (a, Map ModuleName [Symbol])
- evalNamesModuleT :: ModuleT [Symbol] IO a -> Packages -> IO a
- readInterface :: FilePath -> IO [Symbol]
- writeInterface :: FilePath -> [Symbol] -> IO ()
- data IfaceException = BadInterface FilePath String
High-level interface
The database used by hs-gen-iface
. Use it together with
functions from Distribution.HaskellSuite.Packages.
runNamesModuleT :: ModuleT [Symbol] IO a -> Packages -> Map ModuleName [Symbol] -> IO (a, Map ModuleName [Symbol]) Source
Specialized version of runModuleT
that works with name files
evalNamesModuleT :: ModuleT [Symbol] IO a -> Packages -> IO a Source
Specialized version of evalModuleT
that works with name files
Low-level interface
readInterface :: FilePath -> IO [Symbol] Source
Read an interface file
writeInterface :: FilePath -> [Symbol] -> IO () Source
Write an interface file
Exceptions
data IfaceException Source
BadInterface FilePath String | Interface could not be parsed. This tells you the file name of the interface file and the parse error text. |