packages feed

msgpack-types 0.2.0 → 0.2.1

raw patch · 2 files changed

+32/−1 lines, 2 files

Files

msgpack-types.cabal view
@@ -1,5 +1,5 @@ name:                 msgpack-types-version:              0.2.0+version:              0.2.1 synopsis:             A Haskell implementation of MessagePack. homepage:             http://msgpack.org/ license:              BSD3@@ -34,6 +34,7 @@   other-modules:       Data.MessagePack.Types.Assoc       Data.MessagePack.Types.Class+      Data.MessagePack.Types.DecodeError       Data.MessagePack.Types.Generic       Data.MessagePack.Types.Object   build-depends:
+ src/Data/MessagePack/Types/DecodeError.hs view
@@ -0,0 +1,30 @@+{-# OPTIONS_GHC -Wno-orphans #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Trustworthy           #-}+module Data.MessagePack.Types.DecodeError+    ( DecodeError+    , decodeError+    , errorMessages+    ) where++import           Control.Monad.Validate          (MonadValidate (..))+import           Data.String                     (IsString (..))+import           Text.ParserCombinators.ReadPrec (ReadPrec)++data DecodeError = DecodeError+    { errorMessages :: [String]+    }+    deriving (Show)++decodeError :: String -> DecodeError+decodeError = DecodeError . (:[])++instance IsString DecodeError where+    fromString str = DecodeError [str]++instance Semigroup DecodeError where+    DecodeError a <> DecodeError b = DecodeError (a <> b)++instance MonadValidate DecodeError ReadPrec where+    refute = fail . show+    tolerate m = m >> return Nothing