| 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 |
Data.Singletons.Prelude.Ord
Contents
- 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 a1627704908 (TyFun a1627704908 Ordering -> Type))
- data CompareSym1 (l :: a1627704908) (l :: TyFun a1627704908 Ordering)
- type CompareSym2 (t :: a1627704908) (t :: a1627704908) = Compare t t
- data (:<$) (l :: TyFun a1627704908 (TyFun a1627704908 Bool -> Type))
- data (l :: a1627704908) :<$$ (l :: TyFun a1627704908 Bool)
- type (:<$$$) (t :: a1627704908) (t :: a1627704908) = (:<) t t
- data (:<=$) (l :: TyFun a1627704908 (TyFun a1627704908 Bool -> Type))
- data (l :: a1627704908) :<=$$ (l :: TyFun a1627704908 Bool)
- type (:<=$$$) (t :: a1627704908) (t :: a1627704908) = (:<=) t t
- data (:>$) (l :: TyFun a1627704908 (TyFun a1627704908 Bool -> Type))
- data (l :: a1627704908) :>$$ (l :: TyFun a1627704908 Bool)
- type (:>$$$) (t :: a1627704908) (t :: a1627704908) = (:>) t t
- data (:>=$) (l :: TyFun a1627704908 (TyFun a1627704908 Bool -> Type))
- data (l :: a1627704908) :>=$$ (l :: TyFun a1627704908 Bool)
- type (:>=$$$) (t :: a1627704908) (t :: a1627704908) = (:>=) t t
- data MaxSym0 (l :: TyFun a1627704908 (TyFun a1627704908 a1627704908 -> Type))
- data MaxSym1 (l :: a1627704908) (l :: TyFun a1627704908 a1627704908)
- type MaxSym2 (t :: a1627704908) (t :: a1627704908) = Max t t
- data MinSym0 (l :: TyFun a1627704908 (TyFun a1627704908 a1627704908 -> Type))
- data MinSym1 (l :: a1627704908) (l :: TyFun a1627704908 a1627704908)
- type MinSym2 (t :: a1627704908) (t :: a1627704908) = Min t t
- data ComparingSym0 (l :: TyFun (TyFun b1627704898 a1627704897 -> Type) (TyFun b1627704898 (TyFun b1627704898 Ordering -> Type) -> Type))
- data ComparingSym1 (l :: TyFun b1627704898 a1627704897 -> Type) (l :: TyFun b1627704898 (TyFun b1627704898 Ordering -> Type))
- data ComparingSym2 (l :: TyFun b1627704898 a1627704897 -> Type) (l :: b1627704898) (l :: TyFun b1627704898 Ordering)
- type ComparingSym3 (t :: TyFun b1627704898 a1627704897 -> Type) (t :: b1627704898) (t :: b1627704898) = Comparing t t t
Documentation
Methods
sCompare :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t :: Ordering) #
(%:<) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:<$) t) t :: Bool) infix 4 #
(%:<=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:<=$) t) t :: Bool) infix 4 #
(%:>) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:>$) t) t :: Bool) infix 4 #
(%:>=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:>=$) t) t :: Bool) infix 4 #
sMax :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t :: a) #
sMin :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t :: a) #
sCompare :: forall (t :: a) (t :: a). ((Apply (Apply CompareSym0 t) t :: Ordering) ~ Apply (Apply Compare_1627706336Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t :: Ordering) #
(%:<) :: forall (t :: a) (t :: a). ((Apply (Apply (:<$) t) t :: Bool) ~ Apply (Apply TFHelper_1627706369Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply (:<$) t) t :: Bool) infix 4 #
(%:<=) :: forall (t :: a) (t :: a). ((Apply (Apply (:<=$) t) t :: Bool) ~ Apply (Apply TFHelper_1627706402Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply (:<=$) t) t :: Bool) infix 4 #
(%:>) :: forall (t :: a) (t :: a). ((Apply (Apply (:>$) t) t :: Bool) ~ Apply (Apply TFHelper_1627706435Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply (:>$) t) t :: Bool) infix 4 #
(%:>=) :: forall (t :: a) (t :: a). ((Apply (Apply (:>=$) t) t :: Bool) ~ Apply (Apply TFHelper_1627706468Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply (:>=$) t) t :: Bool) infix 4 #
sMax :: forall (t :: a) (t :: a). ((Apply (Apply MaxSym0 t) t :: a) ~ Apply (Apply Max_1627706501Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t :: a) #
sMin :: forall (t :: a) (t :: a). ((Apply (Apply MinSym0 t) t :: a) ~ Apply (Apply Min_1627706534Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t :: a) #
Instances
| SOrd Bool # | |
| SOrd Ordering # | |
| SOrd () # | |
| (SOrd a, SOrd [a]) => SOrd [a] # | |
| SOrd a => SOrd (Maybe a) # | |
| (SOrd a, SOrd [a]) => SOrd (NonEmpty a) # | |
| (SOrd a, SOrd b) => SOrd (Either a b) # | |
| (SOrd a, SOrd b) => SOrd (a, b) # | |
| (SOrd a, SOrd b, SOrd c) => SOrd (a, b, c) # | |
| (SOrd a, SOrd b, SOrd c, SOrd d) => SOrd (a, b, c, d) # | |
| (SOrd a, SOrd b, SOrd c, SOrd d, SOrd e) => SOrd (a, b, c, d, e) # | |
| (SOrd a, SOrd b, SOrd c, SOrd d, SOrd e, SOrd f) => SOrd (a, b, c, d, e, f) # | |
| (SOrd a, SOrd b, SOrd c, SOrd d, SOrd e, SOrd f, SOrd g) => SOrd (a, b, c, d, e, f, g) # | |
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) #
sThenCmp :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply ThenCmpSym0 t) t :: Ordering) #
The singleton kind-indexed data family.
Instances
| data Sing Bool # | |
| data Sing Ordering # | |
| data Sing * # | |
| data Sing Nat # | |
| data Sing Symbol # | |
| data Sing () # | |
| data Sing [a] # | |
| data Sing (Maybe a) # | |
| data Sing (NonEmpty a) # | |
| data Sing (Either a b) # | |
| data Sing (a, b) # | |
| data Sing ((~>) k1 k2) # | |
| data Sing (a, b, c) # | |
| data Sing (a, b, c, d) # | |
| data Sing (a, b, c, d, e) # | |
| data Sing (a, b, c, d, e, f) # | |
| data Sing (a, b, c, d, e, f, g) # | |
Defunctionalization symbols
data ThenCmpSym1 (l :: Ordering) (l :: TyFun Ordering Ordering) #
Instances
| SuppressUnusedWarnings (Ordering -> TyFun Ordering Ordering -> *) ThenCmpSym1 # | |
| type Apply Ordering Ordering (ThenCmpSym1 l1) l2 # | |
type ThenCmpSym2 (t :: Ordering) (t :: Ordering) = ThenCmp t t #
data CompareSym0 (l :: TyFun a1627704908 (TyFun a1627704908 Ordering -> Type)) #
Instances
| SuppressUnusedWarnings (TyFun a1627704908 (TyFun a1627704908 Ordering -> Type) -> *) (CompareSym0 a1627704908) # | |
| type Apply a1627704908 (TyFun a1627704908 Ordering -> Type) (CompareSym0 a1627704908) l # | |
data CompareSym1 (l :: a1627704908) (l :: TyFun a1627704908 Ordering) #
Instances
| SuppressUnusedWarnings (a1627704908 -> TyFun a1627704908 Ordering -> *) (CompareSym1 a1627704908) # | |
| type Apply a Ordering (CompareSym1 a l1) l2 # | |
type CompareSym2 (t :: a1627704908) (t :: a1627704908) = Compare t t #
data ComparingSym0 (l :: TyFun (TyFun b1627704898 a1627704897 -> Type) (TyFun b1627704898 (TyFun b1627704898 Ordering -> Type) -> Type)) #
Instances
| SuppressUnusedWarnings (TyFun (TyFun b1627704898 a1627704897 -> Type) (TyFun b1627704898 (TyFun b1627704898 Ordering -> Type) -> Type) -> *) (ComparingSym0 a1627704897 b1627704898) # | |
| type Apply (TyFun b1627704898 a1627704897 -> Type) (TyFun b1627704898 (TyFun b1627704898 Ordering -> Type) -> Type) (ComparingSym0 a1627704897 b1627704898) l # | |
data ComparingSym1 (l :: TyFun b1627704898 a1627704897 -> Type) (l :: TyFun b1627704898 (TyFun b1627704898 Ordering -> Type)) #
data ComparingSym2 (l :: TyFun b1627704898 a1627704897 -> Type) (l :: b1627704898) (l :: TyFun b1627704898 Ordering) #
Instances
| SuppressUnusedWarnings ((TyFun b1627704898 a1627704897 -> Type) -> b1627704898 -> TyFun b1627704898 Ordering -> *) (ComparingSym2 a1627704897 b1627704898) # | |
| type Apply b Ordering (ComparingSym2 a b l1 l2) l3 # | |
type ComparingSym3 (t :: TyFun b1627704898 a1627704897 -> Type) (t :: b1627704898) (t :: b1627704898) = Comparing t t t #