| Stability | experimental |
|---|---|
| Safe Haskell | None |
| Language | Haskell2010 |
Control.Egison.Matcher
Description
This module defines a class for matchers and some basic matchers.
Documentation
Class for matchers. denotes that Matcher m tgtm is a matcher for tgt.
Instances
| Matcher Something (a :: k) Source # | |
Defined in Control.Egison.Matcher | |
| Eq a => Matcher Eql (a :: Type) Source # | |
Defined in Control.Egison.Matcher | |
| Matcher m t => Matcher (Set m :: Type) ([t] :: Type) Source # | |
Defined in Control.Egison.Matcher.Collection | |
| Matcher m t => Matcher (Multiset m :: Type) ([t] :: Type) Source # | |
Defined in Control.Egison.Matcher.Collection | |
| Matcher m t => Matcher (List m :: Type) ([t] :: Type) Source # | |
Defined in Control.Egison.Matcher.Collection | |
| (Matcher m1 t1, Matcher m2 t2) => Matcher (Pair m1 m2 :: Type) ((t1, t2) :: Type) Source # | |
Defined in Control.Egison.Matcher.Pair | |
Matcher that handles pattern variables and wildcards for arbitrary types.
Constructors
| Something |
Instances
| Matcher Something (a :: k) Source # | |
Defined in Control.Egison.Matcher | |
class Eq t => ValuePattern m t where Source #
Minimal complete definition
Nothing
Methods
value :: t -> Pattern () m t () Source #
value :: Eq t => t -> Pattern () m t () Source #
Instances
| Eq a => ValuePattern Eql a Source # | |
| (Eq a, Matcher m a, ValuePattern m a) => ValuePattern (Set m) [a] Source # | |
| (Eq a, Matcher m a, ValuePattern m a) => ValuePattern (Multiset m) [a] Source # | |
| (Eq a, Matcher m a, ValuePattern m a) => ValuePattern (List m) [a] Source # | |
| (Eq a1, Matcher m1 a1, ValuePattern m1 a1, Eq a2, Matcher m2 a2, ValuePattern m2 a2) => ValuePattern (Pair m1 m2) (a1, a2) Source # | |