Copyright | (C) 2013 Richard Eisenberg |
---|---|
License | BSD-style (see LICENSE) |
Maintainer | Richard Eisenberg (rae@cs.brynmawr.edu) |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
- class PEq a => POrd (a :: Type) where
- class SEq a => SOrd a where
- type family Comparing (a :: TyFun b a -> Type) (a :: b) (a :: b) :: Ordering where ...
- sComparing :: forall (t :: TyFun b a -> Type) (t :: b) (t :: b). SOrd a => Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ComparingSym0 t) t) t :: Ordering)
- thenCmp :: Ordering -> Ordering -> Ordering
- type family ThenCmp (a :: Ordering) (a :: Ordering) :: Ordering where ...
- sThenCmp :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply ThenCmpSym0 t) t :: Ordering)
- data family Sing (a :: k)
- data ThenCmpSym0 (l :: TyFun Ordering (TyFun Ordering Ordering -> Type))
- data ThenCmpSym1 (l :: Ordering) (l :: TyFun Ordering Ordering)
- type ThenCmpSym2 (t :: Ordering) (t :: Ordering) = ThenCmp t t
- type LTSym0 = LT
- type EQSym0 = EQ
- type GTSym0 = GT
- data CompareSym0 (l :: TyFun a6989586621679312550 (TyFun a6989586621679312550 Ordering -> Type))
- data CompareSym1 (l :: a6989586621679312550) (l :: TyFun a6989586621679312550 Ordering)
- type CompareSym2 (t :: a6989586621679312550) (t :: a6989586621679312550) = Compare t t
- data (:<$) (l :: TyFun a6989586621679312550 (TyFun a6989586621679312550 Bool -> Type))
- data (l :: a6989586621679312550) :<$$ (l :: TyFun a6989586621679312550 Bool)
- type (:<$$$) (t :: a6989586621679312550) (t :: a6989586621679312550) = (:<) t t
- data (:<=$) (l :: TyFun a6989586621679312550 (TyFun a6989586621679312550 Bool -> Type))
- data (l :: a6989586621679312550) :<=$$ (l :: TyFun a6989586621679312550 Bool)
- type (:<=$$$) (t :: a6989586621679312550) (t :: a6989586621679312550) = (:<=) t t
- data (:>$) (l :: TyFun a6989586621679312550 (TyFun a6989586621679312550 Bool -> Type))
- data (l :: a6989586621679312550) :>$$ (l :: TyFun a6989586621679312550 Bool)
- type (:>$$$) (t :: a6989586621679312550) (t :: a6989586621679312550) = (:>) t t
- data (:>=$) (l :: TyFun a6989586621679312550 (TyFun a6989586621679312550 Bool -> Type))
- data (l :: a6989586621679312550) :>=$$ (l :: TyFun a6989586621679312550 Bool)
- type (:>=$$$) (t :: a6989586621679312550) (t :: a6989586621679312550) = (:>=) t t
- data MaxSym0 (l :: TyFun a6989586621679312550 (TyFun a6989586621679312550 a6989586621679312550 -> Type))
- data MaxSym1 (l :: a6989586621679312550) (l :: TyFun a6989586621679312550 a6989586621679312550)
- type MaxSym2 (t :: a6989586621679312550) (t :: a6989586621679312550) = Max t t
- data MinSym0 (l :: TyFun a6989586621679312550 (TyFun a6989586621679312550 a6989586621679312550 -> Type))
- data MinSym1 (l :: a6989586621679312550) (l :: TyFun a6989586621679312550 a6989586621679312550)
- type MinSym2 (t :: a6989586621679312550) (t :: a6989586621679312550) = Min t t
- data ComparingSym0 (l :: TyFun (TyFun b6989586621679312540 a6989586621679312539 -> Type) (TyFun b6989586621679312540 (TyFun b6989586621679312540 Ordering -> Type) -> Type))
- data ComparingSym1 (l :: TyFun b6989586621679312540 a6989586621679312539 -> Type) (l :: TyFun b6989586621679312540 (TyFun b6989586621679312540 Ordering -> Type))
- data ComparingSym2 (l :: TyFun b6989586621679312540 a6989586621679312539 -> Type) (l :: b6989586621679312540) (l :: TyFun b6989586621679312540 Ordering)
- type ComparingSym3 (t :: TyFun b6989586621679312540 a6989586621679312539 -> Type) (t :: b6989586621679312540) (t :: b6989586621679312540) = Comparing t t t
Documentation
class PEq a => POrd (a :: Type) Source #
type Compare (arg :: a) (arg :: a) :: Ordering Source #
type (arg :: a) :< (arg :: a) :: Bool infix 4 Source #
type (arg :: a) :<= (arg :: a) :: Bool infix 4 Source #
type (arg :: a) :> (arg :: a) :: Bool infix 4 Source #
type (arg :: a) :>= (arg :: a) :: Bool infix 4 Source #
POrd Bool Source # | |
POrd Ordering Source # | |
POrd () Source # | |
POrd [a] Source # | |
POrd (Maybe a) Source # | |
POrd (NonEmpty a) Source # | |
POrd (Either a b) Source # | |
POrd (a, b) Source # | |
POrd (a, b, c) Source # | |
POrd (a, b, c, d) Source # | |
POrd (a, b, c, d, e) Source # | |
POrd (a, b, c, d, e, f) Source # | |
POrd (a, b, c, d, e, f, g) Source # | |
class SEq a => SOrd a where Source #
sCompare :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t :: Ordering) Source #
(%:<) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:<$) t) t :: Bool) infix 4 Source #
(%:<=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:<=$) t) t :: Bool) infix 4 Source #
(%:>) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:>$) t) t :: Bool) infix 4 Source #
(%:>=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:>=$) t) t :: Bool) infix 4 Source #
sMax :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t :: a) Source #
sMin :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t :: a) Source #
sCompare :: forall (t :: a) (t :: a). ((Apply (Apply CompareSym0 t) t :: Ordering) ~ Apply (Apply Compare_6989586621679313968Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t :: Ordering) Source #
(%:<) :: forall (t :: a) (t :: a). ((Apply (Apply (:<$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679314001Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply (:<$) t) t :: Bool) infix 4 Source #
(%:<=) :: forall (t :: a) (t :: a). ((Apply (Apply (:<=$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679314034Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply (:<=$) t) t :: Bool) infix 4 Source #
(%:>) :: forall (t :: a) (t :: a). ((Apply (Apply (:>$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679314067Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply (:>$) t) t :: Bool) infix 4 Source #
(%:>=) :: forall (t :: a) (t :: a). ((Apply (Apply (:>=$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679314100Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply (:>=$) t) t :: Bool) infix 4 Source #
sMax :: forall (t :: a) (t :: a). ((Apply (Apply MaxSym0 t) t :: a) ~ Apply (Apply Max_6989586621679314133Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t :: a) Source #
sMin :: forall (t :: a) (t :: a). ((Apply (Apply MinSym0 t) t :: a) ~ Apply (Apply Min_6989586621679314166Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t :: a) Source #
SOrd Bool Source # | |
SOrd Ordering Source # | |
SOrd () Source # | |
(SOrd a, SOrd [a]) => SOrd [a] Source # | |
SOrd a => SOrd (Maybe a) Source # | |
(SOrd a, SOrd [a]) => SOrd (NonEmpty a) Source # | |
(SOrd a, SOrd b) => SOrd (Either a b) Source # | |
(SOrd a, SOrd b) => SOrd (a, b) Source # | |
(SOrd a, SOrd b, SOrd c) => SOrd (a, b, c) Source # | |
(SOrd a, SOrd b, SOrd c, SOrd d) => SOrd (a, b, c, d) Source # | |
(SOrd a, SOrd b, SOrd c, SOrd d, SOrd e) => SOrd (a, b, c, d, e) Source # | |
(SOrd a, SOrd b, SOrd c, SOrd d, SOrd e, SOrd f) => SOrd (a, b, c, d, e, f) Source # | |
(SOrd a, SOrd b, SOrd c, SOrd d, SOrd e, SOrd f, SOrd g) => SOrd (a, b, c, d, e, f, g) Source # | |
sComparing :: forall (t :: TyFun b a -> Type) (t :: b) (t :: b). SOrd a => Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ComparingSym0 t) t) t :: Ordering) Source #
sThenCmp :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply ThenCmpSym0 t) t :: Ordering) Source #
data family Sing (a :: k) Source #
The singleton kind-indexed data family.
data Sing Bool Source # | |
data Sing Ordering Source # | |
data Sing * Source # | |
data Sing Nat Source # | |
data Sing Symbol Source # | |
data Sing () Source # | |
data Sing [a] Source # | |
data Sing (Maybe a) Source # | |
data Sing (NonEmpty a) Source # | |
data Sing (Either a b) Source # | |
data Sing (a, b) Source # | |
data Sing ((~>) k1 k2) Source # | |
data Sing (a, b, c) Source # | |
data Sing (a, b, c, d) Source # | |
data Sing (a, b, c, d, e) Source # | |
data Sing (a, b, c, d, e, f) Source # | |
data Sing (a, b, c, d, e, f, g) Source # | |
Defunctionalization symbols
data ThenCmpSym1 (l :: Ordering) (l :: TyFun Ordering Ordering) Source #
SuppressUnusedWarnings (Ordering -> TyFun Ordering Ordering -> *) ThenCmpSym1 Source # | |
type Apply Ordering Ordering (ThenCmpSym1 l1) l2 Source # | |
data CompareSym0 (l :: TyFun a6989586621679312550 (TyFun a6989586621679312550 Ordering -> Type)) Source #
data CompareSym1 (l :: a6989586621679312550) (l :: TyFun a6989586621679312550 Ordering) Source #
SuppressUnusedWarnings (a6989586621679312550 -> TyFun a6989586621679312550 Ordering -> *) (CompareSym1 a6989586621679312550) Source # | |
type Apply a Ordering (CompareSym1 a l1) l2 Source # | |
type CompareSym2 (t :: a6989586621679312550) (t :: a6989586621679312550) = Compare t t Source #
data MaxSym0 (l :: TyFun a6989586621679312550 (TyFun a6989586621679312550 a6989586621679312550 -> Type)) Source #
data MaxSym1 (l :: a6989586621679312550) (l :: TyFun a6989586621679312550 a6989586621679312550) Source #
data MinSym0 (l :: TyFun a6989586621679312550 (TyFun a6989586621679312550 a6989586621679312550 -> Type)) Source #
data MinSym1 (l :: a6989586621679312550) (l :: TyFun a6989586621679312550 a6989586621679312550) Source #
data ComparingSym0 (l :: TyFun (TyFun b6989586621679312540 a6989586621679312539 -> Type) (TyFun b6989586621679312540 (TyFun b6989586621679312540 Ordering -> Type) -> Type)) Source #
SuppressUnusedWarnings (TyFun (TyFun b6989586621679312540 a6989586621679312539 -> Type) (TyFun b6989586621679312540 (TyFun b6989586621679312540 Ordering -> Type) -> Type) -> *) (ComparingSym0 a6989586621679312539 b6989586621679312540) Source # | |
type Apply (TyFun b6989586621679312540 a6989586621679312539 -> Type) (TyFun b6989586621679312540 (TyFun b6989586621679312540 Ordering -> Type) -> Type) (ComparingSym0 a6989586621679312539 b6989586621679312540) l Source # | |
data ComparingSym1 (l :: TyFun b6989586621679312540 a6989586621679312539 -> Type) (l :: TyFun b6989586621679312540 (TyFun b6989586621679312540 Ordering -> Type)) Source #
SuppressUnusedWarnings ((TyFun b6989586621679312540 a6989586621679312539 -> Type) -> TyFun b6989586621679312540 (TyFun b6989586621679312540 Ordering -> Type) -> *) (ComparingSym1 a6989586621679312539 b6989586621679312540) Source # | |
type Apply b6989586621679312540 (TyFun b6989586621679312540 Ordering -> Type) (ComparingSym1 a6989586621679312539 b6989586621679312540 l1) l2 Source # | |
data ComparingSym2 (l :: TyFun b6989586621679312540 a6989586621679312539 -> Type) (l :: b6989586621679312540) (l :: TyFun b6989586621679312540 Ordering) Source #
SuppressUnusedWarnings ((TyFun b6989586621679312540 a6989586621679312539 -> Type) -> b6989586621679312540 -> TyFun b6989586621679312540 Ordering -> *) (ComparingSym2 a6989586621679312539 b6989586621679312540) Source # | |
type Apply b Ordering (ComparingSym2 a b l1 l2) l3 Source # | |