Algebra.Enumerable
- class Enumerable a where
- universe :: [a]
- universeBounded :: (Enum a, Bounded a) => [a]
- newtype Enumerated a = Enumerated {
- unEnumerated :: a
Documentation
class Enumerable a whereSource
Finitely enumerable things
Instances
| Enumerable Bool | |
| Enumerable Int | |
| Enumerable () | |
| Enumerable a => Enumerable (Maybe a) | |
| Enumerable a => Enumerable (Enumerated a) | |
| (Enumerable a, Enumerable b) => Enumerable (Either a b) | |
| (Enumerable a, Enumerable b) => Enumerable (a, b) |
universeBounded :: (Enum a, Bounded a) => [a]Source
newtype Enumerated a Source
Wrapper used to mark where we expect to use the fact that something is Enumerable
Constructors
| Enumerated | |
Fields
| |
Instances
| Eq a => Eq (Enumerated a) | |
| Ord a => Ord (Enumerated a) | |
| Enumerable a => Enumerable (Enumerated a) | |
| (Ord a, Enumerable a) => BoundedLattice (Set (Enumerated a)) | |
| (Ord a, Enumerable a) => BoundedMeetSemiLattice (Set (Enumerated a)) | |
| (Ord a, Enumerable a) => Lattice (Set (Enumerated a)) | |
| (Ord a, Enumerable a) => MeetSemiLattice (Set (Enumerated a)) | |
| (Ord k, Enumerable k, BoundedLattice v) => BoundedLattice (Map (Enumerated k) v) | |
| (Ord k, Enumerable k, BoundedMeetSemiLattice v) => BoundedMeetSemiLattice (Map (Enumerated k) v) | |
| (Ord k, Enumerable k, Lattice v) => Lattice (Map (Enumerated k) v) | |
| (Ord k, Enumerable k, MeetSemiLattice v) => MeetSemiLattice (Map (Enumerated k) v) |