ghc-8.0.1: The GHC API

Safe HaskellNone
LanguageHaskell2010

Binary

Documentation

data Bin a Source #

Instances

Bounded (Bin a) # 
Eq (Bin a) # 

Methods

(==) :: Bin a -> Bin a -> Bool #

(/=) :: Bin a -> Bin a -> Bool #

Ord (Bin a) # 

Methods

compare :: Bin a -> Bin a -> Ordering #

(<) :: Bin a -> Bin a -> Bool #

(<=) :: Bin a -> Bin a -> Bool #

(>) :: Bin a -> Bin a -> Bool #

(>=) :: Bin a -> Bin a -> Bool #

max :: Bin a -> Bin a -> Bin a #

min :: Bin a -> Bin a -> Bin a #

Show (Bin a) # 

Methods

showsPrec :: Int -> Bin a -> ShowS Source #

show :: Bin a -> String Source #

showList :: [Bin a] -> ShowS Source #

Binary (Bin a) # 

Methods

put_ :: BinHandle -> Bin a -> IO () Source #

put :: BinHandle -> Bin a -> IO (Bin (Bin a)) Source #

get :: BinHandle -> IO (Bin a) Source #

class Binary a where Source #

Minimal complete definition

get

Methods

put_ :: BinHandle -> a -> IO () Source #

put :: BinHandle -> a -> IO (Bin a) Source #

get :: BinHandle -> IO a Source #

Instances

Binary Bool # 
Binary Char # 
Binary Int # 

Methods

put_ :: BinHandle -> Int -> IO () Source #

put :: BinHandle -> Int -> IO (Bin Int) Source #

get :: BinHandle -> IO Int Source #

Binary Int8 # 
Binary Int16 # 
Binary Int32 # 
Binary Int64 # 
Binary Integer # 
Binary Word8 # 
Binary Word16 # 
Binary Word32 # 
Binary Word64 # 
Binary TypeRep # 
Binary () # 

Methods

put_ :: BinHandle -> () -> IO () Source #

put :: BinHandle -> () -> IO (Bin ()) Source #

get :: BinHandle -> IO () Source #

Binary TyCon # 
Binary Fingerprint # 
Binary ByteString # 
Binary Serialized # 
Binary UTCTime # 
Binary Day # 

Methods

put_ :: BinHandle -> Day -> IO () Source #

put :: BinHandle -> Day -> IO (Bin Day) Source #

get :: BinHandle -> IO Day Source #

Binary DiffTime # 
Binary OccName # 
Binary UnitId # 
Binary ModuleName # 
Binary Module # 
Binary Name # 
Binary FastString # 
Binary SrcSpan # 
Binary LeftOrRight # 
Binary InlineSpec # 
Binary InlinePragma # 
Binary RuleMatchInfo # 
Binary Activation # 
Binary TupleSort # 
Binary OverlapMode # 
Binary OverlapFlag # 
Binary RecFlag # 
Binary FixityDirection # 
Binary Fixity # 
Binary WarningTxt # 
Binary StringLiteral # 
Binary FunctionOrData # 
Binary HscSource # 
Binary NameSpace # 
Binary CType # 
Binary Header # 
Binary CCallConv # 
Binary CCallTarget # 
Binary CCallSpec # 
Binary CExportSpec # 
Binary Safety # 
Binary ForeignCall # 
Binary IsCafCC # 
Binary CostCentre # 
Binary Role # 
Binary IsPatSyn # 
Binary AvailInfo # 
Binary Injectivity # 
Binary VisibilityFlag # 
Binary Literal # 
Binary SrcUnpackedness # 
Binary SrcStrictness # 
Binary StrictSig # 
Binary DmdType # 
Binary CPRResult # 
Binary DmdResult # 
Binary Count # 
Binary UseDmd # 
Binary StrDmd # 
Binary IsOrphan # 
Binary IfaceUnivCoProv # 
Binary IfaceCoercion # 
Binary IfaceTyConInfo # 
Binary IfaceTyCon # 
Binary IfaceTcArgs # 
Binary IfaceTyConBinder # 
Binary IfaceForAllBndr # 
Binary IfaceTyLit # 
Binary IfaceType # 
Binary IfaceOneShot # 
Binary IfaceBndr # 
Binary IfaceLetBndr # 
Binary IfaceBinding # 
Binary IfaceConAlt # 
Binary IfaceTickish # 
Binary IfaceExpr # 
Binary IfaceIdDetails # 
Binary IfaceUnfolding # 
Binary IfaceInfoItem # 
Binary IfaceIdInfo # 
Binary IfaceAnnotation # 
Binary IfaceRule # 
Binary IfaceFamInst # 
Binary IfaceClsInst # 
Binary IfaceSrcBang # 
Binary IfaceBang # 
Binary IfaceConDecl # 
Binary IfaceConDecls # 
Binary IfaceAxBranch # 
Binary IfaceAT # 
Binary IfaceClassOp # 
Binary IfaceFamTyConFlav # 
Binary IfaceTyConParent # 
Binary IfaceDecl # 
Binary IfaceTrustInfo # 
Binary IfaceVectInfo # 
Binary Usage # 
Binary Dependencies # 
Binary Warnings # 
Binary ModIface # 
Binary a => Binary [a] # 

