monoids-0.1.36: Monoids, specialized containers and a general map/reduce frameworkSource codeContentsIndex
Data.Ring.Semi.Ord
Stabilityexperimental
Maintainerekmett@gmail.com
Description
Turn an instance of Ord into a SemiRing over max and min
Synopsis
module Data.Ring
newtype Order a = Order {
getOrder :: a
}
data Priority a
= MinBound
| Priority a
| MaxBound
Documentation
module Data.Ring
newtype Order a Source
A SemiRing using a type's built-in Bounded instance.
Constructors
Order
getOrder :: a
show/hide Instances
Functor Order
Pointed Order
Copointed Order
(Bounded a, Ord a) => Reducer a (Order a)
Bounded a => Bounded (Order a)
Eq a => Eq (Order a)
Ord a => Ord (Order a)
Read a => Read (Order a)
Show a => Show (Order a)
(Bounded a, Ord a) => Monoid (Order a)
Arbitrary a => Arbitrary (Order a)
CoArbitrary a => CoArbitrary (Order a)
(Bounded a, Ord a) => Multiplicative (Order a)
(Bounded a, Ord a) => SemiRing (Order a)
(Bounded a, Ord a) => RightSemiNearRing (Order a)
(Bounded a, Ord a) => LeftSemiNearRing (Order a)
(Bounded a, Ord a) => Ringoid (Order a)
data Priority a Source
A SemiRing which adds minBound and maxBound to a pre-existing type.
Constructors
MinBound
Priority a
MaxBound
show/hide Instances
Functor Priority
Pointed Priority
Ord a => Reducer a (Priority a)
Bounded (Priority a)
Eq a => Eq (Priority a)
Ord a => Ord (Priority a)
Read a => Read (Priority a)
Show a => Show (Priority a)
Ord a => Monoid (Priority a)
Arbitrary a => Arbitrary (Priority a)
CoArbitrary a => CoArbitrary (Priority a)
Ord a => Multiplicative (Priority a)
Ord a => SemiRing (Priority a)
Ord a => RightSemiNearRing (Priority a)
Ord a => LeftSemiNearRing (Priority a)
Ord a => Ringoid (Priority a)
Ord a => Reducer (MinPriority a) (Priority a)
Ord a => Reducer (MaxPriority a) (Priority a)
Produced by Haddock version 2.3.0