Ƭ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                 A(c) Edward Kmett 2011-2015 (c) Ross Paterson 2008 BSD-styleekmett@gmail.com experimental<non-portable (MPTCs, type families, functional dependencies)None 9;<=DR 8Map of closed intervals, possibly with duplicates. The  and ; instances process the intervals in lexicographical order.VA closed interval. The lower bound should be less than or equal to the higher bound. O(n)). Add a delta to each interval in the map O(1)$. Interval map with a single entry. O(log n). Insert an interval into a map. The map may contain duplicate intervals; the new entry will be inserted before any existing entries for the same interval. O(k log (n/k))L. All intervals that contain the given interval, in lexicographical order. O(k log (n/k))I. All intervals that contain the given point, in lexicographical order. O(k log (n/k))S. All intervals that intersect with the given interval, in lexicographical order. O(m log (n/m)). Merge two interval maps. The map may contain duplicate intervals; entries with equal intervals are kept in the original order.1   !"#$%&'()*+,    )   !"#$%&'()*+, (C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> experimental non-portableSafe48Edward Kmett 2011-2015 Johan Tibell 2011BSD3ekmett@gmail.com experimentalunknownNoneBOT Smart constructorSmart constructor2Create a new mutable array of specified size, in the specified state thread, with each element containing the specified initial value.>EUnsafely copy the elements of an array. Array bounds are not checked.?EUnsafely copy the elements of an array. Array bounds are not checked.@O(n)T Insert an element at the given position in this array, increasing its size by one.AO(n)8 Update the element at the given position in this array.EO(n)T Delete an element at the given position in this array, decreasing its size by one.GStrict version of F.'./0123456789:;<=>?@ABCDEFGHIJ./0123456789:;<=>?@ABCDEFGHI/.2345016789:A@E;<=>?BCDFGHI#./0123456789:;<=>?@ABCDEFGHIJ (c) Edward Kmett 2013-2015BSD3ekmett@gmail.com experimental non-portableSafe(C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> experimental non-portableSafe05T@Retrieve the character offset within the current line from this M.U;Retrieve the byte offset within the current line from this M.V.Increment a column number to the next tabstop.W Rewind a M to the beginning of the line.X!Should we show two things with a M on the same line?KLMNOPQRSTUVWXYZ[\]^_`abcdefgKLMNPOQRSTUVWXMNOPQKLRSVWXTUKLMNOPQRSTUVWXYZ[\]^_`abcdefg(C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> experimental non-portableNone059;<=} In file included from baz.c:9 In file included from bar.c:4 foo.c:8:36: note int main(int argc, char ** argv) { int; } ^create a drawing surface Pint main(int argc, char ** argv) { int; } ^~~sklmnopqrstuvwxyz{|}~3klmnopqrstuvwxyz{|}~3kl}~{|yzwxuvstopqrmnXklmnopqrstuvwxyz{|}~(c) Edward Kmett 2011-2015BSD3ekmett@gmail.com experimental non-portableNone2349:;<=?OTThis is used to report an error. What went wrong, some supplemental docs and a set of things expected at the current location. This does not, however, include the actual location.A # that lets you embed or retrieve a  in a potentially larger type.CThe result of parsing. Either we succeeded or something went wrong.Generate a simple $ word-wrapping the supplied message.Convert a location and an  into a The  for the  constructor of  The  for the  constructor of $            (C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> experimental non-portableSafe 059;<=DRCgrab a the contents of a rope from a given location up to a newline Cgrab a the contents of a rope from a given location up to a newline !"#$%&'()*+,-    !"#$%&'()*+,-(C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> experimental non-portableNone2A 2 is a  with an associated  full of highlighted regions.4 Convert a  into a coloration on a .5;Represents a source file like an HsColour rendered documentI-Generate an HTML document from a title and a 2.!23456789:;<=>?@ABCDEFGHIJK23456789:DEFGHI23789:456DEFGHI23456789:;<=>?@ABCDEFGHIJK5(C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> experimental non-portableSafe <=BDRSEGiven a position, go there, and grab the text forward from that pointT:Return the text of the line that contains a given positionVIt is a cofree comonadLMNOPQRSTUVWXYZ[\ LMNOPQRSTU LMNPQORSTULMNOPQRSTUVWXYZ[\ (c) Edward Kmett 2011-2015BSD3ekmett@gmail.com experimental non-portableNone9:;<=?]This class is a refinement of `f that adds the ability to mark your position in the input and return there for further parsing later.^Xmark the current location so it can be used in constructing a span, or for later seeking_!Seek a previously marked location`0This class provides parsers with easy access to:<1) the current line contents. 2) the current position as a M. 3) the ability to use f on any parser.aJRetrieve the contents of the current line (from the beginning of the line)b#Retrieve the current position as a M.cGRun a parser, grabbing all of the text between its start and end pointsd Retrieve a k> of the current line noting this position, but not placing a } there.e&Grab the remainder of the current linefjRun a parser, grabbing all of the text between its start and end points and discarding the original resultgGrab a }" pointing to the current location.hParse a y result. Pointing the } to where you start.i+Discard the result of a parse, returning a w/ from where we start to where it ended parsing.jParse a s result. The w2 starts here and runs to the last position parsed.k Grab a fixit.]^_`abcdefghijklmnopqrstuvwxyz{]_^`abcdefghijk`abcdefghijk]^_]^_`abcdefghijklmnopqrstuvwxyz{ (c) Edward Kmett 2011-2015BSD3ekmett@gmail.com experimental non-portableNone2349:;<=?OTThe type of a trifecta parser4The first four arguments are behavior continuations:epsilon success: the parser has consumed no input and has a result as well as a possible Err; the position and chunk are unchanged (see )epsilon failure: the parser has consumed no input and is failing with the given Err; the position and chunk are unchanged (see )committed success: the parser has consumed input and is yielding the result, set of expected strings that would have permitted this parse to continue, new position, and residual chunk to the continuation.ucommitted failure: the parser has consumed input and is failing with a given ErrInfo (user-facing error message)The remaining two arguments arethe current position+the chunk of input currently under analysis is an /; trifecta's backtracking behavior encoded as  is to behave as the leftmost parser which yields a value (regardless of any input being consumed) or which consumes input and fails. That is, a choice of parsers will only yield an epsilon failure if *all* parsers in the choice do. If that is not the desired behavior, see e, which turns a committed parser failure into an epsilon failure (at the cost of error information).parseFromFile p filePath runs a parser p on the input read from filePath using  m. All diagnostic messages emitted over the course of the parse attempt are shown to the user on the console. main = do result <- parseFromFile numbers "digits.txt" case result of Nothing -> return () Just a -> print $ sum aparseFromFileEx p filePath runs a parser p on the input read from filePath using  s. Returns all diagnostic messages emitted over the course of the parse and the answer if the parse was successful. main = do result <- parseFromFileEx (many number) "digits.txt" case result of Failure xs -> displayLn xs Success a -> print (sum a) parseByteString p delta i runs a parser p on i.)|}~|}~|}~ |}~(C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> experimental non-portableNone      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIklmnopqrstuvwxyz{|}~  23456789:DEFGHI]_^`abcdefghijk|}~J !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxx]yzz{|}~      !"#$%&'()*+,-./012345667889:;<=>?@ABCDEFGHIJKLMNONPQRSTUVWXYZ[\] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                       =>  C            !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKL#trifecta-1.7-JbDrfuEnY4pL19DKxHFrrKText.Trifecta.HighlightText.Trifecta.Util.IntervalMapText.Trifecta.Util.ArrayText.Trifecta.DeltaText.Trifecta.RenderingText.Trifecta.ResultText.Trifecta.RopeText.Trifecta.Util.ItText.Trifecta.CombinatorsText.Trifecta.ParserText.Trifecta.Util.CombinatorsText.Trifecta.Instances ByteStringreadFile Text.Trifecta%parsers-0.12.5-IK6NtnqInHl3ORiEhwn6lOText.Parser.Token.Highlight Highlight IntervalMaprunIntervalMap IntInterval NoIntervalIntervallowhighoffset singletoninsert dominatorssearch intersectionsfromList$fSemigroupIntervalMap$fMonoidIntervalMap$fHasUnion0IntervalMap$fHasUnionIntervalMap $fMeasuredIntIntervalIntervalMap)$fTraversableWithIndexIntervalIntervalMap$fTraversableIntervalMap&$fFoldableWithIndexIntervalIntervalMap$fFoldableIntervalMap%$fFunctorWithIndexIntervalIntervalMap$fFunctorIntervalMap$fMeasuredIntIntervalNode$fSemigroupIntInterval$fMonoidIntInterval"$fTraversableWithIndexIntervalNode$fTraversableNode$fFoldableWithIndexIntervalNode$fFoldableNode$fFunctorWithIndexIntervalNode $fFunctorNode$fTraversableInterval$fFoldableInterval$fFunctorInterval $fOrdInterval $fEqInterval$fReducervInterval$fSemigroupInterval$fShowIntervalMArrayArraylengthlengthMnewnew_emptyreadwriteindexindex_indexM_ unsafeFreezerunrun2copycopyMupdatefoldl'foldrthawdeletemapmap'traversefilter $fNFDataArrayHasDeltadeltaDeltaColumnsTabLinesDirectedHasBytesbytescolumn columnBytenextTabrewindnear$fHasDeltaFingerTree$fHasDeltaByteString$fHasDeltaWord8$fHasDeltaChar$fHasDeltaDelta$fSemigroupDelta $fMonoidDelta$fHashableDelta$fHasBytesDelta $fPrettyDelta$fHasDeltaEither $fOrdDelta $fEqDelta$fHasBytesFingerTree$fHasBytesByteString $fShowDelta $fDataDelta$fGenericDelta RenderingdrawFixit _fixitSpan_fixitReplacementSpanned:~HasSpanspanSpanCareted:^HasCaretcaretCaretRendered:@Sourcesource Renderablerender HasRendering renderingrenderingDelta renderingLinerenderingLineBytesrenderingLineLenrenderingOverlays nullRenderingemptyRenderingifNearrendered.# caretEffects drawCaretaddCaretrenderingCaret spanEffectsdrawSpanaddSpan drawFixitaddFixit$fHashableSpanned$fRenderableSpanned$fReducerSpannedRendering$fTraversableSpanned$fFoldableSpanned$fComonadApplySpanned$fComonadSpanned$fFunctorSpanned$fHasSpanSpanned$fHashableSpan$fReducerSpanRendering$fSemigroupSpan$fRenderableSpan $fHasSpanSpan$fHashableCareted$fReducerCaretedRendering$fRenderableCareted$fTraversableCareted$fFoldableCareted$fComonadApplyCareted$fComonadCareted$fHasBytesCareted$fHasDeltaCareted$fFunctorCareted$fHasCaretCareted$fSemigroupCaret$fReducerCaretRendering$fRenderableCaret$fHasDeltaCaret$fHasBytesCaret$fHashableCaret$fHasCaretCaret$fRenderableRendered$fTraversableRendered$fFoldableRendered$fComonadApplyRendered$fComonadRendered$fHasBytesRendered$fHasDeltaRendered$fFunctorRendered$fPrettyRendering$fSourceByteString $fSource[]$fRenderableRendering$fHasDeltaRendering$fMonoidRendering$fSemigroupRendering$fShowRendering$fHasRenderingRendering$fShowRendered $fEqCaret $fOrdCaret $fShowCaret $fDataCaret$fGenericCaret $fEqCareted $fOrdCareted $fShowCareted $fDataCareted$fGenericCareted$fEqSpan $fOrdSpan $fShowSpan $fDataSpan $fGenericSpan $fEqSpanned $fOrdSpanned $fShowSpanned $fDataSpanned$fGenericSpanned $fEqFixit $fOrdFixit $fShowFixit $fDataFixit$fGenericFixitHasFixitfixitfixitReplacement fixitSpan$fRenderableFixit$fReducerFixitRendering$fHashableFixit$fHasSpanFixit$fHasFixitFixitErr_reason _footnotes _expected _finalDeltasErrInfo_errDoc _errDeltas $fShowErrInfoAsResult_ResultResultSuccessFailureErrableraiseErrHasErrerrexpected finalDeltas footnotesreasonfailedexplain_Success_Failure$fAlternativeResult$fApplicativeResult$fPrettyResult$fAsResultResultResultab$fSemigroupErrInfo$fMonoidErrInfo $fMonoidErr$fSemigroupErr $fHasErrErr $fShowResult$fFunctorResult$fFoldableResult$fTraversableResultRopeStrandSkippingstrandropestrandsgrabRestgrabLine$fReducer[]Rope$fReducerByteStringRope$fReducerStrandRope$fReducerRopeRope$fSemigroupRope $fMonoidRope$fMeasuredDeltaRope$fHasDeltaRope$fHasBytesRope$fHasBytesStrand$fHasDeltaStrand$fHashableStrand$fMeasuredDeltaStrand $fShowStrand $fDataStrand$fGenericStrand $fShowRopeHighlightedRope withHighlight HighlightDocHasHighlightedRopehighlightedRope ropeContentropeHighlights$fPrettyHighlightedRope$fToMarkupHighlightedRope $fOrdLocated $fEqLocated$fMonoidHighlightedRope$fSemigroupHighlightedRope$fHasBytesHighlightedRope$fHasDeltaHighlightedRope#$fHasHighlightedRopeHighlightedRopeHasHighlightDoc highlightDoc docContentdocCssdocTitledoc$fToMarkupHighlightDoc$fHasHighlightDocHighlightDocItPure simplifyItneedItwantItrunItfillItrewindItsliceIt $fComonadIt$fComonadApplyIt $fMonadIt$fApplicativeIt$fProfunctorIt $fFunctorIt$fShowIt MarkParsingmarkrelease DeltaParsinglineposition slicedWithrend restOfLineslicedcaretingcaretedspanningspannedfixiting$fMarkParsingdIdentityT$fMarkParsingdRWST$fMarkParsingdRWST0$fMarkParsingdWriterT$fMarkParsingdWriterT0$fMarkParsingdReaderT$fMarkParsingdStateT$fMarkParsingdStateT0$fDeltaParsingIdentityT$fDeltaParsingRWST$fDeltaParsingRWST0$fDeltaParsingWriterT$fDeltaParsingWriterT0$fDeltaParsingReaderT$fDeltaParsingStateT$fDeltaParsingStateT0StepStepDoneStepFailStepContParserunparser manyAccumfeedstarve stepResultstepIt stepParser parseFromFileparseFromFileExparseByteString parseString parseTest $fFunctorStep $fShowStep$fMarkParsingDeltaParser$fDeltaParsingParser$fTokenParsingParser$fCharParsingParser$fLookAheadParsingParser$fErrableParser$fParsingParser$fMonadPlusParser$fMonadFailParser $fMonadParser$fMonoidParser$fSemigroupParser$fAlternativeParser$fApplicativeParser$fFunctorParserbase Data.FoldableFoldableData.Traversable TraversableNode largerErroratleastgreaterargminargmaxfromLazytoLazytakeLine<$!>arraymarrayunMArrayunArrayrnfArray undefinedElemtoList$fSemigroupDocint64_renderingDelta_renderingLineLen_renderingLineBytes_renderingLine_renderingOverlaysoutOfRangeEffectssgr///growwindow"lens-4.15.2-3fWEUZvYwLr9JOc54nlJSWControl.Lens.TypePrism-ansi-wl-pprint-0.6.7.3-3JhwQsti0Qe1N1DpmdgIj0Text.PrettyPrint.ANSI.LeijenDoc_ropeHighlights _ropeContent _docTitle_docCss _docContentLocatedindexItGHC.Basepure Alternative<|>Text.Parser.CombinatorstrySteppingEOEECOCEliftItmanysomeControl.ApplicativeoptionalText.Parser.Tokenoctal hexadecimaldecimalinteger' characterCharident reserveTextreserveliftIdentifierStylestyleHighlightsstyleReservedHighlightstyleHighlight styleReserved styleChars styleLetter styleStart styleName commaSep1commaSepsemiSep1semiSepdotcoloncommabracketsanglesbracesparenssymbolic textSymbolsymbolintegerOrScientificnaturalOrScientific scientificintegerOrDoublenaturalOrDoubledoubleintegernaturalstringLiteral' stringLiteral charLiteral whiteSpace TokenParsingseminestingtoken highlight someSpaceIdentifierStyle _styleName _styleStart _styleLetter_styleReserved_styleHighlight_styleReservedHighlight UnhighlightedrunUnhighlightedUnspaced runUnspacedUnlined runUnlinedText.Parser.Char satisfyRangeoctDigithexDigitdigitletteralphaNumloweruppertabnewlinespacespaces noneOfSetoneOfSetnoneOfoneOf CharParsingtextstringcharsatisfyanyCharnotCharmanyTillchainr1chainl1chainlchainrcountendByendBy1sepEndBy sepEndBy1sepBy1sepBybetween skipOptionaloptionchoiceParsingskipManyeof unexpected notFollowedByskipSome