úΣFœpC      !"#$%&'()*+,-./0123456789:;<=>?@AB+Bryan O'Sullivan 2007-2015, Winterland 2016BSD3drkoster@qq.com experimentalunknownNone.Match any byte, to perform lookahead. Returns C? if end of input has been reached. Does not consume any input.sMatch any byte, to perform lookahead. Does not consume any input, but will fail if end of input has been reached. The parser  satisfy p0 succeeds for any byte for which the predicate p returns D,. Returns the byte that is actually parsed. @digit = satisfy isDigit where isDigit w = w >= 48 && w <= 57 The parser satisfyWith f p3 transforms a byte, and succeeds if the predicate p returns DT on the transformed value. The parser returns the transformed byte that was parsed.Match a specific byte.Match any byte. The parser  skipWord8 p/ succeeds for any byte for which the predicate p returns D.This is a faster version of E' for small N (smaller than chunk size)./Consume input as long as the predicate returns F; or reach the end of input, and return the consumed input. /Consume input as long as the predicate returns D; or reach the end of input, and return the consumed input.  Similar to  t, but requires the predicate to succeed on at least one byte of input: it will fail if the predicate never returns D or reach the end of input 5Skip past input for as long as the predicate returns D. Skip over white space using . string s3 parses a sequence of bytes that identically match s.Ì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 C or the input ends.UThis parser does not fail. It will return an empty string if the predicate returns C on the first byte of input. Similar to , but working on G# chunks, The predicate consumes a Gµ 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.Fast H. predicate for matching ASCII space characters !isSpace w = w == 32 || w - 9 <= 4Decimal digit predicate.Hex digit predicate.(A predicate that matches either a space ' ' or horizontal tab '\t' character.2A predicate that matches either a carriage return '\r' or newline '\n' character.#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 experimentalunknownNoneVBParse 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.,Parse and decode an unsigned decimal number.(Parse a number with an optional leading '+' or '-' sign character.Parse 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 IO to be allocated, resulting in what is effectively a denial-of-service attack.#In most cases, it is better to use  or  instead.%Parse a rational number and round to J.ŽThis parser accepts an optional leading sign character, followed by at least one decimal digit. The syntax similar to that accepted by the K. function, with the exception that a trailing '.' or 'e' not& followed by a number is not consumed.%Examples with behaviour identical to K: »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 K: ^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".Parse a scientific number.6The syntax accepted by this parser is the same as for .MParse 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 experimentalunknownNone.Match any char, to perform lookahead. Returns C? if end of input has been reached. Does not consume any input.sMatch any char, to perform lookahead. Does not consume any input, but will fail if end of input has been reached. The parser  satisfy p0 succeeds for any char for which the predicate p returns D,. Returns the char that is actually parsed.  The parser satisfyWith f p3 transforms a char, and succeeds if the predicate p returns DT on the transformed value. The parser returns the transformed char that was parsed.!Match a specific character."Match any character.# The parser  skipChar p/ succeeds for any char for which the predicate p returns D.$/Consume input as long as the predicate returns F; or reach the end of input, and return the consumed input.%/Consume input as long as the predicate returns D; or reach the end of input, and return the consumed input.'5Skip past input for as long as the predicate returns D.(+Satisfy a literal string but ignoring case.)3Fast 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 *Decimal digit predicate.+Hex digit predicate.,(A predicate that matches either a space ' ' or horizontal tab '\t' character.-2A 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. Alias to L for attoparsec compatibility./Run a parser on G.¼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)0 Similar to /, but run a parser on lazy M.1Run a parser on G.nThis function return full parsing results: the rest of input, stop offest and fail message or parsing result.Since: 0.2.1.02 Similar to 1, but run a parser on lazy M.Since: 0.2.1.03Run a L monad. See Nb for what to do next, like providing input, handling decoding errors and to get the output value.This's faster than O; becuase it provides an initial chunk rather than feeding Pc and waiting for chunks, this overhead is noticeable when you're running small getters over short  ByteString s.Since: 0.2.1.04(Name the parser, in case failure occurs.5*Match only if all input has been consumed.6 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)7Combine two alternatives.8lReturn both the result of a parse and the portion of the input that was consumed while it was being parsed.Q A version of R3 that is strict in the result of its first action.9many' 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:some' 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; 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 ',')< 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 ',')= 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 ',')> 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 ',')?manyTill 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.)@manyTill' 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.A)Skip zero or more instances of an action.B(Skip one or more instances of an action../012345678Q9:;<=>?@ABiLSTUNVWXYZ[\]^_`EabOcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„… ./0123456789:;<=>?@AB./0123456789:;<=>?@AB./012345678Q9:;<=>?@AB4†      !"  #$%&'()*+,-./0123456789:;<=>?@ABCD?@EFGH<IJKLM?@N<OPBQRFSHBCTBCUFVWX<=YBCZBC[BC\BC]BQ^BQ_BQ`BQaBQbBQcBQdBQeBQfBQgBChBCiBCjBCkBClBCmBCnBCoBCpBCqBCrBCsBCtBCuBCvBCwBCxBCyBCzBC{BC|BC}BC~BCBC€BCBC‚BCƒBC„BC…BC†BC‡BCˆBC‰BCŠBC‹BCŒ9NzQl8qT1x4LsnzEk1YpbcData.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 endOfInputoptioneitherPmatchmany'some'sepBysepBy'sepBy1sepBy1'manyTill manyTill'skipMany skipMany1baseGHC.BaseNothingghc-prim GHC.TypesTrue2WJGioZnJmM72wKvh7WTgaData.Binary.GetskipFalsebytes_6VWy06pWzJq9evDvK2d4w6Data.ByteString.Internal ByteStringGHC.WordWord8 integer-gmpGHC.Integer.TypeIntegerDouble Text.ReadreadData.Binary.Get.InternalGetData.ByteString.Lazy.InternalDecoderrunGetIncrementalData.ByteStringemptyliftM2'liftM2PartialFailDone ByteOffset remaining lookAheadM lookAheadE lookAheadlabelisolateisEmptygetBytes getByteString bytesRead runGetState runGetOrFailrunGetpushEndOfInput pushChunks pushChunk getWordhostgetWord8 getWord64le getWord64host getWord64be getWord32le getWord32host getWord32be getWord16le getWord16host getWord16begetRemainingLazyByteStringgetLazyByteStringNulgetLazyByteString getInthostgetInt8 getInt64le getInt64host getInt64be getInt32le getInt32host getInt32be getInt16le getInt16host getInt16be getFloatle getFloathost getFloatbe getDoublele getDoublehost getDoublebe