parsec-free-3.1.11.4: Parsec API encoded as a deeply-embedded DSL, for debugging and analysis

Safe HaskellNone
LanguageHaskell2010

Text.Parsec.Free.Log

Documentation

type LogParsecT s u m a = MonadReader LogType m => ParsecT s u m a Source #

data ParseLog Source #

Constructors

ParseAttempt Bool (ParsecF s u m a) 
ParseFailed (ParsecF s u m a) 
Show b => ParseSuccess b (ParsecF s u m a) 
ParseSuccessful (ParsecF s u m a) 
Indent 
Dedent 

_ParseSuccessful :: forall s u m a. Review ParseLog (ParsecF s u m a) Source #

_ParseSuccess :: forall s u m a. forall b. Show b => Review ParseLog (b, ParsecF s u m a) Source #

_ParseFailed :: forall s u m a. Review ParseLog (ParsecF s u m a) Source #

_ParseAttempt :: forall s u m a. Review ParseLog (Bool, ParsecF s u m a) Source #

data RenderState Source #

Constructors

RenderState 

Fields

attempt :: MonadIO m => Bool -> ParsecF s u' m b -> LogParsecT s u m a -> LogParsecT s u m a Source #

attemptShow :: (MonadIO m, Show a) => Bool -> ParsecF s u' m b -> LogParsecT s u m a -> LogParsecT s u m a Source #

indented :: MonadIO m => LogParsecT s u m a -> LogParsecT s u m a Source #

evalLog :: (MonadIO m, Stream s m t) => ParsecDSL s u m a -> LogParsecT s u m a Source #

dumpLog :: MonadIO m => [ParseLog] -> m () Source #