some-1.0.6: Existential type: Some

Safe Haskell | Safe
Language | Haskell2010

Data.OrdP

Synopsis

- class (EqP f, forall a. Ord (f a)) => OrdP (f :: k -> Type) where
  - comparep :: f a -> f b -> Ordering

# Documentation

class (EqP f, forall a. Ord (f a)) => OrdP (f :: k -> Type) where Source #

Heterogenous lifted total order.

This class is stronger version of `Ord1` from `base`

    class (forall a. Ord a => Ord (f a)) => Ord1 f where
        liftCompare :: (a -> b -> Ordering) -> f a -> f b -> Ordering

Since: 1.0.5

Methods

comparep :: f a -> f b -> Ordering Source #

#### Instances

Instances details

OrdP SNat Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a :: k) (b :: k). SNat a -> SNat b -> Ordering Source #
OrdP SChar Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a :: k) (b :: k). SChar a -> SChar b -> Ordering Source #
OrdP SSymbol Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a :: k) (b :: k). SSymbol a -> SSymbol b -> Ordering Source #
OrdP (Proxy :: k -> Type) Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a :: k0) (b :: k0). Proxy a -> Proxy b -> Ordering Source #
OrdP (TypeRep :: k -> Type) Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a :: k0) (b :: k0). TypeRep a -> TypeRep b -> Ordering Source #
Ord a => OrdP (Const a :: k -> Type) Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a0 :: k0) (b :: k0). Const a a0 -> Const a b -> Ordering Source #
OrdP ((:~:) a :: k -> Type) Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a0 :: k0) (b :: k0). (a :~: a0) -> (a :~: b) -> Ordering Source #
(OrdP a, OrdP b) => OrdP (Product a b :: k -> Type) Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a0 :: k0) (b0 :: k0). Product a b a0 -> Product a b b0 -> Ordering Source #
(OrdP a, OrdP b) => OrdP (Sum a b :: k -> Type) Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a0 :: k0) (b0 :: k0). Sum a b a0 -> Sum a b b0 -> Ordering Source #
OrdP ((:~~:) a :: k -> Type) Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a0 :: k0) (b :: k0). (a :~~: a0) -> (a :~~: b) -> Ordering Source #
(OrdP a, OrdP b) => OrdP (a :*: b :: k -> Type) Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a0 :: k0) (b0 :: k0). (a :*: b) a0 -> (a :*: b) b0 -> Ordering Source #
(OrdP f, OrdP g) => OrdP (f :+: g :: k -> Type) Source # |
Instance details Defined in Data.OrdP Methods comparep :: forall (a :: k0) (b :: k0). (f :+: g) a -> (f :+: g) b -> Ordering Source #