úÎ!´9ŹĽE      !"#$%&'()*+,-./0123456789:;<=>?@ABCD+Bryan O'Sullivan 2007-2015, Winterland 2016BSD3drkoster@qq.com experimentalunknownNone/“binary-parsers.Match any byte, to perform lookahead. Returns E? if end of input has been reached. Does not consume any input.binary-parserssMatch any byte, to perform lookahead. Does not consume any input, but will fail if end of input has been reached.binary-parsers The parser  satisfy p0 succeeds for any byte for which the predicate p returns F,. Returns the byte that is actually parsed. @digit = satisfy isDigit where isDigit w = w >= 48 && w <= 57binary-parsers The parser satisfyWith f p3 transforms a byte, and succeeds if the predicate p returns FT on the transformed value. The parser returns the transformed byte that was parsed.binary-parsersMatch a specific byte.binary-parsersMatch any byte.binary-parsers The parser  skipWord8 p/ succeeds for any byte for which the predicate p returns F.binary-parsersThis is a faster version of G' for small N (smaller than chunk size).binary-parsers/Consume input as long as the predicate returns H; or reach the end of input, and return the consumed input. binary-parsers/Consume input as long as the predicate returns F; or reach the end of input, and return the consumed input. binary-parsers Similar to  t, but requires the predicate to succeed on at least one byte of input: it will fail if the predicate never returns F or reach the end of input binary-parsers5Skip past input for as long as the predicate returns F. binary-parsersSkip over white space using . binary-parsersstring s3 parses a sequence of bytes that identically match s.binary-parsersĚA stateful scanner. The predicate consumes and transforms a state argument, and each transformed state is passed to successive invocations of the predicate on each byte of the input until one returns E or the input ends.UThis parser does not fail. It will return an empty string if the predicate returns E on the first byte of input.binary-parsers Similar to , but working on I# chunks, The predicate consumes a Iľ chunk and transforms a state argument, and each transformed state is passed to successive invocations of the predicate on each chunk of the input until one chunk got splited to Right (ByteString, ByteString) or the input ends.binary-parsersFast J. predicate for matching ASCII space characters !isSpace w = w == 32 || w - 9 <= 4binary-parsersDecimal digit predicate.binary-parsersHex digit predicate.binary-parsers(A predicate that matches either a space ' ' or horizontal tab '\t' character.binary-parsers2A predicate that matches either a carriage return '\r' or newline '\n' character.binary-parsers#Match either a single newline byte '\n'3, or a carriage return followed by a newline byte "\r\n".  +Bryan O'Sullivan 2007-2015, Winterland 2016BSD3drkoster@qq.com experimentalunknownNoneNabinary-parsersBParse and decode an unsigned hexadecimal number. The hex digits 'a' through 'f' may be upper or lower case.&This parser does not accept a leading "0x" string.binary-parsers,Parse and decode an unsigned decimal number.binary-parsers(Parse a number with an optional leading '+' or '-' sign character.binary-parsersParse a rational number.6The syntax accepted by this parser is the same as for .Notey: this parser is not safe for use with inputs from untrusted sources. An input with a suitably large exponent such as "1e1000000000" will cause a huge KO to be allocated, resulting in what is effectively a denial-of-service attack.#In most cases, it is better to use  or  instead.binary-parsers%Parse a rational number and round to L.ŽThis parser accepts an optional leading sign character, followed by at least one decimal digit. The syntax similar to that accepted by the M. function, with the exception that a trailing '.' or 'e' not& followed by a number is not consumed.%Examples with behaviour identical to M: ťparseOnly double "3" == Right ("",1,3.0) parseOnly double "3.1" == Right ("",3,3.1) parseOnly double "3e4" == Right ("",3,30000.0) parseOnly double "3.1e4" == Right ("",5,31000.0) mparseOnly double ".3" == Left (".3",0,"takeWhile1") parseOnly double "e3" == Left ("e3",0,"takeWhile1")Examples of differences from M: ^parseOnly double "3.foo" == Right (".foo",1,3.0) parseOnly double "3e" == Right ("e",1,3.0)MThis function does not accept string representations of "NaN" or "Infinity".binary-parsersParse a scientific number.6The syntax accepted by this parser is the same as for .binary-parsersMParse a scientific number and convert to result using a user supply function.6The syntax accepted by this parser is the same as for .+Bryan O'Sullivan 2007-2015, Winterland 2016BSD3drkoster@qq.com experimentalunknownNonekÜbinary-parsers.Match any char, to perform lookahead. Returns E? if end of input has been reached. Does not consume any input.binary-parserssMatch any char, to perform lookahead. Does not consume any input, but will fail if end of input has been reached.binary-parsers The parser  satisfy p0 succeeds for any char for which the predicate p returns F,. Returns the char that is actually parsed. binary-parsers The parser satisfyWith f p3 transforms a char, and succeeds if the predicate p returns FT on the transformed value. The parser returns the transformed char that was parsed.!binary-parsersMatch a specific character."binary-parsersMatch any character.#binary-parsers The parser  skipChar p/ succeeds for any char for which the predicate p returns F.$binary-parsers/Consume input as long as the predicate returns H; or reach the end of input, and return the consumed input.%binary-parsers/Consume input as long as the predicate returns F; or reach the end of input, and return the consumed input.'binary-parsers5Skip past input for as long as the predicate returns F.(binary-parsers+Satisfy a literal string but ignoring case.)binary-parsers3Fast predicate for matching ASCII space characters.Note˙: This predicate only gives correct answers for the ASCII encoding. For instance, it does not recognise U+00A0 (non-breaking space) as a space character, even though it is a valid ISO-8859-15 byte. For a Unicode-aware and only slightly slower predicate, use *binary-parsersDecimal digit predicate.+binary-parsersHex digit predicate.,binary-parsers(A predicate that matches either a space ' ' or horizontal tab '\t' character.-binary-parsers2A predicate that matches either a carriage return '\r' or newline '\n' character. !"#$%&'()*+,- !"#$%&'()*+,-BDaan Leijen 1999-2001, Bryan O'Sullivan 2007-2015, Winterland 2016BSD3drkoster@qq.com experimentalportableNoneކ.binary-parsers Alias to N for attoparsec compatibility./binary-parsersRun a parser on I.źThis function does not force a parser to consume all of its input. Instead, any residual input will be discarded. To force a parser to consume all of its input, use something like this: "parseOnly (myParser <* endOfInput)0binary-parsers Similar to /, but run a parser on lazy O.1binary-parsersRun a parser on I.nThis function return full parsing results: the rest of input, stop offest and fail message or parsing result.Since: 0.2.1.02binary-parsers Similar to 1, but run a parser on lazy O.Since: 0.2.1.03binary-parsersRun a N monad. See Pb for what to do next, like providing input, handling decoding errors and to get the output value.This's faster than Q; becuase it provides an initial chunk rather than feeding Rc and waiting for chunks, this overhead is noticeable when you're running small getters over short  ByteString s.Since: 0.2.1.04binary-parsers Convert a P value to a S value. A T result is treated as failure.Since: 0.2.3.05binary-parsers Convert a P value to an U value. A T result is treated as failure.Since: 0.2.3.06binary-parsers(Name the parser, in case failure occurs.7binary-parsers*Match only if all input has been consumed.8binary-parsers option x p tries to apply action p. If p6 fails without consuming input, it returns the value x#, otherwise the value returned by p. +priority = option 0 (digitToInt <$> digit)9binary-parsersCombine two alternatives.:binary-parserslReturn both the result of a parse and the portion of the input that was consumed while it was being parsed.Vbinary-parsers A version of W3 that is strict in the result of its first action.;binary-parsersmany' p applies the action p zero: or more times. Returns a list of the returned values of p. The value returned by p is forced to WHNF.  word = many' letter<binary-parserssome' p applies the action p one: or more times. Returns a list of the returned values of p. The value returned by p is forced to WHNF.  word = some' letter=binary-parsers sepBy p sep applies zero or more occurrences of p, separated by sep+. Returns a list of the values returned by p. "commaSep p = p `sepBy` (char ',')>binary-parsers sepBy' p sep applies zero or more occurrences of p, separated by sep+. Returns a list of the values returned by p. The value returned by p is forced to WHNF. #commaSep p = p `sepBy'` (char ',')?binary-parsers sepBy1 p sep applies one or more occurrences of p, separated by sep+. Returns a list of the values returned by p. #commaSep p = p `sepBy1` (char ',')@binary-parsers sepBy1' p sep applies one or more occurrences of p, separated by sep+. Returns a list of the values returned by p. The value returned by p is forced to WHNF. $commaSep p = p `sepBy1'` (char ',')Abinary-parsersmanyTill p end applies action p zero or more times until action end7 succeeds, and returns the list of values returned by p%. This can be used to scan comments: C simpleComment = string "<!--" *> manyTill anyChar (string "-->")(Note the overlapping parsers anyChar and  string "-->"\. While this will work, it is not very efficient, as it will cause a lot of backtracking.)Bbinary-parsersmanyTill' p end applies action p zero or more times until action end7 succeeds, and returns the list of values returned by p%. This can be used to scan comments: D simpleComment = string "<!--" *> manyTill' anyChar (string "-->")(Note the overlapping parsers anyChar and  string "-->"\. While this will work, it is not very efficient, as it will cause a lot of backtracking.)The value returned by p is forced to WHNF.Cbinary-parsers)Skip zero or more instances of an action.Dbinary-parsers(Skip one or more instances of an action.kXYZ[\]^_`abcdefghijklmnopqrstuvGwxyz{|QP}T~€‚ƒ„…†‡ˆ‰N ./0123456789:;<=>?@ABCD./0123456789:;<=>?@ABCD60Š      !"  #$%&'()*+,-./0123456789:;<=>?@ABCDEFABGHIJ>KLMNOABP>QRDSTHUJDEVDEWHXY>?ZDE[>\]^>_`DEaDEbDEcDEdDEeDEfDEgDEhDEiDEjDEkDElDEmDEnDEoDEpDEqDErDEsDEtDEuDEvDEwDExDEyDEzDE{DE|DE}DE~DEDE€DEDE‚DEƒDE„DE…DE†DE‡DEˆDS‰DSŠDS‹DSŒDSDSŽDSDSDS‘DS’“-binary-parsers-0.2.4.0-8tf2xjikojYEZfAbf6d2TWData.Binary.Parser.Word8Data.Binary.Parser.NumericData.Binary.Parser.Char8Data.Binary.Parser Data.CharisSpace peekMaybepeeksatisfy satisfyWithword8anyWord8 skipWord8skipNtakeTill takeWhile takeWhile1 skipWhile skipSpacesstringscan scanChunksisDigit isHexDigitisHorizontalSpace isEndOfLine endOfLine hexadecimaldecimalsignedrationaldouble scientificscientificallycharanyCharskipCharstringCIParser parseOnly parseLazy parseDetailparseDetailLazyparse maybeDecoder eitherDecoder endOfInputoptioneitherPmatchmany'some'sepBysepBy'sepBy1sepBy1'manyTill manyTill'skipMany skipMany1base GHC.MaybeNothingghc-prim GHC.TypesTruebinary-0.8.6.0Data.Binary.GetskipFalsebytestring-0.10.8.2Data.ByteString.Internal ByteStringGHC.WordWord8 integer-gmpGHC.Integer.TypeIntegerDouble Text.ReadreadData.Binary.Get.InternalGetData.ByteString.Lazy.InternalDecoderrunGetIncrementalData.ByteStringemptyMaybePartial Data.EitherEitherliftM2'GHC.BaseliftM2 getDoublehost getDoublele getDoublebe getFloathost getFloatle getFloatbe getInt64host getInt32host getInt16host getInthost getWord64host getWord32host getWord16host getWordhost getInt64le getInt32le getInt16le getInt64be getInt32be getInt16be getWord64le getWord64be getWord32le getWord32be getWord16le getWord16begetInt8getWord8getRemainingLazyByteStringgetLazyByteStringNulgetLazyByteStringpushEndOfInput pushChunks pushChunkrunGet runGetOrFail runGetStateFailDone ByteOffset getByteString remaininglabel lookAheadE lookAheadM lookAheadgetBytesisEmptyisolate bytesRead