Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Common pattern functors (and instances for them).
Documentation
Isomorphic to 'Maybe (a, b)', it’s also the pattern functor for lists.
Instances
Bifunctor XNor Source # | |
Functor (XNor a) Source # | |
Foldable (XNor a) Source # | |
Defined in Yaya.Pattern fold :: Monoid m => XNor a m -> m # foldMap :: Monoid m => (a0 -> m) -> XNor a a0 -> m # foldMap' :: Monoid m => (a0 -> m) -> XNor a a0 -> m # foldr :: (a0 -> b -> b) -> b -> XNor a a0 -> b # foldr' :: (a0 -> b -> b) -> b -> XNor a a0 -> b # foldl :: (b -> a0 -> b) -> b -> XNor a a0 -> b # foldl' :: (b -> a0 -> b) -> b -> XNor a a0 -> b # foldr1 :: (a0 -> a0 -> a0) -> XNor a a0 -> a0 # foldl1 :: (a0 -> a0 -> a0) -> XNor a a0 -> a0 # elem :: Eq a0 => a0 -> XNor a a0 -> Bool # maximum :: Ord a0 => XNor a a0 -> a0 # minimum :: Ord a0 => XNor a a0 -> a0 # | |
Traversable (XNor a) Source # | |
Corecursive ((->) :: Type -> Type -> Type) ([a] :: Type) (XNor a :: Type -> Type) Source # | |
Projectable ((->) :: Type -> Type -> Type) ([a] :: Type) (XNor a :: Type -> Type) Source # | |
Steppable ((->) :: Type -> Type -> Type) ([a] :: Type) (XNor a :: Type -> Type) Source # | |
Isomorphic to `(a, Maybe b)`, it’s also the pattern functor for non-empty lists.
Instances
Bifunctor AndMaybe Source # | |
Functor (AndMaybe a) Source # | |
Foldable (AndMaybe a) Source # | |
Defined in Yaya.Pattern fold :: Monoid m => AndMaybe a m -> m # foldMap :: Monoid m => (a0 -> m) -> AndMaybe a a0 -> m # foldMap' :: Monoid m => (a0 -> m) -> AndMaybe a a0 -> m # foldr :: (a0 -> b -> b) -> b -> AndMaybe a a0 -> b # foldr' :: (a0 -> b -> b) -> b -> AndMaybe a a0 -> b # foldl :: (b -> a0 -> b) -> b -> AndMaybe a a0 -> b # foldl' :: (b -> a0 -> b) -> b -> AndMaybe a a0 -> b # foldr1 :: (a0 -> a0 -> a0) -> AndMaybe a a0 -> a0 # foldl1 :: (a0 -> a0 -> a0) -> AndMaybe a a0 -> a0 # toList :: AndMaybe a a0 -> [a0] # null :: AndMaybe a a0 -> Bool # length :: AndMaybe a a0 -> Int # elem :: Eq a0 => a0 -> AndMaybe a a0 -> Bool # maximum :: Ord a0 => AndMaybe a a0 -> a0 # minimum :: Ord a0 => AndMaybe a a0 -> a0 # | |
Traversable (AndMaybe a) Source # | |
Defined in Yaya.Pattern | |
Corecursive ((->) :: Type -> Type -> Type) (NonEmpty a :: Type) (AndMaybe a :: Type -> Type) Source # | |
Projectable ((->) :: Type -> Type -> Type) (NonEmpty a :: Type) (AndMaybe a :: Type -> Type) Source # | |
Steppable ((->) :: Type -> Type -> Type) (NonEmpty a :: Type) (AndMaybe a :: Type -> Type) Source # | |