| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Network.ONCRPC.XDR.Serial
Description
XDR Serialization
- class XDR a where
- class (XDR a, Enum a) => XDREnum a where
- xdrToEnum' :: XDREnum a => Int -> a
- xdrPutEnum :: XDREnum a => a -> Put
- xdrGetEnum :: XDREnum a => Get a
- class (XDR a, XDREnum (XDRDiscriminant a)) => XDRUnion a where
- type XDRDiscriminant a :: *
- xdrDiscriminant :: XDRUnion a => a -> XDRDiscriminant a
- xdrPutUnion :: XDRUnion a => a -> Put
- xdrGetUnion :: XDRUnion a => Get a
- xdrSerialize :: XDR a => a -> ByteString
- xdrSerializeLazy :: XDR a => a -> ByteString
- xdrDeserialize :: XDR a => ByteString -> Either String a
- xdrDeserializeLazy :: XDR a => ByteString -> Either String a
Documentation
An XDR type that can be (de)serialized.
Instances
class (XDR a, Enum a) => XDREnum a where Source #
An XDR type defined with "enum".
Note that the XDREnum Int value is not (necessarily) the same as the Enum Int value.
The Enum instance is derived automatically to allow succ, etc. to work usefully in Haskell, whereas the XDREnum reflects the XDR-defined values.
Minimal complete definition
xdrToEnum' :: XDREnum a => Int -> a Source #
class (XDR a, XDREnum (XDRDiscriminant a)) => XDRUnion a where Source #
An XDR type defined with "union"
Minimal complete definition
Associated Types
type XDRDiscriminant a :: * Source #
Methods
xdrSplitUnion :: a -> (Int, Put) Source #
Split a union into its discriminant and body generator.
xdrGetUnionArm :: Int -> Get a Source #
Get the body of a union based on its discriminant.
xdrDiscriminant :: XDRUnion a => a -> XDRDiscriminant a Source #
xdrSerialize :: XDR a => a -> ByteString Source #
xdrSerializeLazy :: XDR a => a -> ByteString Source #
xdrDeserialize :: XDR a => ByteString -> Either String a Source #
"S.runGet' xdrGetxdrDeserializeLazy :: XDR a => ByteString -> Either String a Source #
"S.runGetLazy' xdrGet