Safe Haskell | None |
---|---|
Language | Haskell2010 |
Binary interface file support.
Synopsis
- writeBinIface :: DynFlags -> FilePath -> ModIface -> IO ()
- readBinIface :: CheckHiWay -> TraceBinIFaceReading -> FilePath -> TcRnIf a b ModIface
- getSymtabName :: NameCacheUpdater -> Dictionary -> SymbolTable -> BinHandle -> IO Name
- getDictFastString :: Dictionary -> BinHandle -> IO FastString
- data CheckHiWay
- data TraceBinIFaceReading
- getWithUserData :: Binary a => NameCacheUpdater -> BinHandle -> IO a
- putWithUserData :: Binary a => (SDoc -> IO ()) -> BinHandle -> a -> IO ()
Documentation
readBinIface :: CheckHiWay -> TraceBinIFaceReading -> FilePath -> TcRnIf a b ModIface Source #
Read an interface file
getSymtabName :: NameCacheUpdater -> Dictionary -> SymbolTable -> BinHandle -> IO Name Source #
getDictFastString :: Dictionary -> BinHandle -> IO FastString Source #
data CheckHiWay Source #
Instances
Eq CheckHiWay # | |
Defined in BinIface (==) :: CheckHiWay -> CheckHiWay -> Bool # (/=) :: CheckHiWay -> CheckHiWay -> Bool # |
data TraceBinIFaceReading Source #
Instances
Eq TraceBinIFaceReading # | |
Defined in BinIface (==) :: TraceBinIFaceReading -> TraceBinIFaceReading -> Bool # (/=) :: TraceBinIFaceReading -> TraceBinIFaceReading -> Bool # |
getWithUserData :: Binary a => NameCacheUpdater -> BinHandle -> IO a Source #
This performs a get action after reading the dictionary and symbol table. It is necessary to run this before trying to deserialise any Names or FastStrings.
putWithUserData :: Binary a => (SDoc -> IO ()) -> BinHandle -> a -> IO () Source #
Put a piece of data with an initialised UserData
field. This
is necessary if you want to serialise Names or FastStrings.
It also writes a symbol table and the dictionary.
This segment should be read using getWithUserData
.