Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Data.StaticBytes
Synopsis
- data Bytes8
- data Bytes16
- data Bytes32
- data Bytes64
- data Bytes128
- class DynamicBytes dbytes
- class StaticBytes sbytes
- data StaticBytesException
- toStaticExact :: forall dbytes sbytes. (DynamicBytes dbytes, StaticBytes sbytes) => dbytes -> Either StaticBytesException sbytes
- toStaticPad :: forall dbytes sbytes. (DynamicBytes dbytes, StaticBytes sbytes) => dbytes -> Either StaticBytesException sbytes
- toStaticTruncate :: forall dbytes sbytes. (DynamicBytes dbytes, StaticBytes sbytes) => dbytes -> Either StaticBytesException sbytes
- toStaticPadTruncate :: (DynamicBytes dbytes, StaticBytes sbytes) => dbytes -> sbytes
- fromStatic :: forall dbytes sbytes. (DynamicBytes dbytes, StaticBytes sbytes) => sbytes -> dbytes
Documentation
A type representing 8 bytes of data.
Instances
Data Bytes8 Source # | |
Defined in Data.StaticBytes Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Bytes8 -> c Bytes8 gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Bytes8 dataTypeOf :: Bytes8 -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Bytes8) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Bytes8) gmapT :: (forall b. Data b => b -> b) -> Bytes8 -> Bytes8 gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Bytes8 -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Bytes8 -> r gmapQ :: (forall d. Data d => d -> u) -> Bytes8 -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Bytes8 -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Bytes8 -> m Bytes8 gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Bytes8 -> m Bytes8 gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Bytes8 -> m Bytes8 | |
Generic Bytes8 Source # | |
Show Bytes8 Source # | |
NFData Bytes8 Source # | |
Defined in Data.StaticBytes | |
Eq Bytes8 Source # | |
Ord Bytes8 Source # | |
Hashable Bytes8 Source # | |
Defined in Data.StaticBytes | |
ByteArrayAccess Bytes8 Source # | |
Defined in Data.StaticBytes Methods withByteArray :: Bytes8 -> (Ptr p -> IO a) -> IO a copyByteArrayToPtr :: Bytes8 -> Ptr p -> IO () | |
StaticBytes Bytes8 Source # | |
type Rep Bytes8 Source # | |
Defined in Data.StaticBytes type Rep Bytes8 = D1 ('MetaData "Bytes8" "Data.StaticBytes" "static-bytes-0.1.0-KXOgSO29jxEA4AjvxSHRse" 'True) (C1 ('MetaCons "Bytes8" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) |
A type representing 16 bytes of data.
Instances
Data Bytes16 Source # | |
Defined in Data.StaticBytes Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Bytes16 -> c Bytes16 gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Bytes16 dataTypeOf :: Bytes16 -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Bytes16) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Bytes16) gmapT :: (forall b. Data b => b -> b) -> Bytes16 -> Bytes16 gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Bytes16 -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Bytes16 -> r gmapQ :: (forall d. Data d => d -> u) -> Bytes16 -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Bytes16 -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Bytes16 -> m Bytes16 gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Bytes16 -> m Bytes16 gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Bytes16 -> m Bytes16 | |
Generic Bytes16 Source # | |
Show Bytes16 Source # | |
NFData Bytes16 Source # | |
Defined in Data.StaticBytes | |
Eq Bytes16 Source # | |
Ord Bytes16 Source # | |
Hashable Bytes16 Source # | |
Defined in Data.StaticBytes | |
ByteArrayAccess Bytes16 Source # | |
Defined in Data.StaticBytes Methods withByteArray :: Bytes16 -> (Ptr p -> IO a) -> IO a copyByteArrayToPtr :: Bytes16 -> Ptr p -> IO () | |
StaticBytes Bytes16 Source # | |
type Rep Bytes16 Source # | |
Defined in Data.StaticBytes type Rep Bytes16 = D1 ('MetaData "Bytes16" "Data.StaticBytes" "static-bytes-0.1.0-KXOgSO29jxEA4AjvxSHRse" 'False) (C1 ('MetaCons "Bytes16" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bytes8) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bytes8))) |
A type representing 32 bytes of data.
Instances
Data Bytes32 Source # | |
Defined in Data.StaticBytes Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Bytes32 -> c Bytes32 gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Bytes32 dataTypeOf :: Bytes32 -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Bytes32) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Bytes32) gmapT :: (forall b. Data b => b -> b) -> Bytes32 -> Bytes32 gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Bytes32 -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Bytes32 -> r gmapQ :: (forall d. Data d => d -> u) -> Bytes32 -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Bytes32 -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Bytes32 -> m Bytes32 gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Bytes32 -> m Bytes32 gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Bytes32 -> m Bytes32 | |
Generic Bytes32 Source # | |
Show Bytes32 Source # | |
NFData Bytes32 Source # | |
Defined in Data.StaticBytes | |
Eq Bytes32 Source # | |
Ord Bytes32 Source # | |
Hashable Bytes32 Source # | |
Defined in Data.StaticBytes | |
ByteArrayAccess Bytes32 Source # | |
Defined in Data.StaticBytes Methods withByteArray :: Bytes32 -> (Ptr p -> IO a) -> IO a copyByteArrayToPtr :: Bytes32 -> Ptr p -> IO () | |
StaticBytes Bytes32 Source # | |
type Rep Bytes32 Source # | |
Defined in Data.StaticBytes type Rep Bytes32 = D1 ('MetaData "Bytes32" "Data.StaticBytes" "static-bytes-0.1.0-KXOgSO29jxEA4AjvxSHRse" 'False) (C1 ('MetaCons "Bytes32" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bytes16) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bytes16))) |
A type representing 64 bytes of data.
Instances
Data Bytes64 Source # | |
Defined in Data.StaticBytes Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Bytes64 -> c Bytes64 gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Bytes64 dataTypeOf :: Bytes64 -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Bytes64) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Bytes64) gmapT :: (forall b. Data b => b -> b) -> Bytes64 -> Bytes64 gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Bytes64 -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Bytes64 -> r gmapQ :: (forall d. Data d => d -> u) -> Bytes64 -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Bytes64 -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Bytes64 -> m Bytes64 gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Bytes64 -> m Bytes64 gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Bytes64 -> m Bytes64 | |
Generic Bytes64 Source # | |
Show Bytes64 Source # | |
NFData Bytes64 Source # | |
Defined in Data.StaticBytes | |
Eq Bytes64 Source # | |
Ord Bytes64 Source # | |
Hashable Bytes64 Source # | |
Defined in Data.StaticBytes | |
ByteArrayAccess Bytes64 Source # | |
Defined in Data.StaticBytes Methods withByteArray :: Bytes64 -> (Ptr p -> IO a) -> IO a copyByteArrayToPtr :: Bytes64 -> Ptr p -> IO () | |
StaticBytes Bytes64 Source # | |
type Rep Bytes64 Source # | |
Defined in Data.StaticBytes type Rep Bytes64 = D1 ('MetaData "Bytes64" "Data.StaticBytes" "static-bytes-0.1.0-KXOgSO29jxEA4AjvxSHRse" 'False) (C1 ('MetaCons "Bytes64" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bytes32) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bytes32))) |
A type representing 128 bytes of data.
Instances
Data Bytes128 Source # | |
Defined in Data.StaticBytes Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Bytes128 -> c Bytes128 gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Bytes128 toConstr :: Bytes128 -> Constr dataTypeOf :: Bytes128 -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Bytes128) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Bytes128) gmapT :: (forall b. Data b => b -> b) -> Bytes128 -> Bytes128 gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Bytes128 -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Bytes128 -> r gmapQ :: (forall d. Data d => d -> u) -> Bytes128 -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Bytes128 -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Bytes128 -> m Bytes128 gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Bytes128 -> m Bytes128 gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Bytes128 -> m Bytes128 | |
Generic Bytes128 Source # | |
Show Bytes128 Source # | |
NFData Bytes128 Source # | |
Defined in Data.StaticBytes | |
Eq Bytes128 Source # | |
Ord Bytes128 Source # | |
Hashable Bytes128 Source # | |
Defined in Data.StaticBytes | |
ByteArrayAccess Bytes128 Source # | |
Defined in Data.StaticBytes Methods withByteArray :: Bytes128 -> (Ptr p -> IO a) -> IO a copyByteArrayToPtr :: Bytes128 -> Ptr p -> IO () | |
StaticBytes Bytes128 Source # | |
type Rep Bytes128 Source # | |
Defined in Data.StaticBytes type Rep Bytes128 = D1 ('MetaData "Bytes128" "Data.StaticBytes" "static-bytes-0.1.0-KXOgSO29jxEA4AjvxSHRse" 'False) (C1 ('MetaCons "Bytes128" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bytes64) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bytes64))) |
class DynamicBytes dbytes Source #
Minimal complete definition
lengthD, withPeekD, fromWordsD
Instances
DynamicBytes ByteString Source # | |
Defined in Data.StaticBytes Methods lengthD :: ByteString -> Int withPeekD :: ByteString -> ((Int -> IO Word64) -> IO a) -> IO a fromWordsD :: Int -> [Word64] -> ByteString | |
word8 ~ Word8 => DynamicBytes (Vector word8) Source # | |
Defined in Data.StaticBytes Methods lengthD :: Vector word8 -> Int withPeekD :: Vector word8 -> ((Int -> IO Word64) -> IO a) -> IO a fromWordsD :: Int -> [Word64] -> Vector word8 | |
word8 ~ Word8 => DynamicBytes (Vector word8) Source # | |
Defined in Data.StaticBytes Methods lengthD :: Vector word8 -> Int withPeekD :: Vector word8 -> ((Int -> IO Word64) -> IO a) -> IO a fromWordsD :: Int -> [Word64] -> Vector word8 | |
word8 ~ Word8 => DynamicBytes (Vector word8) Source # | |
Defined in Data.StaticBytes Methods lengthD :: Vector word8 -> Int withPeekD :: Vector word8 -> ((Int -> IO Word64) -> IO a) -> IO a fromWordsD :: Int -> [Word64] -> Vector word8 |
class StaticBytes sbytes Source #
Minimal complete definition
lengthS, toWordsS, usePeekS
data StaticBytesException Source #
A type representing exceptions thrown by functions expecting data of a fixed number of bytes.
Constructors
NotEnoughBytes | |
TooManyBytes |
Instances
Exception StaticBytesException Source # | |
Defined in Data.StaticBytes Methods toException :: StaticBytesException -> SomeException fromException :: SomeException -> Maybe StaticBytesException displayException :: StaticBytesException -> String | |
Show StaticBytesException Source # | |
Defined in Data.StaticBytes Methods showsPrec :: Int -> StaticBytesException -> ShowS show :: StaticBytesException -> String showList :: [StaticBytesException] -> ShowS | |
Eq StaticBytesException Source # | |
Defined in Data.StaticBytes Methods (==) :: StaticBytesException -> StaticBytesException -> Bool (/=) :: StaticBytesException -> StaticBytesException -> Bool |
toStaticExact :: forall dbytes sbytes. (DynamicBytes dbytes, StaticBytes sbytes) => dbytes -> Either StaticBytesException sbytes Source #
toStaticPad :: forall dbytes sbytes. (DynamicBytes dbytes, StaticBytes sbytes) => dbytes -> Either StaticBytesException sbytes Source #
toStaticTruncate :: forall dbytes sbytes. (DynamicBytes dbytes, StaticBytes sbytes) => dbytes -> Either StaticBytesException sbytes Source #
toStaticPadTruncate :: (DynamicBytes dbytes, StaticBytes sbytes) => dbytes -> sbytes Source #
fromStatic :: forall dbytes sbytes. (DynamicBytes dbytes, StaticBytes sbytes) => sbytes -> dbytes Source #