!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  2014 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com> experimentalNone5I.:A data type representing a stats value in a headline, e.g [2/3] in this headline: "* TODO [2/3] work on orgmode-parse 6A sum type representing the three default priorities: A, B, and C.1A type representing a map of planning timestamps..A sum type representing the planning keywords.3A type representing a headline state keyword, e.g: TODO, DONE, WAITING, etc.2A sum type representing the time units of a delay.'A data type representing a delay value. Type of delay  Delay value!Delay time unit"8A sum type representing the delay type of a delay value.%FA data type representing a repeater interval in a org-mode timestamp.'Type of repeater( Repeat value)Repeat time unit*ZA sum type representing the repeater type of a repeater interval in a org-mode timestamp..0A data type for parsed org-mode datetime stamps.`TODO: why do we have this data type and BracketedDateTime? They look almost exactly the same...5A sum type representing an absolute time part of a bracketed org-mode datetime stamp or a time range between two absolute timestamps.8?A data type for parsed org-mode bracketed datetime stamps, e.g: [2015-03-27 Fri 10:20 +4h]@9A generic data type for parsed org-mode time stamps, e.g: `<2015-03-27 Fri 10:20> [2015-03-27 Fri 10:20 +4h] <2015-03-27 Fri 10:20>--<2015-03-28 Sat 10:20>BA datetime stampCActive or inactive?DA end-of-range datetime stampH4Sum type indicating the active state of a timestamp.U.Section of text directly following a headline.WA headline's section timestampXA map of planning timestampsYA list of clocksZ.A map of properties from the :PROPERTY: drawer[*A list of clocks from the :LOGBOOK: drawer\%A list of parsed user-defined drawers]Arbitrary text^Headline nesting depth.`%Headline within an org-mode document.bAOrg headline nesting depth (1 is at the top), e.g: * or ** or ***c&State of the headline, e.g: TODO, DONEdHeadline priority, e.g: [#A]ePrimary text of the headlinef0A timestamp that may be embedded in the headlineg3Fraction of subtasks completed, e.g: [33%] or [1/2]hTags on the headlineiThe body underneath a headlinejA list of sub-headlineskOrg-mode document.m'Text occurring before any Org headlinesnToplevel Org headlines  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~o  !"#$%&'()*+,-./4012356789=:;<>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`afibcdeghjklmnoHIJ89:;<=>?EFG./01234 !"#$^_klmnKLMN`abcdefghijOPQ RST%&'()*+,-UVWXYZ[\] 567@ABCDH   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_` abcdefghijklmnopqrstuvwxyz{|}~ 2017 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com>stableNone!Skip whitespace characters, only!Data.Attoparsec.Text.skipSpace uses the isSpace predicate from  Data.Char which also includes control characters such as a return and newline which we need to *not* consume in some cases during parsing.&Parse a non-heading line of a section. 2014 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com>stableNone!"$, Parse a planning line.Plannings inhabit a heading section and are formatted as a keyword and a timestamp. There can be more than one, but they are all on the same line e.g: 6DEADLINE: <2015-05-10 17:00> CLOSED: <2015-04-1612:00>Parse a clock line.wA heading's section contains one line per clock entry. Clocks may have a timestamp, a duration, both, or neither e.g.: =CLOCK: [2014-12-10 Fri 2:30]--[2014-12-10 Fri 10:30] => 08:00Parse a timestamp.Timestamps may be timepoints or timeranges, and they indicate whether they are active or closed by using angle or square brackets respectively.LTime ranges are formatted by infixing two timepoints with a double hyphen, --; or, by appending two hh:mm< timestamps together in a single timepoint with one hyphen -.NEach timepoint includes an optional repeater flag and an optional delay flag.Parse a single time part. [2015-03-27 Fri 10:20 +4h]Returns:The basic timestampnWhether there was a time interval in place of a single time (this will be handled upstream by parseTimestamp)&Whether the time is active or inactiveGiven a BracketedDateTime6 data type, transform it into a triple composed of a DateTime , possibly a (Hours, Minutes)D tuple signifying the end of a timestamp range, and a boolean indic2Parse a day name in the same way as org-mode does.The character set (]+0123456789>rn -() is based on a part of a regexp named org-ts-regexp0 found in org.el.NParse the time-of-day part of a time part, as a single point or a time range.)Parse the YYYY-MM-DD part of a time part. Parse a single HH:MM point. 4Parse the Timeunit part of a delay or repeater flag. Parse a repeater flag, e.g. .+4w, or ++1y. Parse a delay flag, e.g. --1d or -2w.           2017 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com>stableNoneParse a user-defined drawer. O:MYTEXT: whatever I want, can go in here except for headlines and drawers :END: (Parse a user-defined drawer's name, e.g: &:DRAWERNAME: my text in a drawer :END:IParse drawer delimiters, e.g the beginning and end of a property drawer: :PROPERTIES: :END: Parse the :END: of a drawer.   2017 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com>stableNoneParse a LOGBOOK drawer. N:LOGBOOK: CLOCK: [2015-10-05 Mon 17:13]--[2015-10-05 Mon 17:14] => 0:01 :END: 2014 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com>stableNoneParse a PROPERTY drawer. Z:PROPERTIES: :DATE: [2014-12-14 11:00] :NOTE: Something really crazy happened today! :END:Parse a property of a drawer.Properties *must* be a `:KEY: value` pair, the key can be of any case and contain any characters except for newlines and colons (since they delimit the start and end of the key).  2017 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com>stableNone 2015 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com>stableNoneParse a heading sectionHeadline sections contain optionally a property drawer, a list of clock entries, code blocks (not yet implemented), plain lists (not yet implemented), and unstructured text. 2014 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com>stableNone$ jIntermediate type for parsing titles in a headline after the state keyword and priority have been parsed.`Parse an org-mode headline, its metadata, its section-body, and any sub-headlines; please see  +http://orgmode.org/worg/dev/org-syntax.html org-syntax.Headline metadata includes a hierarchy level indicated by asterisks, optional todo state keywords, an optional priority level, %-done statistics, and tags; e.g: @** TODO [#B] Polish Poetry Essay [25%] :HOMEWORK:POLISH:WRITING:Headlines may contain:)A section with Planning and Clock entriesCA number of other not-yet-implemented entities (code blocks, lists)Unstructured text Sub-headlinesheadlineBelowDepthS takes a list of terms to consider, state keywords, and a minumum hierarchy depth.Use a Depth of 0 to parse any headline.JParse the asterisk-indicated headline depth until a space is encountered.Constrain it to Depth.Parse the state indicator. {`TODO` | `DONE` | custom }KThese can be custom so we're parsing additional state identifiers as Text.Parse the priority indicator.IIf anything but these priority indicators are used the parser will fail: [#A] [#B] [#C]8Parse the title, optional stats block, and optional tag.aStats may be either [m/n] or [n%] and tags are colon-separated, e.g: > :HOMEWORK:POETRY:WRITING:Produce a triple consisting of a stripped start-of-title if there are no leftovers after parsing (otherwise, recombine the two) and the optional stats and tags.&Parse a statisticss block, e.g: [33%].pAccepts either form: "[m/n]" or "[n%]" and there is no restriction on m or n other than that they are integers.%Parse a colon-separated list of tags. :HOMEWORK:POETRY:WRITING: #Start of title till the end of lineStats, e.g: [33%] Tags, e.g: :HOMEWORK:CODE:SLEEP:%Leftovers (may be empty) of the title   2014 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com>stableNone  2014 Parnell SpringmeyerAll Rights Reserved/Parnell Springmeyer <parnell@digitalmentat.com>stableNone      !!"#$%&'())*+,-./001234567889:;<=>?@AABCDEFGHHIJKLLMNOPQQRSTTUVVWXXYZ[\]^_``aabcdefghijkklmnopqrstuvwxyz{|}~      )orgmode-parse-0.2.2-22GHCTqBgAoatZiBQHEqyData.OrgMode.Types"Data.OrgMode.Parse.Attoparsec.Util"Data.OrgMode.Parse.Attoparsec.Time,Data.OrgMode.Parse.Attoparsec.Drawer.Generic,Data.OrgMode.Parse.Attoparsec.Drawer.Logbook-Data.OrgMode.Parse.Attoparsec.Drawer.Property%Data.OrgMode.Parse.Attoparsec.Section&Data.OrgMode.Parse.Attoparsec.Headline&Data.OrgMode.Parse.Attoparsec.Document$Data.OrgMode.Parse.Attoparsec.DrawerData.OrgMode.Parse$thyme-0.3.5.5-48jm8aseI0aKwKUmN6aWXFData.Thyme.Calendar.InternalymdDayymdMonthymdYear YearMonthDayDurationStatsStatsPctStatsOfTagPriorityABC PlanningsPlnsPlanningKeyword SCHEDULEDDEADLINECLOSED StateKeywordunStateKeywordTimeUnitUnitYearUnitWeek UnitMonthUnitDayUnitHourDelay delayType delayValue delayUnit DelayTypeDelayAll DelayFirstRepeater repeaterType repeaterValue repeaterUnit RepeaterTypeRepeatCumulate RepeatCatchUp RepeatRestartDateTime yearMonthDaydayName hourMinuterepeaterdelayTimePart AbsoluteTimeTimeStampRangeBracketedDateTimedatePart dayNameParttimePartrepeat delayPart activeState TimestamptsTimetsActive tsEndTimeClockunClock ActiveStateActiveInactiveDrawernamecontentsLogbook unLogbook Properties unPropertiesSectionsectionTimestampsectionPlannings sectionClockssectionPropertiessectionLogbooksectionDrawerssectionParagraphDepthHeadlinedepth stateKeywordprioritytitle timestampstatstagssection subHeadlinesDocument documentTextdocumentHeadlines$fHashablePlanningKeyword$fFromJSONStats $fToJSONStats$fFromJSONPriority$fToJSONPriority$fFromJSONHeadline$fToJSONHeadline$fFromJSONSection$fToJSONSection$fFromJSONPlannings$fToJSONPlannings$fFromJSONPlanningKeyword$fToJSONPlanningKeyword$fFromJSONStateKeyword$fToJSONStateKeyword$fFromJSONTimeUnit$fToJSONTimeUnit$fFromJSONDelay $fToJSONDelay$fFromJSONDelayType$fToJSONDelayType$fFromJSONRepeater$fToJSONRepeater$fFromJSONRepeaterType$fToJSONRepeaterType$fFromJSONDateTime$fToJSONDateTime$fFromJSONYearMonthDay$fToJSONYearMonthDay$fFromJSONTimestamp$fToJSONTimestamp$fFromJSONClock $fToJSONClock$fFromJSONActiveState$fToJSONActiveState$fFromJSONDrawer$fToJSONDrawer$fFromJSONLogbook$fToJSONLogbook$fFromJSONProperties$fToJSONProperties$fFromJSONDepth $fToJSONDepth$fFromJSONDocument$fToJSONDocument $fEqDepth $fShowDepth $fNumDepth$fGenericDepth$fShowProperties$fEqProperties$fGenericProperties$fSemigroupProperties$fMonoidProperties $fShowDrawer $fEqDrawer$fGenericDrawer$fShowActiveState$fEqActiveState$fReadActiveState$fGenericActiveState $fEqTimePart $fOrdTimePart$fShowTimePart$fShowRepeaterType$fEqRepeaterType$fGenericRepeaterType$fShowDelayType $fEqDelayType$fGenericDelayType$fShowTimeUnit $fEqTimeUnit$fGenericTimeUnit $fShowDelay $fEqDelay$fGenericDelay$fShowRepeater $fEqRepeater$fGenericRepeater$fShowDateTime $fEqDateTime$fGenericDateTime$fShowTimestamp $fEqTimestamp$fGenericTimestamp$fShowBracketedDateTime$fEqBracketedDateTime$fShowStateKeyword$fEqStateKeyword$fGenericStateKeyword$fShowPlanningKeyword$fEqPlanningKeyword$fEnumPlanningKeyword$fOrdPlanningKeyword$fGenericPlanningKeyword$fShowPlannings $fEqPlannings$fGenericPlannings$fShowPriority$fReadPriority $fEqPriority $fOrdPriority$fGenericPriority $fShowStats $fEqStats$fGenericStats $fShowClock $fEqClock$fGenericClock $fShowLogbook $fEqLogbook$fGenericLogbook$fSemigroupLogbook$fMonoidLogbook $fShowSection $fEqSection$fGenericSection$fShowHeadline $fEqHeadline$fGenericHeadline$fShowDocument $fEqDocument$fGenericDocument skipOnlySpace nonHeadlineparsePlannings parseClockparseTimestamp parseDrawerparseDrawerDelim drawerEnd parseLogbook PropertyVal PropertyKeyparsePropertiesproperty parseSection TitleMetaheadlineBelowDepth headlineDepthheadingPriority mkTitleMeta parseStats parseTags $fEqTitleMeta$fShowTitleMeta parseDocumentAbsTimeWeekdayparseBracketedDateTimetransformBracketedDateTimeparseDay parseTime' parseDateparseHM parseTimeUnit parseRepeater parseDelayparseDrawerNameparseStateKeyword parseTitle