ptr-0.16.8.3: Experimental abstractions for operations on pointers
Safe HaskellNone
LanguageHaskell2010

Ptr.Read

Synopsis

Documentation

data Read a Source #

Deserializer highly optimized for reading from pointers.

Parsing ByteString is just a special case.

Instances

Instances details
Monad Read Source # 
Instance details

Defined in Ptr.Read

Methods

(>>=) :: Read a -> (a -> Read b) -> Read b #

(>>) :: Read a -> Read b -> Read b #

return :: a -> Read a #

Functor Read Source # 
Instance details

Defined in Ptr.Read

Methods

fmap :: (a -> b) -> Read a -> Read b #

(<$) :: a -> Read b -> Read a #

Applicative Read Source # 
Instance details

Defined in Ptr.Read

Methods

pure :: a -> Read a #

(<*>) :: Read (a -> b) -> Read a -> Read b #

liftA2 :: (a -> b -> c) -> Read a -> Read b -> Read c #

(*>) :: Read a -> Read b -> Read b #

(<*) :: Read a -> Read b -> Read a #

data Status a Source #

Result of a single iteration.

Errors can be achieved by using Either for output.

Constructors

FinishedStatus !(Ptr Word8) a 
UnfinishedStatus (Read a) 

Instances

Instances details
Functor Status Source # 
Instance details

Defined in Ptr.Read

Methods

fmap :: (a -> b) -> Status a -> Status b #

(<$) :: a -> Status b -> Status a #

skip Source #

Arguments

:: Int

Amount of bytes to skip.

Warning: It is your responsibility to ensure that it is not negative.

-> Read () 

byteString Source #

Arguments

:: Int

Size of the bytestring.

Warning: It is your responsibility to ensure that it is not negative.

-> Read ByteString 

foldlWhile' :: (Word8 -> Bool) -> (acc -> Word8 -> acc) -> acc -> Read acc Source #

asciiIntegral :: Integral a => Read a Source #

Integral number encoded in ASCII.