packages feed

snack-0.4.0.0: lib/Data/ByteString/Parser.hs-boot

module Data.ByteString.Parser
where
  import Control.Applicative
  import Control.Monad
  import Data.ByteString (ByteString)

  data Result a
    = Success a {-# UNPACK #-} !ByteString
    | Failure [String] {-# UNPACK #-} !ByteString
    | Error String {-# UNPACK #-} !ByteString {-# UNPACK #-} !Int

  instance Functor Result where

  newtype Parser a =
    Parser
      { runParser :: ByteString -> Result a
      }

  instance Functor Parser
  instance Applicative Parser
  instance Alternative Parser
  instance Monad Parser
  instance MonadPlus Parser