| Safe Haskell | Safe |
|---|---|
| Language | Haskell2010 |
Control.Egison.Core
Documentation
data Pattern a m ctx vs where Source #
Constructors
| Wildcard :: Pattern a m ctx '[] | |
| PatVar :: String -> Pattern a m ctx '[a] | |
| AndPat :: Pattern a m ctx vs -> Pattern a m (ctx :++: vs) vs' -> Pattern a m ctx (vs :++: vs') | |
| OrPat :: Pattern a m ctx vs -> Pattern a m ctx vs -> Pattern a m ctx vs | |
| NotPat :: Pattern a m ctx '[] -> Pattern a m ctx '[] | |
| PredicatePat :: (HList ctx -> a -> Bool) -> Pattern a m ctx '[] | |
| Pattern :: Matcher m => (HList ctx -> m -> a -> [MList ctx vs]) -> Pattern a m ctx vs |
Instances
| Matcher Integer Source # | |
Defined in Control.Egison.Matcher | |
| Matcher Eql Source # | |
Defined in Control.Egison.Matcher | |
| Matcher Something Source # | |
Defined in Control.Egison.Matcher | |
| Matcher a => Matcher (Set a) Source # | |
Defined in Control.Egison.Matcher | |
| Matcher a => Matcher (Multiset a) Source # | |
Defined in Control.Egison.Matcher | |
| Matcher a => Matcher (List a) Source # | |
Defined in Control.Egison.Matcher | |
| (Matcher a, Matcher b) => Matcher (Pair a b) Source # | |
Defined in Control.Egison.Matcher | |
data MatchClause a m b Source #
Constructors
| Matcher m => MatchClause (Pattern a m '[] vs) (HList vs -> b) |