RefSerialize-0.4.0: Write to and read from ByteStrings maintaining internal memory references

Safe HaskellNone
LanguageHaskell98

Data.RefSerialize.Parser

Description

A Parsec parser for the refSerialize monad. See package Parsec. all the functions have the same meaning

Documentation

data STR a Source #

Constructors

STR (StatR -> Either Error (StatR, a)) 

Instances

Monad STR Source #

monadic serialization & deserialization

Methods

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

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

return :: a -> STR a #

fail :: String -> STR a #

Functor STR Source # 

Methods

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

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

Applicative STR Source # 

Methods

pure :: a -> STR a #

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

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

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

Alternative STR Source # 

Methods

empty :: STR a #

(<|>) :: STR a -> STR a -> STR a #

some :: STR a -> STR [a] #

many :: STR a -> STR [a] #

MonadPlus STR Source # 

Methods

mzero :: STR a #

mplus :: STR a -> STR a -> STR a #

(<?>) :: STR a -> String -> STR a infix 0 Source #

(<|>) :: STR a -> STR a -> STR a infixr 1 Source #

sepBy :: STR a -> STR sep -> STR [a] Source #

between :: Monad m => m a1 -> m a -> m b -> m b Source #

choice :: Foldable t => t (STR a) -> STR a Source #

option :: a -> STR a -> STR a Source #

notFollowedBy :: Show t => STR t -> STR () Source #

many :: STR a -> STR [a] Source #

manyTill :: STR t -> STR a -> STR [t] Source #

try :: STR b -> STR b Source #

lexeme :: STR b -> STR b Source #

parens :: STR a -> STR a Source #

braces :: STR a -> STR a Source #

angles :: STR a -> STR a Source #

brackets :: STR a -> STR a Source #

semiSep :: STR a -> STR [a] Source #

semiSep1 :: STR a -> STR [a] Source #

commaSep :: STR a -> STR [a] Source #

commaSep1 :: STR a -> STR [a] Source #