úÎ5Ä2ñ$      !"#None $+,DIQRTA " describes how to parse an object. Construct a  with , , or  , and the $ combinators.Turn a  into a  with .An ] describes how to parse a fixed-size array where each positional element has its own parser.KThis can be used to parse heterogeneous tuples represented as YAML arrays. Construct an  with  and the $ combinators.Turn a  into a  with .A top-level YAML parser. Construct a  with  , , , ,  , or .Combine two or more s with % operators such as &, , or '4  e.g. if you expect either an object or a string. Run with   or  .1Describes what exactly went wrong during parsing.A parse error.  describes the error. The (‰ field denotes at which level the error occurred and is used to select the deepest (most relevant) error when merging multiple parsers. Run a  on a ) containing the YAML content.4This is a high-level function implemented on top of  . A low-level function to run a . Match a single YAML string.parse string "howdy" Right "howdy" cMatch a specific YAML string, usually a «tag» identifying a particular form of an array or object.!parse (theString "hello") "hello"Right ()5either putStr print $ parse (theString "hello") "bye"Expected "hello" instead of:bye »Match an array of elements, where each of elements are matched by the same parser. This is the function you'll use most of the time when parsing arrays, as they are usually homogeneous.parse (array string) "[a,b,c]"Right ["a","b","c"] Construct an 7 that parses the current array element with the given .œMatch an array consisting of a fixed number of elements. The way each element is parsed depends on its position within the array and is determined by the .Fparse (theArray $ (,) <$> element string <*> element bool) "[f, true]"Right ("f",True)Match a real number.parse number "3.14159" Right 3.14159Match an integer.parse (integer @Int) "2017" Right 2017Match a boolean.parse bool "yes" Right TrueSRequire an object field with the given name and with a value matched by the given .\Declare an optional object field with the given name and with a value matched by the given .GRequire an object field with the given name and the given string value.$This is a convenient wrapper around  ! intended for «tagging» objects.:{O let p = object (Right <$ theField "type" "number" <*> field "value" number)O <> object (Left <$ theField "type" "string" <*> field "value" string):}$parse p "{type: string, value: abc}"Right (Left "abc")$parse p "{type: number, value: 123}"Right (Right 123.0)iMatch an object. Which set of keys to expect and how their values should be parsed is determined by the .Nlet p = object $ (,) <$> field "name" string <*> optField "age" (integer @Int)!parse p "{ name: Anton, age: 2 }"Right ("Anton",Just 2)parse p "name: Roma"Right ("Roma",Nothing)'*+,-. /01 2345  field name value parser field name value parserkey nameexpected value6   *+,-. /01 2345 67       !"#$%&'()'(*'(+'(,-./01233456789:;<+yaml-combinators-1.0-KvNbk5HgEEx18e1pp34AaLData.Yaml.Combinators Data.Monoid<> FieldParser ElementParserParserReasonUnexpectedAsPartOfExpectedAsPartOfExpectedInsteadOf ParseErrorparse runParserstring theStringarrayelementtheArraynumberintegerboolfieldoptFieldtheFieldobject$fMonoidParser$fMonoidParserComponent$fFunctorParser$fHasDatatypeInfoValue$fGenericValue $fEqReason $fShowReason$fEqParseError$fShowParseError$fFunctorElementParser$fApplicativeElementParser$fFunctorFieldParser$fApplicativeFieldParserbaseGHC.Base ApplicativeMonoidmappendmconcatghc-prim GHC.TypesIntbytestring-0.10.8.1Data.ByteString.Internal ByteStringParserComponentmergeParseError ppParseErrorpcFmap valueConNames fromComponenthap' incErrLevel D:R:CodeValue