servant-serialization-0.3
Safe HaskellSafe-Inferred
LanguageHaskell2010

Servant.API.ContentTypes.Persist

Synopsis

Documentation

data PersistFmt Source #

Content-type for instances of the Persist class in the package "persist". Trailing garbage is ignored.

Instances

Instances details
Accept PersistFmt Source #

Mime-type using the word "hackage" and the name of the package "persist".

Instance details

Defined in Servant.API.ContentTypes.Persist

Persist a => MimeRender PersistFmt a Source #
>>> mimeRender (Proxy :: Proxy PersistFmt) (3.14 :: Float)
"\195\245H@"
Instance details

Defined in Servant.API.ContentTypes.Persist

Persist a => MimeUnrender PersistFmt a Source #
>>> let bsl = mimeRender (Proxy :: Proxy PersistFmt) (3.14 :: Float)
>>> mimeUnrender (Proxy :: Proxy PersistFmt) bsl :: Either String Float
Right 3.14
>>> mimeUnrender (Proxy :: Proxy PersistFmt) (bsl <> "trailing garbage") :: Either String Float
Right 3.14

Persist doesn't detect this preceding garbage.

>>> mimeUnrender (Proxy :: Proxy PersistFmt) ("preceding garbage" <> bsl) :: Either String Float
Right ...
>>> mimeUnrender (Proxy :: Proxy PersistFmt) "garbage" :: Either String (Float, Float)
Left "Data.Persist.decode: LengthException 4 \"Not enough bytes available\""
Instance details

Defined in Servant.API.ContentTypes.Persist