network-house-0.1.0.2: data and parsers for Ethernet, TCP, UDP, IPv4, IPv6, ICMP, DHCP, TFTP

Safe HaskellSafe
LanguageHaskell98

Net.Utils

Description

Various utilities used in the network protocol stack modules

Synopsis

Documentation

class Functor f => Container f where #

Minimal complete definition

contents

Methods

contents :: f a -> a #

Instances

Container Packet # 

Methods

contents :: Packet a -> a #

Container Packet # 

Methods

contents :: Packet a -> a #

Container Packet # 

Methods

contents :: Packet a -> a #

Container Packet # 

Methods

contents :: Packet a -> a #

replace :: Functor f => f b1 -> b2 -> f b2 #

emap :: (Container f2, Functor f1) => (t -> f1 b) -> f2 t -> f1 (f2 b) #

emap2 :: (Functor f3, Container f2, Container f1) => (t -> f3 b) -> f1 (f2 t) -> f3 (f1 (f2 b)) #

lift :: (Container f2, Functor f1) => f2 (f1 b) -> f1 (f2 b) #

lift2 :: (Functor f3, Container f2, Container f1) => f1 (f2 (f3 b)) -> f3 (f1 (f2 b)) #

doReq :: (MVarIO v io, MVarIO v m, ChannelIO c m) => c a -> ((b -> io ()) -> a) -> m b #

foldlArray :: (IArray arr elem, Ix ix, Enum ix) => arr ix elem -> (elem -> a -> a) -> a -> a #

arraySize :: (Ix a1, IArray a2 e, Num a1) => a2 a1 e -> a1 #

The number of elements in an array

checksum :: [Word16] -> Word16 #

TCP/IP 16-bit checksums

pairs :: a -> [a] -> [[a]] #

Split a list into subcomponents of length 2. The first argument is what to append in case the list is of odd length.