{-# LANGUAGE NoImplicitPrelude #-}
module Data.Aeson.Types
(
Value(..)
, Key
, Encoding
, unsafeToEncoding
, fromEncoding
, Series
, Array
, emptyArray
, Pair
, Object
, emptyObject
, DotNetTime(..)
, typeMismatch
, unexpected
, Parser
, Result(..)
, FromJSON(..)
, fromJSON
, parse
, parseEither
, parseMaybe
, parseFail
, modifyFailure
, prependFailure
, parserThrowError
, parserCatchError
, IResult (..)
, ifromJSON
, iparse
, iparseEither
, ToJSON(..)
, KeyValue(..)
, ToJSONKey(..)
, ToJSONKeyFunction(..)
, toJSONKeyText
, toJSONKeyKey
, contramapToJSONKeyFunction
, FromJSONKey(..)
, FromJSONKeyFunction(..)
, fromJSONKeyCoerce
, coerceFromJSONKeyFunction
, mapFromJSONKeyFunction
, GToJSONKey()
, genericToJSONKey
, GFromJSONKey()
, genericFromJSONKey
, FromJSON1(..)
, parseJSON1
, FromJSON2(..)
, parseJSON2
, ToJSON1(..)
, toJSON1
, toEncoding1
, ToJSON2(..)
, toJSON2
, toEncoding2
, GFromJSON
, FromArgs
, GToJSON
, GToEncoding
, GToJSON'
, ToArgs
, Zero
, One
, genericToJSON
, genericLiftToJSON
, genericToEncoding
, genericLiftToEncoding
, genericParseJSON
, genericLiftParseJSON
, withObject
, withText
, withArray
, withScientific
, withBool
, withEmbeddedJSON
, pairs
, foldable
, (.:)
, (.:?)
, (.:!)
, (.!=)
, object
, parseField
, parseFieldMaybe
, parseFieldMaybe'
, explicitParseField
, explicitParseFieldMaybe
, explicitParseFieldMaybe'
, listEncoding
, listValue
, listParser
, Options
, fieldLabelModifier
, constructorTagModifier
, allNullaryToStringTag
, omitNothingFields
, sumEncoding
, unwrapUnaryRecords
, tagSingleConstructors
, rejectUnknownFields
, SumEncoding(..)
, camelTo
, camelTo2
, defaultOptions
, defaultTaggedObject
, JSONKeyOptions
, keyModifier
, defaultJSONKeyOptions
, (<?>)
, JSONPath
, JSONPathElement(..)
, formatPath
, formatRelativePath
, formatError
) where
import Prelude.Compat
import Data.Aeson.Encoding (Encoding, unsafeToEncoding, fromEncoding, Series, pairs)
import Data.Aeson.Types.Class
import Data.Aeson.Types.Internal
import Data.Foldable (toList)
foldable :: (Foldable t, ToJSON a) => t a -> Encoding
foldable :: forall (t :: * -> *) a. (Foldable t, ToJSON a) => t a -> Encoding
foldable = forall a. ToJSON a => a -> Encoding
toEncoding forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall (t :: * -> *) a. Foldable t => t a -> [a]
toList
{-# INLINE foldable #-}