Maintainer | bastiaan.heeren@ou.nl |
---|---|
Stability | provisional |
Portability | portable (depends on ghc) |
Safe Haskell | Safe |
Language | Haskell98 |
Type classes and instances.
- class Apply t where
- apply :: Apply t => t a -> a -> Maybe a
- applicable :: Apply t => t a -> a -> Bool
- applyD :: Apply t => t a -> a -> a
- applyM :: (Apply t, Monad m) => t a -> a -> m a
- applyList :: Apply t => [t a] -> a -> Maybe a
- class Container f where
- class Arrow arr => BiArrow arr where
- class BiFunctor f where
- mapBoth :: BiFunctor f => (a -> b) -> f a a -> f b b
- class Fix a where
- class BoolValue a where
- class BoolValue a => Boolean a where
- ands :: Boolean a => [a] -> a
- ors :: Boolean a => [a] -> a
- implies :: Boolean a => a -> a -> a
- equivalent :: Boolean a => a -> a -> a
- class Buggy a where
- class Minor a where
Type class Apply
A type class for functors that can be applied to a value. Transformation, Rule, and Strategy are all instances of this type class.
applicable :: Apply t => t a -> a -> Bool Source #
Checks whether the functor is applicable (at least one result)
applyM :: (Apply t, Monad m) => t a -> a -> m a Source #
Same as apply, except that the result (at most one) is returned in some monad
Type class Container
class Container f where Source #
Instances should satisfy the following law: getSingleton . singleton == Just
Type class BiArrow
class Arrow arr => BiArrow arr where Source #
Type class for bi-directional arrows. -
should be used instead of
arr
from the arrow interface. Minimal complete definition: -
.
Type class BiFunctor
Type class Fix
Boolean Algebra
equivalent :: Boolean a => a -> a -> a Source #