Copyright | (C) 2015 Oleg Grenrus |
---|---|
License | BSD3 |
Maintainer | Oleg Grenrus <oleg.grenrus@iki.fi> |
Safe Haskell | None |
Language | Haskell2010 |
- decode :: (FromJSON a, MonadThrow m) => ByteString -> m a
- decode' :: (FromJSON a, MonadThrow m) => ByteString -> m a
- decodeStrict :: (FromJSON a, MonadThrow m) => ByteString -> m a
- decodeStrict' :: (FromJSON a, MonadThrow m) => ByteString -> m a
- newtype AesonException = AesonException String
- eitherDecode :: FromJSON a => ByteString -> Either String a
- eitherDecode' :: FromJSON a => ByteString -> Either String a
- eitherDecodeStrict :: FromJSON a => ByteString -> Either String a
- eitherDecodeStrict' :: FromJSON a => ByteString -> Either String a
- (.:?) :: FromJSON a => Object -> Text -> Parser (Maybe a)
- (.:!) :: FromJSON a => Object -> Text -> Parser (Maybe a)
- module Data.Aeson
Generic decoding functions
decode :: (FromJSON a, MonadThrow m) => ByteString -> m a Source
Like original decode
but in arbitrary MonadThrow
.
Parse a top-level JSON value, i.e. also strings, numbers etc.
decode' :: (FromJSON a, MonadThrow m) => ByteString -> m a Source
Like original decode'
but in arbitrary MonadThrow
.
decodeStrict :: (FromJSON a, MonadThrow m) => ByteString -> m a Source
Like original decodeStrict
but in arbitrary MonadThrow
.
decodeStrict' :: (FromJSON a, MonadThrow m) => ByteString -> m a Source
Like original decodeStrict'
but in arbitrary MonadThrow
.
newtype AesonException Source
Exception thrown by decode
- family of functions in this module.
Either decoding functions
eitherDecode :: FromJSON a => ByteString -> Either String a
Like decode
but returns an error message when decoding fails.
eitherDecode' :: FromJSON a => ByteString -> Either String a
Like decode'
but returns an error message when decoding fails.
eitherDecodeStrict :: FromJSON a => ByteString -> Either String a
Like decodeStrict
but returns an error message when decoding fails.
eitherDecodeStrict' :: FromJSON a => ByteString -> Either String a
Like decodeStrict'
but returns an error message when decoding fails.
Operators
(.:?) :: FromJSON a => Object -> Text -> Parser (Maybe a) Source
Retrieve the value associated with the given key of an Object
.
The result is Nothing
if the key is not present, or empty
if
the value cannot be converted to the desired type.
This accessor is most useful if the key and value can be absent
from an object without affecting its validity. If the key and
value are mandatory, use .:
instead.
This operator is consistent in aeson >=0.7 && <0.11
Re-exports
Original .:?
operator is not re-exported
module Data.Aeson