Îõ³h$µÃ      !"#$%&'()*+,-./0123456789:;<=>?@AB (C) 2015-2016 Oleg GrenrusBSD3"Oleg Grenrus None3567?ƒ aeson-extraÎCollapsed list, singleton is represented as the value itself in JSON encoding. ð» > decode "null" :: Maybe (CollapsedList [Int] Int) Just (CollapsedList []) » > decode "42" :: Maybe (CollapsedList [Int] Int) Just (CollapsedList [42]) » > decode "[1, 2, 3]" :: Maybe (CollapsedList [Int] Int) Just (CollapsedList [1,2,3]) ™» > encode (CollapsedList ([] :: [Int])) "null" » > encode (CollapsedList ([42] :: [Int])) "42" » > encode (CollapsedList ([1, 2, 3] :: [Int])) "[1,2,3]"Documentation rely on f C instance behaving like lists'. aeson-extra>Parses possibly collapsed array value from the object's field. ç» > newtype V = V [Int] deriving (Show) » > instance FromJSON V where parseJSON = withObject "V" $ \obj -> V <$> parseCollapsedList obj "value" » > decode "{}" :: Maybe V Just (V []) » > decode "{\"value\": null}" :: Maybe V Just (V []) » > decode "{\"value\": 42}" :: Maybe V Just (V [42]) » > decode "{\"value\": [1, 2, 3, 4]}" :: Maybe V Just (V [1,2,3,4])(C) 2015-2017 Oleg GrenrusBSD3"Oleg Grenrus None 3567É×Õ aeson-extraAn algebra of DSince: aeson-extra-0.3.1.0 aeson-extraA JSON "array" (sequence).Since: aeson-extra-0.3.1.0 aeson-extra A JSON "object" (key/value map).Since: aeson-extra-0.3.1.0  (C) 2015-2016 Oleg GrenrusBSD3"Oleg Grenrus NoneÔÙ©! aeson-extraGeneric merge.For example see #.Since: aeson-extra-0.3.1.0" aeson-extra$Generic merge, in arbitrary context.Since: aeson-extra-0.3.1.0# aeson-extraExample of using !. see  https://lodash.com/docs#merge:Note:Æ not tested against JavaScript lodash, so may disagree in the results. !"# !"# NoneÞ (C) 2015-2016 Oleg GrenrusBSD3"Oleg Grenrus None /3567ÉÙ S$ aeson-extraSingleton value object Ô» > decode "{\"value\": 42 }" :: Maybe (SingObject "value" Int) Just (SingObject 42) Å» > encode (SingObject 42 :: SingObject "value" Int) "{\"value\":42}"Available with: base >=4.7( aeson-extra$%&'$%&'(C) 2015-2016 Oleg GrenrusBSD3"Oleg Grenrus NoneÙ ©4 aeson-extra Lazyly parse E with top-level JSON array.Note:6 inspecting result's second field will force the list! let ~(values, err) = 4Á bs traverse_ processValue values maybe (pure ()) printError err 44(C) 2015-2018 Oleg GrenrusBSD3"Oleg Grenrus None/ÉÙ 65 aeson-extra/Singleton string encoded and decoded as ifself. 2»> encode (SymTag :: SymTag "foobar") "\"foobar\"" :decode "\"foobar\"" :: Maybe (SymTag "foobar") Just SymTag 6decode "\"foobar\"" :: Maybe (SymTag "barfoo") NothingAvailable with: base >=4.77 aeson-extra5656(C) 2015-2016 Oleg GrenrusBSD3"Oleg Grenrus NoneË@ aeson-extra Create a D from string representation.This is useful in tests.Since: aeson-extra-0.3.1.0A aeson-extraLike @6, but replace single quotes with double quotes before. >> $(mkValue' "{'a': 2 }") Object (fromList [("a",Number 2.0)])Since: aeson-extra-0.3.1.0@A@A(C) 2015-2016 Oleg GrenrusBSD3"Oleg Grenrus NoneB aeson-extraLike F, but produces strict G.Since: 0.2.3.0!#$%&'456@ABB56$%&'!#4@AÈ      !"#$%&'()*++,-./0123456789:;;<=>?@ABCDEFGHIJKLMNOPKQRNSPÔ&aeson-extra-0.5-JmzKgbDiJFx5Ct3PlcF0PvData.Aeson.Extra.CollapsedListData.Aeson.Extra.RecursiveData.Aeson.Extra.MergeData.Aeson.Extra.SingObjectData.Aeson.Extra.StreamData.Aeson.Extra.SymTagData.Aeson.Extra.THData.Aeson.ExtraData.Aeson.Extra.Foldable CollapsedListgetCollapsedListparseCollapsedList$fFromJSONCollapsedList$fToJSONCollapsedList$fToJSON1CollapsedList$fFromJSON1CollapsedList$fEqCollapsedList$fOrdCollapsedList$fShowCollapsedList$fReadCollapsedList$fFunctorCollapsedList$fFoldableCollapsedList$fTraversableCollapsedListValueFObjectFArrayFStringFNumberFBoolFNullF$fCorecursiveValue$fRecursiveValue $fEqValueF $fReadValueF $fShowValueF $fDataValueF$fFunctorValueF$fFoldableValueF$fTraversableValueFmergemergeA lodashMerge SingObject mkSingObject getSingObject$fNFDataSingObject$fToJSONSingObject$fFromJSONSingObject$fToJSON1SingObject$fFromJSON1SingObject$fEqSingObject$fOrdSingObject$fShowSingObject$fReadSingObject$fFunctorSingObject$fFoldableSingObject$fTraversableSingObject streamDecodeSymTag$fNFDataSymTag$fToJSONSymTag$fFromJSONSymTag $fEqSymTag $fOrdSymTag $fShowSymTag $fReadSymTag $fEnumSymTag$fBoundedSymTagmkValuemkValue' encodeStrictbaseGHC.Base Alternative$aeson-1.5.6.0-870135Zj7ONHLS6Ov5aIRaData.Aeson.Types.InternalValuebytestring-0.10.10.0Data.ByteString.Lazy.Internal ByteString Data.AesonencodeData.ByteString.Internal