Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Documentation
MatchErrType !SexpType | |
MatchErrTypeAtom | |
MatchErrTypeQuote | |
MatchErrTypeUnquote | |
MatchErrTypeDoc | |
MatchErrNotEq !Atom | |
MatchErrListElem !Int | |
MatchErrListRem | |
MatchErrAlt !(Seq (Text, r)) | |
MatchErrEmbed !e |
Instances
(Typeable e, Show e, Typeable r, Show r) => Exception (MatchErr e r) Source # | |
Defined in Mello.Match toException :: MatchErr e r -> SomeException # fromException :: SomeException -> Maybe (MatchErr e r) # displayException :: MatchErr e r -> String # | |
(Show r, Show e) => Show (MatchErr e r) Source # | |
(Eq r, Eq e) => Eq (MatchErr e r) Source # | |
(Ord r, Ord e) => Ord (MatchErr e r) Source # | |
Defined in Mello.Match |
newtype LocMatchErr e k Source #
LocMatchErr | |
|
Instances
Instances
MonadError x m => MonadError x (MatchT e k m) Source # | |
Defined in Mello.Match throwError :: x -> MatchT e k m a # catchError :: MatchT e k m a -> (x -> MatchT e k m a) -> MatchT e k m a # | |
MonadReader r m => MonadReader r (MatchT e k m) Source # | |
MonadState s m => MonadState s (MatchT e k m) Source # | |
MonadTrans (MatchT e k) Source # | |
Defined in Mello.Match | |
Monad m => Applicative (MatchT e k m) Source # | |
Defined in Mello.Match | |
Functor m => Functor (MatchT e k m) Source # | |
Monad m => Monad (MatchT e k m) Source # | |
data SeqMatchT e k m a Source #
Instances
Monad m => Applicative (SeqMatchT e k m) Source # | |
Defined in Mello.Match pure :: a -> SeqMatchT e k m a # (<*>) :: SeqMatchT e k m (a -> b) -> SeqMatchT e k m a -> SeqMatchT e k m b # liftA2 :: (a -> b -> c) -> SeqMatchT e k m a -> SeqMatchT e k m b -> SeqMatchT e k m c # (*>) :: SeqMatchT e k m a -> SeqMatchT e k m b -> SeqMatchT e k m b # (<*) :: SeqMatchT e k m a -> SeqMatchT e k m b -> SeqMatchT e k m a # | |
Functor m => Functor (SeqMatchT e k m) Source # | |
Monad m => Monad (SeqMatchT e k m) Source # | |
matchM :: Monad m => (SexpF (Memo SexpF k) -> Either (MatchErr e (LocMatchErr e k)) a) -> MatchT e k m a Source #
lookM :: Monad m => Brace -> [(Text, MatchT e k m (), SeqMatchT e k m a)] -> MatchT e k m a Source #
remainingM :: SeqMatchT e k m Int Source #
class Monad m => MatchSexp e k m a where Source #
Instances
Monad m => MatchSexp e k m Atom Source # | |
Monad m => MatchSexp e k m Sexp Source # | |
Monad m => MatchSexp e k m Sym Source # | |
Monad m => MatchSexp e k m Scientific Source # | |
Defined in Mello.Match matchSexp :: MatchT e k m Scientific Source # | |
Monad m => MatchSexp e k m Text Source # | |
Monad m => MatchSexp e k m Integer Source # | |
Monad m => MatchSexp e k m Char Source # | |
MatchSexp e k m s => MatchSexp e k m (Anno k s) Source # | |
Monad m => MatchSexp e k m (Memo SexpF k) Source # | |
fromAnnoSexpT :: MatchSexp e k m a => Memo SexpF k -> m (Either (LocMatchErr e k) a) Source #
fromAnnoSexp :: MatchSexp e k Identity a => Memo SexpF k -> Either (LocMatchErr e k) a Source #