LGG      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFNoneGA version of catchJust from Control.Exception.Base, except for any instance of H. IGPredicate to select exceptionsComputation to runHandlerJKLMNOP IGJKLMNOP IGJKLMNOPNoneBE$@An enumeration of the different types that JSON values may take.Detailed information in the case where a value could be parsed as JSON, but a value of the required type could not be constructed from it, for some reason. Expected type, actual value CA value indicating that the JSON could not be decoded successfully.A piece of a path leading to a specific part of the JSON data. Internally, a list of these is maintained as the parser traverses the JSON data. This list is included in the error if one occurs.Data used internally by the  type.The type of parsers: things which consume JSON values and produce either detailed errors or successfully parsed values (of other types).The errk type parameter is for your own errors; if you don't need to use any errors of your own, simply set it to ().Run a parser with a lazy Q containing JSON data. Note that the normal caveat applies: the JSON supplied must contain either an object or an array for this to work.Run a parser with a strict R containing JSON data. Note that the normal caveat applies: the JSON supplied must contain either an object or an array for this to work.$Run a parser with a pre-parsed JSON S.(This function is useful when you have a  err a) and you want to obtain an instance for T a. Simply define: 8 parseJSON = toAesonParser showMyCustomError myParser !Turn a   into a human-readable list of UU values. They will be in a sensible order. For example, you can feed the result to  mapM putStrLn, or unlines.$Get the type of a JSON value.%#Lift any parsing function into the  type.&Aborts parsing, due to an error in the structure of the JSON - that is, any error other than the JSON not actually being parseable into a S.(Parse a single JSON string as U.) Parse a single JSON string as a V.* Parse a single JSON number as a W.+"Parse a single JSON number as any X type.,"Parse a single JSON number as any Y type.-!Parse a single JSON boolean as a Z..Parse a JSON object, as an [$. You should prefer functions like :I where possible, since they will usually generate better error messages./Parse a JSON array, as an \$. You should prefer functions like 9I where possible, since they will usually generate better error messages.0nParse a single JSON null value. Useful if you want to throw an error in the case where something is not null.1BTake the value corresponding to a given key in the current object.2Take the value corresponding to a given key in the current object, or if no property exists with that key, use the supplied default.3|Take the value corresponding to a given key in the current object, or if no property exists with that key, return Nothing .5(Take the nth value of the current array.6jTake the nth value of the current array, or if no value exists with that index, use the supplied default.7`Take the nth value of the current array, or if no value exists with that index, return Nothing.9YAttempt to parse each value in the array with the given parser, and collect the results.:cAttempt to parse each property value in the object with the given parser, and collect the results.;Attempt to parse each property in the object: parse the key with the given validation function, parse the value with the given parser, and collect the results.<Lifts a function attempting to validate an arbitrary JSON value into a parser. You should only use this if absolutely necessary; the other functions in this module will generally give better error reporting.E%Prefer to use functions like 'key or :J to this one where possible, as they will generate better error messages.FPrefer to use functions like 5 or 9J to this one where possible, as they will generate better error messages.G  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEF4   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFNone6 !"#$()*+,-./01235679:;?@ABCDEF6()*+,-0./1235679:;?@ABCDEF  !"#$]      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWUXWYZ[Y\]^_`abcdefaghaijklmYZnYZopaeson-better-errors-0.3.0.0 Data.Aeson.BetterErrors.InternalData.Aeson.BetterErrors.UtilsData.Aeson.BetterErrorsJSONTypeTyNullTyBoolTyNumberTyStringTyArrayTyObjectErrorSpecifics CustomErrorExpectedIntegral WrongType OutOfBounds KeyMissing ParseError BadSchema InvalidJSON PathPiece ArrayIndex ObjectKey ParseReaderrdrPathrdrValueParse runParserparse parseStrict parseValue toAesonParser appendPathsetValuedisplayJSONType displayError displayPathdisplaySpecifics jsonTypeOf liftParse badSchemaasasTextasString asScientific asIntegral asRealFloatasBoolasObjectasArrayasNullkey keyOrDefaultkeyMaykey'nth nthOrDefaultnthMaynth' eachInArray eachInObjecteachInObjectWithKey withValue liftEitherwithwithText withStringwithScientific withIntegral withRealFloatwithBool withObject withArray catchJust mtl-2.2.1Control.Monad.Error.Class MonadErrortshowmapLeftpatNull patString patNumberpatBool patObjectpatArraybytestring-0.10.4.0Data.ByteString.Lazy.Internal ByteStringData.ByteString.Internal aeson-0.8.0.2Data.Aeson.Types.InternalValueData.Aeson.Types.ClassFromJSON text-1.2.0.4Data.Text.InternalTextbaseGHC.BaseStringscientific-0.3.3.8Data.Scientific ScientificGHC.RealIntegral GHC.Float RealFloatghc-prim GHC.TypesBoolObjectArray