Methods

put_ :: BinHandle -> [a] -> IO () Source #

put :: BinHandle -> [a] -> IO (Bin [a]) Source #

get :: BinHandle -> IO [a] Source #

Binary a => Binary (Maybe a) # 

Methods

put_ :: BinHandle -> Maybe a -> IO () Source #

put :: BinHandle -> Maybe a -> IO (Bin (Maybe a)) Source #

get :: BinHandle -> IO (Maybe a) Source #

Binary a => Binary (Ratio a) # 

Methods

put_ :: BinHandle -> Ratio a -> IO () Source #

put :: BinHandle -> Ratio a -> IO (Bin (Ratio a)) Source #

get :: BinHandle -> IO (Ratio a) Source #

Binary (DefMethSpec IfaceType) # 
Binary (Bin a) # 

Methods

put_ :: BinHandle -> Bin a -> IO () Source #

put :: BinHandle -> Bin a -> IO (Bin (Bin a)) Source #

get :: BinHandle -> IO (Bin a) Source #

Binary a => Binary (FieldLbl a) # 
Binary name => Binary (AnnTarget name) # 

Methods

put_ :: BinHandle -> AnnTarget name -> IO () Source #

put :: BinHandle -> AnnTarget name -> IO (Bin (AnnTarget name)) Source #

get :: BinHandle -> IO (AnnTarget name) Source #

Binary a => Binary (BooleanFormula a) # 
(Binary a, Binary b) => Binary (Either a b) # 

Methods

put_ :: BinHandle -> Either a b -> IO () Source #

put :: BinHandle -> Either a b -> IO (Bin (Either a b)) Source #

get :: BinHandle -> IO (Either a b) Source #

(Binary a, Binary b) => Binary (a, b) # 

Methods

put_ :: BinHandle -> (a, b) -> IO () Source #

put :: BinHandle -> (a, b) -> IO (Bin (a, b)) Source #

get :: BinHandle -> IO (a, b) Source #

Binary a => Binary (GenLocated SrcSpan a) # 
(Binary a, Binary b, Binary c) => Binary (a, b, c) # 

Methods

put_ :: BinHandle -> (a, b, c) -> IO () Source #

put :: BinHandle -> (a, b, c) -> IO (Bin (a, b, c)) Source #

get :: BinHandle -> IO (a, b, c) Source #

(Binary a, Binary b, Binary c, Binary d) => Binary (a, b, c, d) # 

Methods

put_ :: BinHandle -> (a, b, c, d) -> IO () Source #

put :: BinHandle -> (a, b, c, d) -> IO (Bin (a, b, c, d)) Source #

get :: BinHandle -> IO (a, b, c, d) Source #

(Binary a, Binary b, Binary c, Binary d, Binary e) => Binary (a, b, c, d, e) # 

Methods

put_ :: BinHandle -> (a, b, c, d, e) -> IO () Source #

put :: BinHandle -> (a, b, c, d, e) -> IO (Bin (a, b, c, d, e)) Source #

get :: BinHandle -> IO (a, b, c, d, e) Source #

(Binary a, Binary b, Binary c, Binary d, Binary e, Binary f) => Binary (a, b, c, d, e, f) # 

Methods

put_ :: BinHandle -> (a, b, c, d, e, f) -> IO () Source #

put :: BinHandle -> (a, b, c, d, e, f) -> IO (Bin (a, b, c, d, e, f)) Source #

get :: BinHandle -> IO (a, b, c, d, e, f) Source #

seekBin :: BinHandle -> Bin a -> IO () Source #

castBin :: Bin a -> Bin b Source #

putAt :: Binary a => BinHandle -> Bin a -> a -> IO () Source #

getAt :: Binary a => BinHandle -> Bin a -> IO a Source #

lazyPut :: Binary a => BinHandle -> a -> IO () Source #