Safe Haskell | None |
---|---|
Language | Haskell2010 |
Data.Serialize
- module Language.Parser
- class Serializable t where
- encode :: t -> Builder
- serializable :: Parser Bytes t
- data Builder :: *
- bytesBuilder :: Bytes :<->: Builder
- chunkBuilder :: Chunk :<->: Builder
- serialize :: Serializable t => t -> Bytes
- serial :: (Serializable t, Serializable t') => Traversal t t' Bytes Bytes
- word8 :: Word8 -> Builder
- data Word8 :: *
- data Word32 :: *
- data Word64 :: *
- data Either3 a b c
- coerceEncode :: forall t t'. Serializable t => (t -> t') -> t' -> Builder
- coerceSerializable :: forall t t'. Serializable t => (t -> t') -> Parser Bytes t'
You'll need this
module Language.Parser
Serialization
class Serializable t where Source
Instances
Serializable Char | |
Serializable Int | |
Serializable Integer | |
Serializable Word8 | |
Serializable Word32 | |
Serializable Word64 | |
Serializable a => Serializable [a] | |
Serializable a => Serializable (Maybe a) | |
(Ord a, Serializable a) => Serializable (Set a) | |
Serializable a => Serializable (Range a) | |
(Ord k, Serializable k, Serializable a) => Serializable (Map k a) | |
(Ord k, Ord a, Serializable k, Serializable a) => Serializable (Bimap k a) | |
(Serializable a, Serializable b) => Serializable ((:*:) a b) | |
(Serializable a, Serializable b) => Serializable ((:+:) a b) | |
(Serializable a, Serializable b, Serializable c) => Serializable (a, b, c) | |
(Serializable a, Serializable b, Serializable c) => Serializable (Either3 a b c) | |
(Serializable a, Serializable b, Serializable c, Serializable d) => Serializable (a, b, c, d) | |
(Serializable a, Serializable b, Serializable c, Serializable d, Serializable e) => Serializable (a, b, c, d, e) |
data Builder :: *
serialize :: Serializable t => t -> Bytes Source
serial :: (Serializable t, Serializable t') => Traversal t t' Bytes Bytes Source
Convenience functions
data Word8 :: *
8-bit unsigned integer type
data Word32 :: *
32-bit unsigned integer type
data Word64 :: *
64-bit unsigned integer type
Instances
(Serializable a, Serializable b, Serializable c) => Serializable (Either3 a b c) |
GND replacement for GHC 7.8
coerceEncode :: forall t t'. Serializable t => (t -> t') -> t' -> Builder Source
coerceSerializable :: forall t t'. Serializable t => (t -> t') -> Parser Bytes t' Source