| Copyright | (C) 2014 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.Num
Contents
Description
Defines and exports promoted and singleton versions of definitions from GHC.Num.
- class PNum (a :: Type) where
- class SNum a where
- type family Subtract (a :: a) (a :: a) :: a where ...
- sSubtract :: forall (t :: a) (t :: a). SNum a => Sing t -> Sing t -> Sing (Apply (Apply SubtractSym0 t) t :: a)
- data (:+$) (l :: TyFun a1627807374 (TyFun a1627807374 a1627807374 -> Type))
- data (l :: a1627807374) :+$$ (l :: TyFun a1627807374 a1627807374)
- type (:+$$$) (t :: a1627807374) (t :: a1627807374) = (:+) t t
- data (:-$) (l :: TyFun a1627807374 (TyFun a1627807374 a1627807374 -> Type))
- data (l :: a1627807374) :-$$ (l :: TyFun a1627807374 a1627807374)
- type (:-$$$) (t :: a1627807374) (t :: a1627807374) = (:-) t t
- data (:*$) (l :: TyFun a1627807374 (TyFun a1627807374 a1627807374 -> Type))
- data (l :: a1627807374) :*$$ (l :: TyFun a1627807374 a1627807374)
- type (:*$$$) (t :: a1627807374) (t :: a1627807374) = (:*) t t
- data NegateSym0 (l :: TyFun a1627807374 a1627807374)
- type NegateSym1 (t :: a1627807374) = Negate t
- data AbsSym0 (l :: TyFun a1627807374 a1627807374)
- type AbsSym1 (t :: a1627807374) = Abs t
- data SignumSym0 (l :: TyFun a1627807374 a1627807374)
- type SignumSym1 (t :: a1627807374) = Signum t
- data FromIntegerSym0 (l :: TyFun Nat a1627807374)
- type FromIntegerSym1 (t :: Nat) = FromInteger t
- data SubtractSym0 (l :: TyFun a1627809665 (TyFun a1627809665 a1627809665 -> Type))
- data SubtractSym1 (l :: a1627809665) (l :: TyFun a1627809665 a1627809665)
- type SubtractSym2 (t :: a1627809665) (t :: a1627809665) = Subtract t t
Documentation
Minimal complete definition
Methods
(%:+) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:+$) t) t :: a) infixl 6 #
(%:-) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:-$) t) t :: a) infixl 6 #
(%:*) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (:*$) t) t :: a) infixl 7 #
sNegate :: forall (t :: a). Sing t -> Sing (Apply NegateSym0 t :: a) #
sAbs :: forall (t :: a). Sing t -> Sing (Apply AbsSym0 t :: a) #
sSignum :: forall (t :: a). Sing t -> Sing (Apply SignumSym0 t :: a) #
sFromInteger :: forall (t :: Nat). Sing t -> Sing (Apply FromIntegerSym0 t :: a) #
(%:-) :: forall (t :: a) (t :: a). ((Apply (Apply (:-$) t) t :: a) ~ Apply (Apply TFHelper_1627807434Sym0 t) t) => Sing t -> Sing t -> Sing (Apply (Apply (:-$) t) t :: a) infixl 6 #
sNegate :: forall (t :: a). ((Apply NegateSym0 t :: a) ~ Apply Negate_1627807449Sym0 t) => Sing t -> Sing (Apply NegateSym0 t :: a) #
sSubtract :: forall (t :: a) (t :: a). SNum a => Sing t -> Sing t -> Sing (Apply (Apply SubtractSym0 t) t :: a) #
Defunctionalization symbols
data NegateSym0 (l :: TyFun a1627807374 a1627807374) #
Instances
| SuppressUnusedWarnings (TyFun a1627807374 a1627807374 -> *) (NegateSym0 a1627807374) # | |
| type Apply a a (NegateSym0 a) l # | |
type NegateSym1 (t :: a1627807374) = Negate t #
data SignumSym0 (l :: TyFun a1627807374 a1627807374) #
Instances
| SuppressUnusedWarnings (TyFun a1627807374 a1627807374 -> *) (SignumSym0 a1627807374) # | |
| type Apply a a (SignumSym0 a) l # | |
type SignumSym1 (t :: a1627807374) = Signum t #
data FromIntegerSym0 (l :: TyFun Nat a1627807374) #
Instances
| SuppressUnusedWarnings (TyFun Nat a1627807374 -> *) (FromIntegerSym0 a1627807374) # | |
| type Apply Nat k2 (FromIntegerSym0 k2) l # | |
type FromIntegerSym1 (t :: Nat) = FromInteger t #
data SubtractSym0 (l :: TyFun a1627809665 (TyFun a1627809665 a1627809665 -> Type)) #
Instances
| SuppressUnusedWarnings (TyFun a1627809665 (TyFun a1627809665 a1627809665 -> Type) -> *) (SubtractSym0 a1627809665) # | |
| type Apply a1627809665 (TyFun a1627809665 a1627809665 -> Type) (SubtractSym0 a1627809665) l # | |
data SubtractSym1 (l :: a1627809665) (l :: TyFun a1627809665 a1627809665) #
Instances
| SuppressUnusedWarnings (a1627809665 -> TyFun a1627809665 a1627809665 -> *) (SubtractSym1 a1627809665) # | |
| type Apply a a (SubtractSym1 a l1) l2 # | |
type SubtractSym2 (t :: a1627809665) (t :: a1627809665) = Subtract t t #