backend-0.1.0.0
Safe HaskellNone
LanguageHaskell2010

Language.Ltml.Tree.Parser

Synopsis

Documentation

data TreeParser a Source #

Instances

Instances details
MonadTreeParser TreeParser Source # 
Instance details

Defined in Language.Ltml.Tree.Parser

MonadFail TreeParser Source # 
Instance details

Defined in Language.Ltml.Tree.Parser

Methods

fail :: String -> TreeParser a #

Applicative TreeParser Source # 
Instance details

Defined in Language.Ltml.Tree.Parser

Methods

pure :: a -> TreeParser a #

(<*>) :: TreeParser (a -> b) -> TreeParser a -> TreeParser b #

liftA2 :: (a -> b -> c) -> TreeParser a -> TreeParser b -> TreeParser c #

(*>) :: TreeParser a -> TreeParser b -> TreeParser b #

(<*) :: TreeParser a -> TreeParser b -> TreeParser a #

Functor TreeParser Source # 
Instance details

Defined in Language.Ltml.Tree.Parser

Methods

fmap :: (a -> b) -> TreeParser a -> TreeParser b #

(<$) :: a -> TreeParser b -> TreeParser a #

Monad TreeParser Source # 
Instance details

Defined in Language.Ltml.Tree.Parser

Methods

(>>=) :: TreeParser a -> (a -> TreeParser b) -> TreeParser b #

(>>) :: TreeParser a -> TreeParser b -> TreeParser b #

return :: a -> TreeParser a #

class MonadFail m => MonadTreeParser (m :: Type -> Type) where Source #

Methods

treeParser :: Either TreeError a -> m a Source #

Instances

Instances details
MonadTreeParser TreeParser Source # 
Instance details

Defined in Language.Ltml.Tree.Parser

MonadTreeParser m => MonadTreeParser (FootnoteWriterT m) Source # 
Instance details

Defined in Language.Ltml.Tree.Parser

newtype TreeError Source #

An error that occurred parsing a tree's structure (not input text). The frontend should prohibit such errors, and thus treat such errors as internal / as bugs.

Constructors

TreeError String 

Instances

Instances details
Show TreeError Source # 
Instance details

Defined in Language.Ltml.Tree.Parser

flaggedTreePF :: (MonadTreeParser m, ProperNodeKind t) => (t -> Tree flag a b -> m c) -> t -> FlaggedTree flag a b -> m (Flagged flag c) Source #

nFlaggedTreePF :: (MonadTreeParser m, RawProperNodeKind t) => (t -> Tree flag a b -> m c) -> NamedType t -> FlaggedTree flag a b -> m (Flagged flag c) Source #

disjFlaggedTreePF :: (MonadTreeParser m, ProperNodeKind t) => (t -> Tree flag a b -> m c) -> Disjunction t -> FlaggedTree flag a b -> m (Flagged flag c) Source #

disjNFlaggedTreePF :: (MonadTreeParser m, RawProperNodeKind t) => (t -> Tree flag a b -> m c) -> Disjunction (NamedType t) -> FlaggedTree flag a b -> m (Flagged flag c) Source #