hledger-lib-1.12: Core data types, parsers and functionality for the hledger accounting tools

Safe Haskell | None
Language | Haskell2010

Hledger.Utils.Parse

Contents

- re-exports

Synopsis

- type SimpleStringParser a = Parsec CustomErr String a
- type SimpleTextParser = Parsec CustomErr Text
- type TextParser m a = ParsecT CustomErr Text m a
- type JournalParser m a = StateT Journal (ParsecT CustomErr Text m) a
- type ErroringJournalParser m a = StateT Journal (ParsecT CustomErr Text (ExceptT FinalParseError m)) a
- choice' :: [TextParser m a] -> TextParser m a
- choiceInState :: [StateT s (ParsecT CustomErr Text m) a] -> StateT s (ParsecT CustomErr Text m) a
- surroundedBy :: Applicative m => m openclose -> m a -> m a
- parsewith :: Parsec e Text a -> Text -> Either (ParseErrorBundle Text e) a
- parsewithString :: Parsec e String a -> String -> Either (ParseErrorBundle String e) a
- parseWithState :: Monad m => st -> StateT st (ParsecT CustomErr Text m) a -> Text -> m (Either (ParseErrorBundle Text CustomErr) a)
- parseWithState' :: Stream s => st -> StateT st (ParsecT e s Identity) a -> s -> Either (ParseErrorBundle s e) a
- fromparse :: (Show t, Show (Token t), Show e) => Either (ParseErrorBundle t e) a -> a
- parseerror :: (Show t, Show (Token t), Show e) => ParseErrorBundle t e -> a
- showDateParseError :: (Show t, Show (Token t), Show e) => ParseErrorBundle t e -> String
- nonspace :: TextParser m Char
- isNonNewlineSpace :: Char -> Bool
- spacenonewline :: (Stream s, Char ~ Token s) => ParsecT CustomErr s m Char
- restofline :: TextParser m String
- eolof :: TextParser m ()
- data CustomErr

# Documentation

type SimpleStringParser a = Parsec CustomErr String a Source #

A parser of string to some type.

type SimpleTextParser = Parsec CustomErr Text Source #

A parser of strict text to some type.

type TextParser m a = ParsecT CustomErr Text m a Source #

A parser of text in some monad.

type JournalParser m a = StateT Journal (ParsecT CustomErr Text m) a Source #

A parser of text in some monad, with a journal as state.

type ErroringJournalParser m a = StateT Journal (ParsecT CustomErr Text (ExceptT FinalParseError m)) a Source #

A parser of text in some monad, with a journal as state, that can throw a "final" parse error that does not backtrack.

choice' :: [TextParser m a] -> TextParser m a Source #

Backtracking choice, use this when alternatives share a prefix. Consumes no input if all choices fail.

choiceInState :: [StateT s (ParsecT CustomErr Text m) a] -> StateT s (ParsecT CustomErr Text m) a Source #

Backtracking choice, use this when alternatives share a prefix. Consumes no input if all choices fail.

surroundedBy :: Applicative m => m openclose -> m a -> m a Source #

parsewith :: Parsec e Text a -> Text -> Either (ParseErrorBundle Text e) a Source #

parsewithString :: Parsec e String a -> String -> Either (ParseErrorBundle String e) a Source #

parseWithState :: Monad m => st -> StateT st (ParsecT CustomErr Text m) a -> Text -> m (Either (ParseErrorBundle Text CustomErr) a) Source #

Run a stateful parser with some initial state on a text. See also: runTextParser, runJournalParser.

parseWithState' :: Stream s => st -> StateT st (ParsecT e s Identity) a -> s -> Either (ParseErrorBundle s e) a Source #

fromparse :: (Show t, Show (Token t), Show e) => Either (ParseErrorBundle t e) a -> a Source #

parseerror :: (Show t, Show (Token t), Show e) => ParseErrorBundle t e -> a Source #

showDateParseError :: (Show t, Show (Token t), Show e) => ParseErrorBundle t e -> String Source #

nonspace :: TextParser m Char Source #

isNonNewlineSpace :: Char -> Bool Source #

spacenonewline :: (Stream s, Char ~ Token s) => ParsecT CustomErr s m Char Source #

restofline :: TextParser m String Source #

eolof :: TextParser m () Source #

# re-exports

data CustomErr Source #

A custom error type for the parser. The type is specialized to parsers of `Text` streams.

Instances

Eq CustomErr Source # |
Instance details Defined in Text.Megaparsec.Custom Methods (==) :: CustomErr -> CustomErr -> Bool Source # (/=) :: CustomErr -> CustomErr -> Bool Source #
Ord CustomErr Source # |

Instance details

Defined in Text.Megaparsec.Custom

Methods

compare :: CustomErr -> CustomErr -> Ordering Source #

(<) :: CustomErr -> CustomErr -> Bool Source #

(<=) :: CustomErr -> CustomErr -> Bool Source #

(>) :: CustomErr -> CustomErr -> Bool Source #

(>=) :: CustomErr -> CustomErr -> Bool Source #

max :: CustomErr -> CustomErr -> CustomErr Source #

min :: CustomErr -> CustomErr -> CustomErr Source #

Show CustomErr Source # |
Instance details Defined in Text.Megaparsec.Custom Methods showsPrec :: Int -> CustomErr -> ShowS Source # show :: CustomErr -> String Source # showList :: [CustomErr] -> ShowS Source #
ShowErrorComponent CustomErr Source # |
Instance details Defined in Text.Megaparsec.Custom Methods showErrorComponent :: CustomErr -> String Source # errorComponentLen :: CustomErr -> Int Source #
Ord (ParseError Text CustomErr) Source # |

Instance details

Defined in Text.Megaparsec.Custom

Methods

compare :: ParseError Text CustomErr -> ParseError Text CustomErr -> Ordering Source #

(<) :: ParseError Text CustomErr -> ParseError Text CustomErr -> Bool Source #

(<=) :: ParseError Text CustomErr -> ParseError Text CustomErr -> Bool Source #

(>) :: ParseError Text CustomErr -> ParseError Text CustomErr -> Bool Source #

(>=) :: ParseError Text CustomErr -> ParseError Text CustomErr -> Bool Source #

max :: ParseError Text CustomErr -> ParseError Text CustomErr -> ParseError Text CustomErr Source #

min :: ParseError Text CustomErr -> ParseError Text CustomErr -> ParseError Text CustomErr Source #