Copyright | (C) 2013 Richard Eisenberg |
---|---|
License | BSD-style (see LICENSE) |
Maintainer | Ryan Scott |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
This module contains everything you need to derive your own singletons via
Template Haskell, exporting both Template Haskell functionality and
definitions that are likely to be mentioned in promoted or singled code.
For a version of this module that only contains the Template Haskell
functionality and nothing else, see Data.Singletons.TH from the
singletons-th
library.
Synopsis
- singletons :: OptionsMonad q => q [Dec] -> q [Dec]
- singletonsOnly :: OptionsMonad q => q [Dec] -> q [Dec]
- genSingletons :: OptionsMonad q => [Name] -> q [Dec]
- promote :: OptionsMonad q => q [Dec] -> q [Dec]
- promoteOnly :: OptionsMonad q => q [Dec] -> q [Dec]
- genDefunSymbols :: OptionsMonad q => [Name] -> q [Dec]
- genPromotions :: OptionsMonad q => [Name] -> q [Dec]
- promoteEqInstances :: OptionsMonad q => [Name] -> q [Dec]
- promoteEqInstance :: OptionsMonad q => Name -> q [Dec]
- singEqInstances :: OptionsMonad q => [Name] -> q [Dec]
- singEqInstance :: OptionsMonad q => Name -> q [Dec]
- singDecideInstances :: OptionsMonad q => [Name] -> q [Dec]
- singDecideInstance :: OptionsMonad q => Name -> q [Dec]
- promoteOrdInstances :: OptionsMonad q => [Name] -> q [Dec]
- promoteOrdInstance :: OptionsMonad q => Name -> q [Dec]
- singOrdInstances :: OptionsMonad q => [Name] -> q [Dec]
- singOrdInstance :: OptionsMonad q => Name -> q [Dec]
- promoteBoundedInstances :: OptionsMonad q => [Name] -> q [Dec]
- promoteBoundedInstance :: OptionsMonad q => Name -> q [Dec]
- singBoundedInstances :: OptionsMonad q => [Name] -> q [Dec]
- singBoundedInstance :: OptionsMonad q => Name -> q [Dec]
- promoteEnumInstances :: OptionsMonad q => [Name] -> q [Dec]
- promoteEnumInstance :: OptionsMonad q => Name -> q [Dec]
- singEnumInstances :: OptionsMonad q => [Name] -> q [Dec]
- singEnumInstance :: OptionsMonad q => Name -> q [Dec]
- promoteShowInstances :: OptionsMonad q => [Name] -> q [Dec]
- promoteShowInstance :: OptionsMonad q => Name -> q [Dec]
- singShowInstances :: OptionsMonad q => [Name] -> q [Dec]
- singShowInstance :: OptionsMonad q => Name -> q [Dec]
- showSingInstances :: OptionsMonad q => [Name] -> q [Dec]
- showSingInstance :: OptionsMonad q => Name -> q [Dec]
- singITyConInstances :: DsMonad q => [Int] -> q [Dec]
- singITyConInstance :: DsMonad q => Int -> q Dec
- cases :: DsMonad q => Name -> q Exp -> q Exp -> q Exp
- sCases :: OptionsMonad q => Name -> q Exp -> q Exp -> q Exp
- data SList :: forall (a :: Type). [a] -> Type where
- data SBool :: Bool -> Type where
- data STuple0 :: () -> Type where
- data STuple2 :: forall (a :: Type) (b :: Type). (a, b) -> Type where
- data STuple3 :: forall (a :: Type) (b :: Type) (c :: Type). (a, b, c) -> Type where
- data STuple4 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type). (a, b, c, d) -> Type where
- data STuple5 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type). (a, b, c, d, e) -> Type where
- data STuple6 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type) (f :: Type). (a, b, c, d, e, f) -> Type where
- STuple6 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type) (f :: Type) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e) (n :: f). (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> STuple6 ('(n, n, n, n, n, n) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type))
- data STuple7 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type) (f :: Type) (g :: Type). (a, b, c, d, e, f, g) -> Type where
- STuple7 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type) (f :: Type) (g :: Type) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e) (n :: f) (n :: g). (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> STuple7 ('(n, n, n, n, n, n, n) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type))
- data SOrdering :: Ordering -> Type where
- module Data.Singletons
- class PEq a where
- type family If (cond :: Bool) (tru :: k) (fls :: k) :: k where ...
- sIf :: Sing a -> Sing b -> Sing c -> Sing (If a b c)
- type family (a :: Bool) && (b :: Bool) :: Bool where ...
- (%&&) :: Sing a -> Sing b -> Sing (a && b)
- class SEq a where
- class POrd a where
- class SEq a => SOrd a where
- 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)
- (%<=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t :: Bool)
- (%>) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t :: Bool)
- (%>=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t :: Bool)
- 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)
- 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)
- class SDecide k where
- data (a :: k) :~: (b :: k) where
- data Void
- type Refuted a = a -> Void
- data Decision a
- class PBounded a where
- class SBounded a where
- sMinBound :: Sing (MinBoundSym0 :: a)
- sMaxBound :: Sing (MaxBoundSym0 :: a)
- class PEnum a where
- class SEnum a where
- class PShow a where
- class SShow a where
- sShowsPrec :: forall (t :: Nat) (t :: a) (t :: Symbol). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ShowsPrecSym0 t) t) t :: Symbol)
- sShow_ :: forall (t :: a). Sing t -> Sing (Apply Show_Sym0 t :: Symbol)
- sShowList :: forall (t :: [a]) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply ShowListSym0 t) t :: Symbol)
- class PIsString a where
- type FromString (arg :: Symbol) :: a
- class SIsString a where
- sFromString :: forall (t :: Symbol). Sing t -> Sing (Apply FromStringSym0 t :: a)
- type family ShowString (a :: Symbol) (a :: Symbol) :: Symbol where ...
- sShowString :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply ShowStringSym0 t) t :: Symbol)
- type family ShowParen (a :: Bool) (a :: (~>) Symbol Symbol) (a :: Symbol) :: Symbol where ...
- sShowParen :: forall (t :: Bool) (t :: (~>) Symbol Symbol) (t :: Symbol). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ShowParenSym0 t) t) t :: Symbol)
- type family ShowSpace (a :: Symbol) :: Symbol where ...
- sShowSpace :: forall (t :: Symbol). Sing t -> Sing (Apply ShowSpaceSym0 t :: Symbol)
- type family ShowChar (a :: Symbol) (a :: Symbol) :: Symbol where ...
- sShowChar :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply ShowCharSym0 t) t :: Symbol)
- type family ShowCommaSpace (a :: Symbol) :: Symbol where ...
- sShowCommaSpace :: forall (t :: Symbol). Sing t -> Sing (Apply ShowCommaSpaceSym0 t :: Symbol)
- type family FromInteger (arg :: Nat) :: a
- sFromInteger :: forall (t :: Nat). SNum a => Sing t -> Sing (Apply FromIntegerSym0 t :: a)
- type family Negate (arg :: a) :: a
- sNegate :: forall (t :: a). SNum a => Sing t -> Sing (Apply NegateSym0 t :: a)
- class PFunctor f where
- class SFunctor f where
- class PFoldable t where
- type Fold (arg :: t m) :: m
- type FoldMap (arg :: (~>) a m) (arg :: t a) :: m
- type Foldr (arg :: (~>) a ((~>) b b)) (arg :: b) (arg :: t a) :: b
- type Foldr' (arg :: (~>) a ((~>) b b)) (arg :: b) (arg :: t a) :: b
- type Foldl (arg :: (~>) b ((~>) a b)) (arg :: b) (arg :: t a) :: b
- type Foldl' (arg :: (~>) b ((~>) a b)) (arg :: b) (arg :: t a) :: b
- type Foldr1 (arg :: (~>) a ((~>) a a)) (arg :: t a) :: a
- type Foldl1 (arg :: (~>) a ((~>) a a)) (arg :: t a) :: a
- type ToList (arg :: t a) :: [a]
- type Null (arg :: t a) :: Bool
- type Length (arg :: t a) :: Nat
- type Elem (arg :: a) (arg :: t a) :: Bool
- type Maximum (arg :: t a) :: a
- type Minimum (arg :: t a) :: a
- type Sum (arg :: t a) :: a
- type Product (arg :: t a) :: a
- class SFoldable t where
- sFold :: forall m (t :: t m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t :: m)
- sFoldMap :: forall a m (t :: (~>) a m) (t :: t a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t :: m)
- sFoldr :: forall a b (t :: (~>) a ((~>) b b)) (t :: b) (t :: t a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t :: b)
- sFoldr' :: forall a b (t :: (~>) a ((~>) b b)) (t :: b) (t :: t a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t :: b)
- sFoldl :: forall b a (t :: (~>) b ((~>) a b)) (t :: b) (t :: t a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t :: b)
- sFoldl' :: forall b a (t :: (~>) b ((~>) a b)) (t :: b) (t :: t a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t :: b)
- sFoldr1 :: forall a (t :: (~>) a ((~>) a a)) (t :: t a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t :: a)
- sFoldl1 :: forall a (t :: (~>) a ((~>) a a)) (t :: t a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t :: a)
- sToList :: forall a (t :: t a). Sing t -> Sing (Apply ToListSym0 t :: [a])
- sNull :: forall a (t :: t a). Sing t -> Sing (Apply NullSym0 t :: Bool)
- sLength :: forall a (t :: t a). Sing t -> Sing (Apply LengthSym0 t :: Nat)
- sElem :: forall a (t :: a) (t :: t a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t :: Bool)
- sMaximum :: forall a (t :: t a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t :: a)
- sMinimum :: forall a (t :: t a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t :: a)
- sSum :: forall a (t :: t a). SNum a => Sing t -> Sing (Apply SumSym0 t :: a)
- sProduct :: forall a (t :: t a). SNum a => Sing t -> Sing (Apply ProductSym0 t :: a)
- class PMonoid a where
- class SSemigroup a => SMonoid a where
- sMempty :: Sing (MemptySym0 :: a)
- sMappend :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply MappendSym0 t) t :: a)
- sMconcat :: forall (t :: [a]). Sing t -> Sing (Apply MconcatSym0 t :: a)
- class PTraversable t where
- class (SFunctor t, SFoldable t) => STraversable t where
- sTraverse :: forall a f b (t :: (~>) a (f b)) (t :: t a). SApplicative f => Sing t -> Sing t -> Sing (Apply (Apply TraverseSym0 t) t :: f (t b))
- sSequenceA :: forall f a (t :: t (f a)). SApplicative f => Sing t -> Sing (Apply SequenceASym0 t :: f (t a))
- sMapM :: forall a m b (t :: (~>) a (m b)) (t :: t a). SMonad m => Sing t -> Sing t -> Sing (Apply (Apply MapMSym0 t) t :: m (t b))
- sSequence :: forall m a (t :: t (m a)). SMonad m => Sing t -> Sing (Apply SequenceSym0 t :: m (t a))
- class PApplicative f where
- class SFunctor f => SApplicative f where
- sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t :: f a)
- (%<*>) :: forall a b (t :: f ((~>) a b)) (t :: f a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t :: f b)
- sLiftA2 :: forall a b c (t :: (~>) a ((~>) b c)) (t :: f a) (t :: f b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t :: f c)
- (%*>) :: forall a b (t :: f a) (t :: f b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t :: f b)
- (%<*) :: forall a b (t :: f a) (t :: f b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t :: f a)
- type family ((a :: (~>) b c) . (a :: (~>) a b)) (a :: a) :: c where ...
- (%.) :: forall b c a (t :: (~>) b c) (t :: (~>) a b) (t :: a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply (.@#@$) t) t) t :: c)
- type family Error (str :: k0) :: k where ...
- sError :: HasCallStack => Sing (str :: Symbol) -> a
- data ErrorSym0 :: (~>) k0 k
- type family ErrorSym1 (a6989586621679518606 :: k0) :: k where ...
- type family Undefined :: k where ...
- sUndefined :: HasCallStack => a
- type family UndefinedSym0 :: k where ...
- type family TrueSym0 :: Bool where ...
- type family FalseSym0 :: Bool where ...
- data (==@#@$) :: (~>) a ((~>) a Bool)
- data (==@#@$$) (a6989586621679131004 :: a) :: (~>) a Bool
- type family (a6989586621679131004 :: a) ==@#@$$$ (a6989586621679131005 :: a) :: Bool where ...
- data (>@#@$) :: (~>) a ((~>) a Bool)
- data (>@#@$$) (a6989586621679170750 :: a) :: (~>) a Bool
- type family (a6989586621679170750 :: a) >@#@$$$ (a6989586621679170751 :: a) :: Bool where ...
- data IfSym0 :: (~>) Bool ((~>) k ((~>) k k))
- data IfSym1 (a6989586621679126966 :: Bool) :: (~>) k ((~>) k k)
- data IfSym2 (a6989586621679126966 :: Bool) (a6989586621679126967 :: k) :: (~>) k k
- type family IfSym3 (a6989586621679126966 :: Bool) (a6989586621679126967 :: k) (a6989586621679126968 :: k) :: k where ...
- data (&&@#@$) :: (~>) Bool ((~>) Bool Bool)
- data (&&@#@$$) (a6989586621679126062 :: Bool) :: (~>) Bool Bool
- type family (a6989586621679126062 :: Bool) &&@#@$$$ (a6989586621679126063 :: Bool) :: Bool where ...
- type family LTSym0 :: Ordering where ...
- type family EQSym0 :: Ordering where ...
- type family GTSym0 :: Ordering where ...
- type family Tuple0Sym0 :: () where ...
- data Tuple2Sym0 :: (~>) a ((~>) b (a :: Type, b :: Type))
- data Tuple2Sym1 (a6989586621679042302 :: a) :: (~>) b (a :: Type, b :: Type)
- type family Tuple2Sym2 (a6989586621679042302 :: a) (a6989586621679042303 :: b) :: (a :: Type, b :: Type) where ...
- data Tuple3Sym0 :: (~>) a ((~>) b ((~>) c (a :: Type, b :: Type, c :: Type)))
- data Tuple3Sym1 (a6989586621679042332 :: a) :: (~>) b ((~>) c (a :: Type, b :: Type, c :: Type))
- data Tuple3Sym2 (a6989586621679042332 :: a) (a6989586621679042333 :: b) :: (~>) c (a :: Type, b :: Type, c :: Type)
- type family Tuple3Sym3 (a6989586621679042332 :: a) (a6989586621679042333 :: b) (a6989586621679042334 :: c) :: (a :: Type, b :: Type, c :: Type) where ...
- data Tuple4Sym0 :: (~>) a ((~>) b ((~>) c ((~>) d (a :: Type, b :: Type, c :: Type, d :: Type))))
- data Tuple4Sym1 (a6989586621679042377 :: a) :: (~>) b ((~>) c ((~>) d (a :: Type, b :: Type, c :: Type, d :: Type)))
- data Tuple4Sym2 (a6989586621679042377 :: a) (a6989586621679042378 :: b) :: (~>) c ((~>) d (a :: Type, b :: Type, c :: Type, d :: Type))
- data Tuple4Sym3 (a6989586621679042377 :: a) (a6989586621679042378 :: b) (a6989586621679042379 :: c) :: (~>) d (a :: Type, b :: Type, c :: Type, d :: Type)
- type family Tuple4Sym4 (a6989586621679042377 :: a) (a6989586621679042378 :: b) (a6989586621679042379 :: c) (a6989586621679042380 :: d) :: (a :: Type, b :: Type, c :: Type, d :: Type) where ...
- data Tuple5Sym0 :: (~>) a ((~>) b ((~>) c ((~>) d ((~>) e (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type)))))
- data Tuple5Sym1 (a6989586621679042439 :: a) :: (~>) b ((~>) c ((~>) d ((~>) e (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type))))
- data Tuple5Sym2 (a6989586621679042439 :: a) (a6989586621679042440 :: b) :: (~>) c ((~>) d ((~>) e (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type)))
- data Tuple5Sym3 (a6989586621679042439 :: a) (a6989586621679042440 :: b) (a6989586621679042441 :: c) :: (~>) d ((~>) e (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type))
- data Tuple5Sym4 (a6989586621679042439 :: a) (a6989586621679042440 :: b) (a6989586621679042441 :: c) (a6989586621679042442 :: d) :: (~>) e (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type)
- type family Tuple5Sym5 (a6989586621679042439 :: a) (a6989586621679042440 :: b) (a6989586621679042441 :: c) (a6989586621679042442 :: d) (a6989586621679042443 :: e) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type) where ...
- data Tuple6Sym0 :: (~>) a ((~>) b ((~>) c ((~>) d ((~>) e ((~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type))))))
- data Tuple6Sym1 (a6989586621679042520 :: a) :: (~>) b ((~>) c ((~>) d ((~>) e ((~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type)))))
- data Tuple6Sym2 (a6989586621679042520 :: a) (a6989586621679042521 :: b) :: (~>) c ((~>) d ((~>) e ((~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type))))
- data Tuple6Sym3 (a6989586621679042520 :: a) (a6989586621679042521 :: b) (a6989586621679042522 :: c) :: (~>) d ((~>) e ((~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type)))
- data Tuple6Sym4 (a6989586621679042520 :: a) (a6989586621679042521 :: b) (a6989586621679042522 :: c) (a6989586621679042523 :: d) :: (~>) e ((~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type))
- data Tuple6Sym5 (a6989586621679042520 :: a) (a6989586621679042521 :: b) (a6989586621679042522 :: c) (a6989586621679042523 :: d) (a6989586621679042524 :: e) :: (~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type)
- type family Tuple6Sym6 (a6989586621679042520 :: a) (a6989586621679042521 :: b) (a6989586621679042522 :: c) (a6989586621679042523 :: d) (a6989586621679042524 :: e) (a6989586621679042525 :: f) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type) where ...
- data Tuple7Sym0 :: (~>) a ((~>) b ((~>) c ((~>) d ((~>) e ((~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type)))))))
- data Tuple7Sym1 (a6989586621679042622 :: a) :: (~>) b ((~>) c ((~>) d ((~>) e ((~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type))))))
- data Tuple7Sym2 (a6989586621679042622 :: a) (a6989586621679042623 :: b) :: (~>) c ((~>) d ((~>) e ((~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type)))))
- data Tuple7Sym3 (a6989586621679042622 :: a) (a6989586621679042623 :: b) (a6989586621679042624 :: c) :: (~>) d ((~>) e ((~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type))))
- data Tuple7Sym4 (a6989586621679042622 :: a) (a6989586621679042623 :: b) (a6989586621679042624 :: c) (a6989586621679042625 :: d) :: (~>) e ((~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type)))
- data Tuple7Sym5 (a6989586621679042622 :: a) (a6989586621679042623 :: b) (a6989586621679042624 :: c) (a6989586621679042625 :: d) (a6989586621679042626 :: e) :: (~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type))
- data Tuple7Sym6 (a6989586621679042622 :: a) (a6989586621679042623 :: b) (a6989586621679042624 :: c) (a6989586621679042625 :: d) (a6989586621679042626 :: e) (a6989586621679042627 :: f) :: (~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type)
- type family Tuple7Sym7 (a6989586621679042622 :: a) (a6989586621679042623 :: b) (a6989586621679042624 :: c) (a6989586621679042625 :: d) (a6989586621679042626 :: e) (a6989586621679042627 :: f) (a6989586621679042628 :: g) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type) where ...
- data CompareSym0 :: (~>) a ((~>) a Ordering)
- data CompareSym1 (a6989586621679170735 :: a) :: (~>) a Ordering
- type family CompareSym2 (a6989586621679170735 :: a) (a6989586621679170736 :: a) :: Ordering where ...
- data ThenCmpSym0 :: (~>) Ordering ((~>) Ordering Ordering)
- data ThenCmpSym1 (a6989586621679170719 :: Ordering) :: (~>) Ordering Ordering
- type family ThenCmpSym2 (a6989586621679170719 :: Ordering) (a6989586621679170720 :: Ordering) :: Ordering where ...
- data FoldlSym0 :: (~>) ((~>) b ((~>) a b)) ((~>) b ((~>) (t a) b))
- data FoldlSym1 (a6989586621680367299 :: (~>) b ((~>) a b)) :: (~>) b ((~>) (t a) b)
- data FoldlSym2 (a6989586621680367299 :: (~>) b ((~>) a b)) (a6989586621680367300 :: b) :: (~>) (t a) b
- type family FoldlSym3 (a6989586621680367299 :: (~>) b ((~>) a b)) (a6989586621680367300 :: b) (a6989586621680367301 :: t a) :: b where ...
- type family MinBoundSym0 :: a where ...
- type family MaxBoundSym0 :: a where ...
- data ShowsPrecSym0 :: (~>) Nat ((~>) a ((~>) Symbol Symbol))
- data ShowsPrecSym1 (a6989586621680196507 :: Nat) :: (~>) a ((~>) Symbol Symbol)
- data ShowsPrecSym2 (a6989586621680196507 :: Nat) (a6989586621680196508 :: a) :: (~>) Symbol Symbol
- type family ShowsPrecSym3 (a6989586621680196507 :: Nat) (a6989586621680196508 :: a) (a6989586621680196509 :: Symbol) :: Symbol where ...
- data ShowStringSym0 :: (~>) Symbol ((~>) Symbol Symbol)
- data ShowStringSym1 (a6989586621680196462 :: Symbol) :: (~>) Symbol Symbol
- type family ShowStringSym2 (a6989586621680196462 :: Symbol) (a6989586621680196463 :: Symbol) :: Symbol where ...
- data ShowParenSym0 :: (~>) Bool ((~>) ((~>) Symbol Symbol) ((~>) Symbol Symbol))
- data ShowParenSym1 (a6989586621680196446 :: Bool) :: (~>) ((~>) Symbol Symbol) ((~>) Symbol Symbol)
- data ShowParenSym2 (a6989586621680196446 :: Bool) (a6989586621680196447 :: (~>) Symbol Symbol) :: (~>) Symbol Symbol
- data ShowSpaceSym0 :: (~>) Symbol Symbol
- type family ShowSpaceSym1 (a6989586621680196434 :: Symbol) :: Symbol where ...
- data ShowCharSym0 :: (~>) Symbol ((~>) Symbol Symbol)
- data ShowCharSym1 (a6989586621680196473 :: Symbol) :: (~>) Symbol Symbol
- type family ShowCharSym2 (a6989586621680196473 :: Symbol) (a6989586621680196474 :: Symbol) :: Symbol where ...
- data ShowCommaSpaceSym0 :: (~>) Symbol Symbol
- type family ShowCommaSpaceSym1 (a6989586621680196428 :: Symbol) :: Symbol where ...
- data FromIntegerSym0 :: (~>) Nat a
- type family FromIntegerSym1 (a6989586621679550152 :: Nat) :: a where ...
- data NegateSym0 :: (~>) a a
- type family NegateSym1 (a6989586621679550143 :: a) :: a where ...
- data FromStringSym0 :: (~>) Symbol a
- type family FromStringSym1 (a6989586621681219672 :: Symbol) :: a where ...
- data FmapSym0 :: (~>) ((~>) a b) ((~>) (f a) (f b))
- data FmapSym1 (a6989586621679319155 :: (~>) a b) :: (~>) (f a) (f b)
- type family FmapSym2 (a6989586621679319155 :: (~>) a b) (a6989586621679319156 :: f a) :: f b where ...
- data (<$@#@$) :: (~>) a ((~>) (f b) (f a))
- data (<$@#@$$) (a6989586621679319160 :: a) :: (~>) (f b) (f a)
- type family (a6989586621679319160 :: a) <$@#@$$$ (a6989586621679319161 :: f b) :: f a where ...
- data FoldMapSym0 :: (~>) ((~>) a m) ((~>) (t a) m)
- data FoldMapSym1 (a6989586621680367279 :: (~>) a m) :: (~>) (t a) m
- type family FoldMapSym2 (a6989586621680367279 :: (~>) a m) (a6989586621680367280 :: t a) :: m where ...
- type family MemptySym0 :: a where ...
- data MappendSym0 :: (~>) a ((~>) a a)
- data MappendSym1 (a6989586621680267906 :: a) :: (~>) a a
- type family MappendSym2 (a6989586621680267906 :: a) (a6989586621680267907 :: a) :: a where ...
- data FoldrSym0 :: (~>) ((~>) a ((~>) b b)) ((~>) b ((~>) (t a) b))
- data FoldrSym1 (a6989586621680367285 :: (~>) a ((~>) b b)) :: (~>) b ((~>) (t a) b)
- data FoldrSym2 (a6989586621680367285 :: (~>) a ((~>) b b)) (a6989586621680367286 :: b) :: (~>) (t a) b
- type family FoldrSym3 (a6989586621680367285 :: (~>) a ((~>) b b)) (a6989586621680367286 :: b) (a6989586621680367287 :: t a) :: b where ...
- data TraverseSym0 :: (~>) ((~>) a (f b)) ((~>) (t a) (f (t b)))
- data TraverseSym1 (a6989586621680721206 :: (~>) a (f b)) :: (~>) (t a) (f (t b))
- type family TraverseSym2 (a6989586621680721206 :: (~>) a (f b)) (a6989586621680721207 :: t a) :: f (t b) where ...
- data PureSym0 :: (~>) a (f a)
- type family PureSym1 (a6989586621679319179 :: a) :: f a where ...
- data (<*>@#@$) :: (~>) (f ((~>) a b)) ((~>) (f a) (f b))
- data (<*>@#@$$) (a6989586621679319183 :: f ((~>) a b)) :: (~>) (f a) (f b)
- type family (a6989586621679319183 :: f ((~>) a b)) <*>@#@$$$ (a6989586621679319184 :: f a) :: f b where ...
- data LiftA2Sym0 :: (~>) ((~>) a ((~>) b c)) ((~>) (f a) ((~>) (f b) (f c)))
- data LiftA2Sym1 (a6989586621679319189 :: (~>) a ((~>) b c)) :: (~>) (f a) ((~>) (f b) (f c))
- data LiftA2Sym2 (a6989586621679319189 :: (~>) a ((~>) b c)) (a6989586621679319190 :: f a) :: (~>) (f b) (f c)
- type family LiftA2Sym3 (a6989586621679319189 :: (~>) a ((~>) b c)) (a6989586621679319190 :: f a) (a6989586621679319191 :: f b) :: f c where ...
- data (.@#@$) :: (~>) ((~>) b c) ((~>) ((~>) a b) ((~>) a c))
- data (.@#@$$) (a6989586621679274056 :: (~>) b c) :: (~>) ((~>) a b) ((~>) a c)
- data (a6989586621679274056 :: (~>) b c) .@#@$$$ (a6989586621679274057 :: (~>) a b) :: (~>) a c
- type family ((a6989586621679274056 :: (~>) b c) .@#@$$$$ (a6989586621679274057 :: (~>) a b)) (a6989586621679274058 :: a) :: c where ...
- type family NilSym0 :: [a :: Type] where ...
- data (:@#@$) :: (~>) a ((~>) [a] [a :: Type])
- data (:@#@$$) (a6989586621679041825 :: a) :: (~>) [a] [a :: Type]
- type family (a6989586621679041825 :: a) :@#@$$$ (a6989586621679041826 :: [a]) :: [a :: Type] where ...
- class SuppressUnusedWarnings (t :: k) where
- suppressUnusedWarnings :: ()
Primary Template Haskell generation functions
singletons :: OptionsMonad q => q [Dec] -> q [Dec] #
Make promoted and singled versions of all declarations given, retaining
the original declarations. See the
README
for further explanation.
singletonsOnly :: OptionsMonad q => q [Dec] -> q [Dec] #
Make promoted and singled versions of all declarations given, discarding the original declarations. Note that a singleton based on a datatype needs the original datatype, so this will fail if it sees any datatype declarations. Classes, instances, and functions are all fine.
genSingletons :: OptionsMonad q => [Name] -> q [Dec] #
Generate singled definitions for each of the provided type-level
declaration Name
s. For example, the singletons-th package itself uses
$(genSingletons [''Bool, ''Maybe, ''Either, ''[]])
to generate singletons for Prelude types.
promote :: OptionsMonad q => q [Dec] -> q [Dec] #
Promote every declaration given to the type level, retaining the originals.
See the
README
for further explanation.
promoteOnly :: OptionsMonad q => q [Dec] -> q [Dec] #
Promote each declaration, discarding the originals. Note that a promoted datatype uses the same definition as an original datatype, so this will not work with datatypes. Classes, instances, and functions are all fine.
genDefunSymbols :: OptionsMonad q => [Name] -> q [Dec] #
genPromotions :: OptionsMonad q => [Name] -> q [Dec] #
Generate promoted definitions for each of the provided type-level
declaration Name
s. This is generally only useful with classes.
Functions to generate equality instances
promoteEqInstances :: OptionsMonad q => [Name] -> q [Dec] #
Produce instances for PEq
from the given types
promoteEqInstance :: OptionsMonad q => Name -> q [Dec] #
Produce an instance for PEq
from the given type
singEqInstances :: OptionsMonad q => [Name] -> q [Dec] #
Create instances of SEq
for the given types
singEqInstance :: OptionsMonad q => Name -> q [Dec] #
Create instance of SEq
for the given type
singDecideInstances :: OptionsMonad q => [Name] -> q [Dec] #
Create instances of SDecide
, TestEquality
, and TestCoercion
for each
type in the list.
singDecideInstance :: OptionsMonad q => Name -> q [Dec] #
Create instances of SDecide
, TestEquality
, and TestCoercion
for the
given type.
Functions to generate Ord
instances
promoteOrdInstances :: OptionsMonad q => [Name] -> q [Dec] #
Produce instances for POrd
from the given types
promoteOrdInstance :: OptionsMonad q => Name -> q [Dec] #
Produce an instance for POrd
from the given type
singOrdInstances :: OptionsMonad q => [Name] -> q [Dec] #
Create instances of SOrd
for the given types
singOrdInstance :: OptionsMonad q => Name -> q [Dec] #
Create instance of SOrd
for the given type
Functions to generate Bounded
instances
promoteBoundedInstances :: OptionsMonad q => [Name] -> q [Dec] #
Produce instances for PBounded
from the given types
promoteBoundedInstance :: OptionsMonad q => Name -> q [Dec] #
Produce an instance for PBounded
from the given type
singBoundedInstances :: OptionsMonad q => [Name] -> q [Dec] #
Create instances of SBounded
for the given types
singBoundedInstance :: OptionsMonad q => Name -> q [Dec] #
Create instance of SBounded
for the given type
Functions to generate Enum
instances
promoteEnumInstances :: OptionsMonad q => [Name] -> q [Dec] #
Produce instances for PEnum
from the given types
promoteEnumInstance :: OptionsMonad q => Name -> q [Dec] #
Produce an instance for PEnum
from the given type
singEnumInstances :: OptionsMonad q => [Name] -> q [Dec] #
Create instances of SEnum
for the given types
singEnumInstance :: OptionsMonad q => Name -> q [Dec] #
Create instance of SEnum
for the given type
Functions to generate Show
instances
promoteShowInstances :: OptionsMonad q => [Name] -> q [Dec] #
Produce instances for PShow
from the given types
promoteShowInstance :: OptionsMonad q => Name -> q [Dec] #
Produce an instance for PShow
from the given type
singShowInstances :: OptionsMonad q => [Name] -> q [Dec] #
Create instances of SShow
for the given types
(Not to be confused with showSingInstances
.)
singShowInstance :: OptionsMonad q => Name -> q [Dec] #
Create instance of SShow
for the given type
(Not to be confused with showShowInstance
.)
showSingInstances :: OptionsMonad q => [Name] -> q [Dec] #
Create instances of Show
for the given singleton types
(Not to be confused with singShowInstances
.)
showSingInstance :: OptionsMonad q => Name -> q [Dec] #
Create instance of Show
for the given singleton type
(Not to be confused with singShowInstance
.)
Utility functions
singITyConInstances :: DsMonad q => [Int] -> q [Dec] #
Create an instance for
, where SingI
TyCon{N}N
is the positive
number provided as an argument.
Note that the generated code requires the use of the QuantifiedConstraints
language extension.
singITyConInstance :: DsMonad q => Int -> q Dec #
Create an instance for
, where SingI
TyCon{N}N
is the positive
number provided as an argument.
Note that the generated code requires the use of the QuantifiedConstraints
language extension.
:: DsMonad q | |
=> Name | The head of the type of the scrutinee. (Like |
-> q Exp | The scrutinee, in a Template Haskell quote |
-> q Exp | The body, in a Template Haskell quote |
-> q Exp |
The function cases
generates a case expression where each right-hand side
is identical. This may be useful if the type-checker requires knowledge of which
constructor is used to satisfy equality or type-class constraints, but where
each constructor is treated the same.
:: OptionsMonad q | |
=> Name | The head of the type the scrutinee's type is based on.
(Like |
-> q Exp | The scrutinee, in a Template Haskell quote |
-> q Exp | The body, in a Template Haskell quote |
-> q Exp |
The function sCases
generates a case expression where each right-hand side
is identical. This may be useful if the type-checker requires knowledge of which
constructor is used to satisfy equality or type-class constraints, but where
each constructor is treated the same. For sCases
, unlike cases
, the
scrutinee is a singleton. But make sure to pass in the name of the original
datatype, preferring ''Maybe
over ''SMaybe
.
Basic singleton definitions
data SList :: forall (a :: Type). [a] -> Type where Source #
SNil :: forall (a :: Type). SList ('[] :: [a :: Type]) | |
SCons :: forall (a :: Type) (n :: a) (n :: [a]). (Sing n) -> (Sing n) -> SList ('(:) n n :: [a :: Type]) infixr 5 |
data SBool :: Bool -> Type where Source #
Instances
TestCoercion SBool Source # | |
Defined in Data.Singletons.Base.Instances | |
TestEquality SBool Source # | |
Defined in Data.Singletons.Base.Instances | |
Show (SBool z) Source # | |
data STuple0 :: () -> Type where Source #
Instances
TestCoercion STuple0 Source # | |
Defined in Data.Singletons.Base.Instances | |
TestEquality STuple0 Source # | |
Defined in Data.Singletons.Base.Instances | |
Show (STuple0 z) Source # | |
data STuple2 :: forall (a :: Type) (b :: Type). (a, b) -> Type where Source #
STuple2 :: forall (a :: Type) (b :: Type) (n :: a) (n :: b). (Sing n) -> (Sing n) -> STuple2 ('(n, n) :: (a :: Type, b :: Type)) |
data STuple3 :: forall (a :: Type) (b :: Type) (c :: Type). (a, b, c) -> Type where Source #
STuple3 :: forall (a :: Type) (b :: Type) (c :: Type) (n :: a) (n :: b) (n :: c). (Sing n) -> (Sing n) -> (Sing n) -> STuple3 ('(n, n, n) :: (a :: Type, b :: Type, c :: Type)) |
Instances
(SDecide a, SDecide b, SDecide c) => TestCoercion (STuple3 :: (a, b, c) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
(SDecide a, SDecide b, SDecide c) => TestEquality (STuple3 :: (a, b, c) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
(ShowSing a, ShowSing b, ShowSing c) => Show (STuple3 z) Source # | |
data STuple4 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type). (a, b, c, d) -> Type where Source #
STuple4 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (n :: a) (n :: b) (n :: c) (n :: d). (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> STuple4 ('(n, n, n, n) :: (a :: Type, b :: Type, c :: Type, d :: Type)) |
Instances
(SDecide a, SDecide b, SDecide c, SDecide d) => TestCoercion (STuple4 :: (a, b, c, d) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
(SDecide a, SDecide b, SDecide c, SDecide d) => TestEquality (STuple4 :: (a, b, c, d) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
(ShowSing a, ShowSing b, ShowSing c, ShowSing d) => Show (STuple4 z) Source # | |
data STuple5 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type). (a, b, c, d, e) -> Type where Source #
STuple5 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e). (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> STuple5 ('(n, n, n, n, n) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type)) |
Instances
(SDecide a, SDecide b, SDecide c, SDecide d, SDecide e) => TestCoercion (STuple5 :: (a, b, c, d, e) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
(SDecide a, SDecide b, SDecide c, SDecide d, SDecide e) => TestEquality (STuple5 :: (a, b, c, d, e) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
(ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e) => Show (STuple5 z) Source # | |
data STuple6 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type) (f :: Type). (a, b, c, d, e, f) -> Type where Source #
STuple6 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type) (f :: Type) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e) (n :: f). (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> STuple6 ('(n, n, n, n, n, n) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type)) |
Instances
(SDecide a, SDecide b, SDecide c, SDecide d, SDecide e, SDecide f) => TestCoercion (STuple6 :: (a, b, c, d, e, f) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
(SDecide a, SDecide b, SDecide c, SDecide d, SDecide e, SDecide f) => TestEquality (STuple6 :: (a, b, c, d, e, f) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
(ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e, ShowSing f) => Show (STuple6 z) Source # | |
data STuple7 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type) (f :: Type) (g :: Type). (a, b, c, d, e, f, g) -> Type where Source #
STuple7 :: forall (a :: Type) (b :: Type) (c :: Type) (d :: Type) (e :: Type) (f :: Type) (g :: Type) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e) (n :: f) (n :: g). (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> (Sing n) -> STuple7 ('(n, n, n, n, n, n, n) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type)) |
Instances
(SDecide a, SDecide b, SDecide c, SDecide d, SDecide e, SDecide f, SDecide g) => TestCoercion (STuple7 :: (a, b, c, d, e, f, g) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
(SDecide a, SDecide b, SDecide c, SDecide d, SDecide e, SDecide f, SDecide g) => TestEquality (STuple7 :: (a, b, c, d, e, f, g) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
(ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e, ShowSing f, ShowSing g) => Show (STuple7 z) Source # | |
data SOrdering :: Ordering -> Type where Source #
SLT :: SOrdering ('LT :: Ordering) | |
SEQ :: SOrdering ('EQ :: Ordering) | |
SGT :: SOrdering ('GT :: Ordering) |
Instances
TestCoercion SOrdering Source # | |
Defined in Data.Singletons.Base.Instances | |
TestEquality SOrdering Source # | |
Defined in Data.Singletons.Base.Instances | |
Show (SOrdering z) Source # | |
module Data.Singletons
Auxiliary definitions
These definitions might be mentioned in code generated by Template Haskell, so they must be in scope.
Instances
PEq Bool Source # | |
PEq Ordering Source # | |
PEq Nat Source # | |
PEq Symbol Source # | |
PEq () Source # | |
PEq Void Source # | |
PEq All Source # | |
PEq Any Source # | |
PEq [a] Source # | |
PEq (Maybe a) Source # | |
PEq (TYPE rep) Source # | |
PEq (Min a) Source # | |
PEq (Max a) Source # | |
PEq (First a) Source # | |
PEq (Last a) Source # | |
PEq (WrappedMonoid m) Source # | |
PEq (Identity a) Source # | |
PEq (First a) Source # | |
PEq (Last a) Source # | |
PEq (Dual a) Source # | |
PEq (Sum a) Source # | |
PEq (Product a) Source # | |
PEq (Down a) Source # | |
PEq (NonEmpty a) Source # | |
PEq (Either a b) Source # | |
PEq (a, b) Source # | |
PEq (Arg a b) Source # | |
PEq (Proxy s) Source # | |
PEq (a, b, c) Source # | |
PEq (Const a b) Source # | |
PEq (a, b, c, d) Source # | |
PEq (a, b, c, d, e) Source # | |
PEq (a, b, c, d, e, f) Source # | |
PEq (a, b, c, d, e, f, g) Source # | |
type family If (cond :: Bool) (tru :: k) (fls :: k) :: k where ... #
Type-level If. If True a b
==> a
; If False a b
==> b
Nothing
(%==) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (==@#@$) t) t :: Bool) infix 4 Source #
default (%==) :: forall (t :: a) (t :: a). (Apply (Apply (==@#@$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679131024Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (==@#@$) t) t :: Bool) Source #
(%/=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (/=@#@$) t) t :: Bool) infix 4 Source #
Instances
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 #
Instances
POrd Bool Source # | |
POrd Ordering Source # | |
POrd Nat Source # | |
POrd Symbol Source # | |
POrd () Source # | |
POrd Void Source # | |
POrd All Source # | |
POrd Any Source # | |
POrd [a] Source # | |
POrd (Maybe a) Source # | |
POrd (Min a) Source # | |
POrd (Max a) Source # | |
POrd (First a) Source # | |
POrd (Last a) Source # | |
POrd (WrappedMonoid m) Source # | |
POrd (Identity a) Source # | |
POrd (First a) Source # | |
POrd (Last a) Source # | |
POrd (Dual a) Source # | |
POrd (Sum a) Source # | |
POrd (Product a) Source # | |
POrd (Down a) Source # | |
POrd (NonEmpty a) Source # | |
POrd (Either a b) Source # | |
POrd (a, b) Source # | |
POrd (Arg a b) Source # | |
POrd (Proxy s) Source # | |
POrd (a, b, c) Source # | |
POrd (Const a b) 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 #
Nothing
sCompare :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t :: Ordering) Source #
default sCompare :: forall (t :: a) (t :: a). (Apply (Apply CompareSym0 t) t :: Ordering) ~ Apply (Apply Compare_6989586621679170769Sym0 t) t => 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 #
default (%<) :: forall (t :: a) (t :: a). (Apply (Apply (<@#@$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679170790Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t :: Bool) Source #
(%<=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t :: Bool) infix 4 Source #
default (%<=) :: forall (t :: a) (t :: a). (Apply (Apply (<=@#@$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679170806Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t :: Bool) Source #
(%>) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t :: Bool) infix 4 Source #
default (%>) :: forall (t :: a) (t :: a). (Apply (Apply (>@#@$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679170822Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t :: Bool) Source #
(%>=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t :: Bool) infix 4 Source #
default (%>=) :: forall (t :: a) (t :: a). (Apply (Apply (>=@#@$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679170838Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t :: Bool) Source #
sMax :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t :: a) Source #
default sMax :: forall (t :: a) (t :: a). (Apply (Apply MaxSym0 t) t :: a) ~ Apply (Apply Max_6989586621679170854Sym0 t) t => 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 #
Instances
SOrd Bool Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: Bool) (t :: Bool). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Bool) (t :: Bool). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Bool) (t :: Bool). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Bool) (t :: Bool). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Bool) (t :: Bool). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Bool) (t :: Bool). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Bool) (t :: Bool). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd Ordering Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd Nat Source # | |
Defined in GHC.TypeLits.Singletons.Internal sCompare :: forall (t :: Nat) (t :: Nat). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Nat) (t :: Nat). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Nat) (t :: Nat). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Nat) (t :: Nat). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Nat) (t :: Nat). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Nat) (t :: Nat). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Nat) (t :: Nat). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd Symbol Source # | |
Defined in GHC.TypeLits.Singletons.Internal sCompare :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd () Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: ()) (t :: ()). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: ()) (t :: ()). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: ()) (t :: ()). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: ()) (t :: ()). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: ()) (t :: ()). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: ()) (t :: ()). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: ()) (t :: ()). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd Void Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd Bool => SOrd All Source # | |
Defined in Data.Semigroup.Singletons.Internal sCompare :: forall (t :: All) (t :: All). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: All) (t :: All). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: All) (t :: All). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: All) (t :: All). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: All) (t :: All). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: All) (t :: All). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: All) (t :: All). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd Bool => SOrd Any Source # | |
Defined in Data.Semigroup.Singletons.Internal sCompare :: forall (t :: Any) (t :: Any). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Any) (t :: Any). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Any) (t :: Any). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Any) (t :: Any). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Any) (t :: Any). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Any) (t :: Any). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Any) (t :: Any). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
(SOrd a, SOrd [a]) => SOrd [a] Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: [a]) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: [a]) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: [a]) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: [a]) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: [a]) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: [a]) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: [a]) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Maybe a) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: Maybe a) (t :: Maybe a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Maybe a) (t :: Maybe a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Maybe a) (t :: Maybe a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Maybe a) (t :: Maybe a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Maybe a) (t :: Maybe a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Maybe a) (t :: Maybe a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Maybe a) (t :: Maybe a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Min a) Source # | |
Defined in Data.Semigroup.Singletons.Internal sCompare :: forall (t :: Min a) (t :: Min a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Min a) (t :: Min a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Min a) (t :: Min a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Min a) (t :: Min a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Min a) (t :: Min a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Min a) (t :: Min a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Min a) (t :: Min a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Max a) Source # | |
Defined in Data.Semigroup.Singletons.Internal sCompare :: forall (t :: Max a) (t :: Max a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Max a) (t :: Max a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Max a) (t :: Max a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Max a) (t :: Max a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Max a) (t :: Max a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Max a) (t :: Max a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Max a) (t :: Max a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (First a) Source # | |
Defined in Data.Semigroup.Singletons.Internal sCompare :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Last a) Source # | |
Defined in Data.Semigroup.Singletons.Internal sCompare :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd m => SOrd (WrappedMonoid m) Source # | |
Defined in Data.Semigroup.Singletons.Internal sCompare :: forall (t :: WrappedMonoid m) (t :: WrappedMonoid m). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: WrappedMonoid m) (t :: WrappedMonoid m). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: WrappedMonoid m) (t :: WrappedMonoid m). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: WrappedMonoid m) (t :: WrappedMonoid m). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: WrappedMonoid m) (t :: WrappedMonoid m). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: WrappedMonoid m) (t :: WrappedMonoid m). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: WrappedMonoid m) (t :: WrappedMonoid m). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Identity a) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: Identity a) (t :: Identity a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Identity a) (t :: Identity a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Identity a) (t :: Identity a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Identity a) (t :: Identity a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Identity a) (t :: Identity a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Identity a) (t :: Identity a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Identity a) (t :: Identity a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd (Maybe a) => SOrd (First a) Source # | |
Defined in Data.Monoid.Singletons sCompare :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: First a) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd (Maybe a) => SOrd (Last a) Source # | |
Defined in Data.Monoid.Singletons sCompare :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Last a) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Dual a) Source # | |
Defined in Data.Semigroup.Singletons.Internal sCompare :: forall (t :: Dual a) (t :: Dual a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Dual a) (t :: Dual a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Dual a) (t :: Dual a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Dual a) (t :: Dual a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Dual a) (t :: Dual a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Dual a) (t :: Dual a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Dual a) (t :: Dual a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Sum a) Source # | |
Defined in Data.Semigroup.Singletons.Internal sCompare :: forall (t :: Sum a) (t :: Sum a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Sum a) (t :: Sum a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Sum a) (t :: Sum a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Sum a) (t :: Sum a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Sum a) (t :: Sum a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Sum a) (t :: Sum a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Sum a) (t :: Sum a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Product a) Source # | |
Defined in Data.Semigroup.Singletons.Internal sCompare :: forall (t :: Product a) (t :: Product a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Product a) (t :: Product a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Product a) (t :: Product a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Product a) (t :: Product a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Product a) (t :: Product a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Product a) (t :: Product a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Product a) (t :: Product a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Down a) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: Down a) (t :: Down a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Down a) (t :: Down a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Down a) (t :: Down a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Down a) (t :: Down a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Down a) (t :: Down a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Down a) (t :: Down a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Down a) (t :: Down a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
(SOrd a, SOrd [a]) => SOrd (NonEmpty a) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: NonEmpty a) (t :: NonEmpty a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: NonEmpty a) (t :: NonEmpty a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: NonEmpty a) (t :: NonEmpty a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: NonEmpty a) (t :: NonEmpty a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: NonEmpty a) (t :: NonEmpty a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: NonEmpty a) (t :: NonEmpty a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: NonEmpty a) (t :: NonEmpty a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
(SOrd a, SOrd b) => SOrd (Either a b) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: Either a b) (t :: Either a b). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Either a b) (t :: Either a b). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Either a b) (t :: Either a b). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Either a b) (t :: Either a b). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Either a b) (t :: Either a b). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Either a b) (t :: Either a b). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Either a b) (t :: Either a b). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
(SOrd a, SOrd b) => SOrd (a, b) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: (a, b)) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: (a, b)) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: (a, b)) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: (a, b)) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: (a, b)) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: (a, b)) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: (a, b)) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Arg a b) Source # | |
Defined in Data.Semigroup.Singletons sCompare :: forall (t :: Arg a b) (t :: Arg a b). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Arg a b) (t :: Arg a b). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Arg a b) (t :: Arg a b). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Arg a b) (t :: Arg a b). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Arg a b) (t :: Arg a b). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Arg a b) (t :: Arg a b). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Arg a b) (t :: Arg a b). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd (Proxy s) Source # | |
Defined in Data.Proxy.Singletons sCompare :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Proxy s) (t :: Proxy s). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
(SOrd a, SOrd b, SOrd c) => SOrd (a, b, c) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: (a, b, c)) (t :: (a, b, c)). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: (a, b, c)) (t :: (a, b, c)). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: (a, b, c)) (t :: (a, b, c)). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: (a, b, c)) (t :: (a, b, c)). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: (a, b, c)) (t :: (a, b, c)). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: (a, b, c)) (t :: (a, b, c)). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: (a, b, c)) (t :: (a, b, c)). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
SOrd a => SOrd (Const a b) Source # | |
Defined in Data.Functor.Const.Singletons sCompare :: forall (t :: Const a b) (t :: Const a b). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Const a b) (t :: Const a b). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Const a b) (t :: Const a b). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Const a b) (t :: Const a b). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Const a b) (t :: Const a b). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Const a b) (t :: Const a b). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Const a b) (t :: Const a b). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
(SOrd a, SOrd b, SOrd c, SOrd d) => SOrd (a, b, c, d) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: (a, b, c, d)) (t :: (a, b, c, d)). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: (a, b, c, d)) (t :: (a, b, c, d)). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: (a, b, c, d)) (t :: (a, b, c, d)). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: (a, b, c, d)) (t :: (a, b, c, d)). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: (a, b, c, d)) (t :: (a, b, c, d)). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: (a, b, c, d)) (t :: (a, b, c, d)). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: (a, b, c, d)) (t :: (a, b, c, d)). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
(SOrd a, SOrd b, SOrd c, SOrd d, SOrd e) => SOrd (a, b, c, d, e) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: (a, b, c, d, e)) (t :: (a, b, c, d, e)). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: (a, b, c, d, e)) (t :: (a, b, c, d, e)). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: (a, b, c, d, e)) (t :: (a, b, c, d, e)). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: (a, b, c, d, e)) (t :: (a, b, c, d, e)). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: (a, b, c, d, e)) (t :: (a, b, c, d, e)). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: (a, b, c, d, e)) (t :: (a, b, c, d, e)). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: (a, b, c, d, e)) (t :: (a, b, c, d, e)). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
(SOrd a, SOrd b, SOrd c, SOrd d, SOrd e, SOrd f) => SOrd (a, b, c, d, e, f) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: (a, b, c, d, e, f)) (t :: (a, b, c, d, e, f)). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: (a, b, c, d, e, f)) (t :: (a, b, c, d, e, f)). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: (a, b, c, d, e, f)) (t :: (a, b, c, d, e, f)). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: (a, b, c, d, e, f)) (t :: (a, b, c, d, e, f)). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: (a, b, c, d, e, f)) (t :: (a, b, c, d, e, f)). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: (a, b, c, d, e, f)) (t :: (a, b, c, d, e, f)). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: (a, b, c, d, e, f)) (t :: (a, b, c, d, e, f)). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
(SOrd a, SOrd b, SOrd c, SOrd d, SOrd e, SOrd f, SOrd g) => SOrd (a, b, c, d, e, f, g) Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: (a, b, c, d, e, f, g)) (t :: (a, b, c, d, e, f, g)). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: (a, b, c, d, e, f, g)) (t :: (a, b, c, d, e, f, g)). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: (a, b, c, d, e, f, g)) (t :: (a, b, c, d, e, f, g)). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: (a, b, c, d, e, f, g)) (t :: (a, b, c, d, e, f, g)). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: (a, b, c, d, e, f, g)) (t :: (a, b, c, d, e, f, g)). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: (a, b, c, d, e, f, g)) (t :: (a, b, c, d, e, f, g)). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: (a, b, c, d, e, f, g)) (t :: (a, b, c, d, e, f, g)). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # |
sThenCmp :: forall (t :: Ordering) (t :: Ordering). Sing t -> Sing t -> Sing (Apply (Apply ThenCmpSym0 t) t :: Ordering) Source #
Members of the SDecide
"kind" class support decidable equality. Instances
of this class are generated alongside singleton definitions for datatypes that
derive an Eq
instance.
(%~) :: forall (a :: k) (b :: k). Sing a -> Sing b -> Decision (a :~: b) infix 4 #
Compute a proof or disproof of equality, given two singletons.
Instances
data (a :: k) :~: (b :: k) where infix 4 #
Propositional equality. If a :~: b
is inhabited by some terminating
value, then the type a
is the same as the type b
. To use this equality
in practice, pattern-match on the a :~: b
to get out the Refl
constructor;
in the body of the pattern-match, the compiler knows that a ~ b
.
Since: base-4.7.0.0
Instances
TestCoercion ((:~:) a :: k -> Type) | Since: base-4.7.0.0 |
Defined in Data.Type.Coercion | |
TestEquality ((:~:) a :: k -> Type) | Since: base-4.7.0.0 |
Defined in Data.Type.Equality | |
a ~ b => Bounded (a :~: b) | Since: base-4.7.0.0 |
a ~ b => Enum (a :~: b) | Since: base-4.7.0.0 |
Defined in Data.Type.Equality | |
Eq (a :~: b) | Since: base-4.7.0.0 |
Ord (a :~: b) | Since: base-4.7.0.0 |
Defined in Data.Type.Equality | |
a ~ b => Read (a :~: b) | Since: base-4.7.0.0 |
Show (a :~: b) | Since: base-4.7.0.0 |
Uninhabited data type
Since: base-4.8.0.0
Instances
Eq Void | Since: base-4.8.0.0 |
Data Void | Since: base-4.8.0.0 |
Defined in Data.Void gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Void -> c Void # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Void # dataTypeOf :: Void -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Void) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Void) # gmapT :: (forall b. Data b => b -> b) -> Void -> Void # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Void -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Void -> r # gmapQ :: (forall d. Data d => d -> u) -> Void -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Void -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Void -> m Void # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Void -> m Void # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Void -> m Void # | |
Ord Void | Since: base-4.8.0.0 |
Read Void | Reading a Since: base-4.8.0.0 |
Show Void | Since: base-4.8.0.0 |
Ix Void | Since: base-4.8.0.0 |
Generic Void | Since: base-4.8.0.0 |
Semigroup Void | Since: base-4.9.0.0 |
Exception Void | Since: base-4.8.0.0 |
Defined in Data.Void toException :: Void -> SomeException # fromException :: SomeException -> Maybe Void # displayException :: Void -> String # | |
SDecide Void Source # | |
SingKind Void Source # | |
SEq Void Source # | |
PEq Void Source # | |
SOrd Void Source # | |
Defined in Data.Ord.Singletons sCompare :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source # (%<) :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source # (%<=) :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source # (%>) :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source # (%>=) :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source # sMax :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source # sMin :: forall (t :: Void) (t :: Void). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source # | |
POrd Void Source # | |
SSemigroup Void Source # | |
PSemigroup Void Source # | |
SShow Void Source # | |
Defined in Text.Show.Singletons sShowsPrec :: forall (t :: Nat) (t :: Void) (t :: Symbol). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ShowsPrecSym0 t) t) t) Source # sShow_ :: forall (t :: Void). Sing t -> Sing (Apply Show_Sym0 t) Source # sShowList :: forall (t :: [Void]) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply ShowListSym0 t) t) Source # | |
PShow Void Source # | |
Lift Void | Since: template-haskell-2.15.0.0 |
TestCoercion SVoid Source # | |
Defined in Data.Singletons.Base.Instances | |
TestEquality SVoid Source # | |
Defined in Data.Singletons.Base.Instances | |
SingI (AbsurdSym0 :: TyFun Void a -> Type) Source # | |
Defined in Data.Void.Singletons sing :: Sing AbsurdSym0 # | |
SuppressUnusedWarnings (AbsurdSym0 :: TyFun Void a -> Type) Source # | |
Defined in Data.Void.Singletons suppressUnusedWarnings :: () # | |
type Rep Void | |
type Sing Source # | |
Defined in Data.Singletons.Base.Instances | |
type Demote Void Source # | |
Defined in Data.Singletons.Base.Instances | |
type Sconcat (arg :: NonEmpty Void) Source # | |
Defined in Data.Semigroup.Singletons.Internal | |
type Show_ (arg :: Void) Source # | |
Defined in Text.Show.Singletons | |
type (a1 :: Void) == (a2 :: Void) Source # | |
Defined in Data.Eq.Singletons | |
type (arg1 :: Void) /= (arg2 :: Void) Source # | |
Defined in Data.Eq.Singletons | |
type Compare (a1 :: Void) (a2 :: Void) Source # | |
Defined in Data.Ord.Singletons | |
type (arg1 :: Void) < (arg2 :: Void) Source # | |
Defined in Data.Ord.Singletons | |
type (arg1 :: Void) <= (arg2 :: Void) Source # | |
Defined in Data.Ord.Singletons | |
type (arg1 :: Void) > (arg2 :: Void) Source # | |
Defined in Data.Ord.Singletons | |
type (arg1 :: Void) >= (arg2 :: Void) Source # | |
Defined in Data.Ord.Singletons | |
type Max (arg1 :: Void) (arg2 :: Void) Source # | |
Defined in Data.Ord.Singletons | |
type Min (arg1 :: Void) (arg2 :: Void) Source # | |
Defined in Data.Ord.Singletons | |
type (a1 :: Void) <> (a2 :: Void) Source # | |
Defined in Data.Semigroup.Singletons.Internal | |
type ShowList (arg1 :: [Void]) arg2 Source # | |
Defined in Text.Show.Singletons | |
type ShowsPrec a1 (a2 :: Void) a3 Source # | |
Defined in Text.Show.Singletons | |
type Apply (AbsurdSym0 :: TyFun Void k2 -> Type) (a6989586621679272407 :: Void) Source # | |
Defined in Data.Void.Singletons |
A Decision
about a type a
is either a proof of existence or a proof that a
cannot exist.
Instances
PBounded Bool Source # | |
PBounded Ordering Source # | |
PBounded () Source # | |
PBounded All Source # | |
PBounded Any Source # | |
PBounded (Min a) Source # | |
PBounded (Max a) Source # | |
PBounded (First a) Source # | |
PBounded (Last a) Source # | |
PBounded (WrappedMonoid m) Source # | |
PBounded (Identity a) Source # | |
PBounded (Dual a) Source # | |
PBounded (Sum a) Source # | |
PBounded (Product a) Source # | |
PBounded (a, b) Source # | |
PBounded (Proxy s) Source # | |
PBounded (a, b, c) Source # | |
PBounded (Const a b) Source # | |
PBounded (a, b, c, d) Source # | |
PBounded (a, b, c, d, e) Source # | |
PBounded (a, b, c, d, e, f) Source # | |
PBounded (a, b, c, d, e, f, g) Source # | |
class SBounded a where Source #
sMinBound :: Sing (MinBoundSym0 :: a) Source #
sMaxBound :: Sing (MaxBoundSym0 :: a) Source #
Instances
sToEnum :: forall (t :: Nat). Sing t -> Sing (Apply ToEnumSym0 t :: a) Source #
sFromEnum :: forall (t :: a). Sing t -> Sing (Apply FromEnumSym0 t :: Nat) Source #
Instances
type ShowsPrec (arg :: Nat) (arg :: a) (arg :: Symbol) :: Symbol Source #
type Show_ (arg :: a) :: Symbol Source #
type ShowList (arg :: [a]) (arg :: Symbol) :: Symbol Source #
Instances
PShow Bool Source # | |
PShow Ordering Source # | |
PShow Nat Source # | |
PShow Symbol Source # | |
PShow () Source # | |
PShow Void Source # | |
PShow All Source # | |
PShow Any Source # | |
PShow [a] Source # | |
PShow (Maybe a) Source # | |
PShow (Min a) Source # | |
PShow (Max a) Source # | |
PShow (First a) Source # | |
PShow (Last a) Source # | |
PShow (WrappedMonoid m) Source # | |
PShow (Identity a) Source # | |
PShow (First a) Source # | |
PShow (Last a) Source # | |
PShow (Dual a) Source # | |
PShow (Sum a) Source # | |
PShow (Product a) Source # | |
PShow (NonEmpty a) Source # | |
PShow (Either a b) Source # | |
PShow (a, b) Source # | |
PShow (Arg a b) Source # | |
PShow (Proxy s) Source # | |
PShow (a, b, c) Source # | |
PShow (Const a b) Source # | |
PShow (a, b, c, d) Source # | |
PShow (a, b, c, d, e) Source # | |
PShow (a, b, c, d, e, f) Source # | |
PShow (a, b, c, d, e, f, g) Source # | |
Nothing
sShowsPrec :: forall (t :: Nat) (t :: a) (t :: Symbol). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ShowsPrecSym0 t) t) t :: Symbol) Source #
default sShowsPrec :: forall (t :: Nat) (t :: a) (t :: Symbol). (Apply (Apply (Apply ShowsPrecSym0 t) t) t :: Symbol) ~ Apply (Apply (Apply ShowsPrec_6989586621680196521Sym0 t) t) t => Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ShowsPrecSym0 t) t) t :: Symbol) Source #
sShow_ :: forall (t :: a). Sing t -> Sing (Apply Show_Sym0 t :: Symbol) Source #
default sShow_ :: forall (t :: a). (Apply Show_Sym0 t :: Symbol) ~ Apply Show__6989586621680196533Sym0 t => Sing t -> Sing (Apply Show_Sym0 t :: Symbol) Source #
sShowList :: forall (t :: [a]) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply ShowListSym0 t) t :: Symbol) Source #
Instances
type FromString (arg :: Symbol) :: a Source #
Instances
PIsString Symbol Source # | |
Defined in Data.String.Singletons type FromString arg :: a Source # | |
PIsString (Identity a) Source # | |
Defined in Data.String.Singletons type FromString arg :: a Source # | |
PIsString (Const a b) Source # | |
Defined in Data.String.Singletons type FromString arg :: a Source # |
class SIsString a where Source #
sFromString :: forall (t :: Symbol). Sing t -> Sing (Apply FromStringSym0 t :: a) Source #
Instances
SIsString Symbol Source # | |
Defined in Data.String.Singletons sFromString :: forall (t :: Symbol). Sing t -> Sing (Apply FromStringSym0 t) Source # | |
SIsString a => SIsString (Identity a) Source # | |
Defined in Data.String.Singletons sFromString :: forall (t :: Symbol). Sing t -> Sing (Apply FromStringSym0 t) Source # | |
SIsString a => SIsString (Const a b) Source # | |
Defined in Data.String.Singletons sFromString :: forall (t :: Symbol). Sing t -> Sing (Apply FromStringSym0 t) Source # |
type family ShowString (a :: Symbol) (a :: Symbol) :: Symbol where ... Source #
ShowString a_6989586621680196455 a_6989586621680196457 = Apply (Apply (<>@#@$) a_6989586621680196455) a_6989586621680196457 |
sShowString :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply ShowStringSym0 t) t :: Symbol) Source #
type family ShowParen (a :: Bool) (a :: (~>) Symbol Symbol) (a :: Symbol) :: Symbol where ... Source #
sShowParen :: forall (t :: Bool) (t :: (~>) Symbol Symbol) (t :: Symbol). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ShowParenSym0 t) t) t :: Symbol) Source #
sShowSpace :: forall (t :: Symbol). Sing t -> Sing (Apply ShowSpaceSym0 t :: Symbol) Source #
sShowChar :: forall (t :: Symbol) (t :: Symbol). Sing t -> Sing t -> Sing (Apply (Apply ShowCharSym0 t) t :: Symbol) Source #
type family ShowCommaSpace (a :: Symbol) :: Symbol where ... Source #
ShowCommaSpace a_6989586621680196424 = Apply (Apply ShowStringSym0 ", ") a_6989586621680196424 |
sShowCommaSpace :: forall (t :: Symbol). Sing t -> Sing (Apply ShowCommaSpaceSym0 t :: Symbol) Source #
type family FromInteger (arg :: Nat) :: a Source #
Instances
type FromInteger a Source # | |
Defined in GHC.Num.Singletons type FromInteger a = a | |
type FromInteger a2 Source # | |
Defined in Data.Semigroup.Singletons type FromInteger a2 | |
type FromInteger a2 Source # | |
Defined in Data.Semigroup.Singletons type FromInteger a2 | |
type FromInteger a2 Source # | |
Defined in Data.Functor.Identity.Singletons type FromInteger a2 | |
type FromInteger a2 Source # | |
Defined in Data.Semigroup.Singletons.Internal type FromInteger a2 | |
type FromInteger a2 Source # | |
Defined in Data.Semigroup.Singletons.Internal type FromInteger a2 | |
type FromInteger a2 Source # | |
Defined in GHC.Num.Singletons type FromInteger a2 | |
type FromInteger a2 Source # | |
Defined in Data.Functor.Const.Singletons type FromInteger a2 |
sFromInteger :: forall (t :: Nat). SNum a => Sing t -> Sing (Apply FromIntegerSym0 t :: a) Source #
type family Negate (arg :: a) :: a Source #
Instances
type Negate (a :: Nat) Source # | |
Defined in GHC.Num.Singletons | |
type Negate (a2 :: Min a1) Source # | |
Defined in Data.Semigroup.Singletons | |
type Negate (a2 :: Max a1) Source # | |
Defined in Data.Semigroup.Singletons | |
type Negate (a2 :: Identity a1) Source # | |
Defined in Data.Functor.Identity.Singletons | |
type Negate (a2 :: Sum a1) Source # | |
Defined in Data.Semigroup.Singletons.Internal | |
type Negate (a2 :: Product a1) Source # | |
Defined in Data.Semigroup.Singletons.Internal | |
type Negate (a2 :: Down a1) Source # | |
Defined in GHC.Num.Singletons | |
type Negate (a2 :: Const a1 b) Source # | |
Defined in Data.Functor.Const.Singletons |
Instances
PFunctor [] Source # | |
PFunctor Maybe Source # | |
PFunctor Min Source # | |
PFunctor Max Source # | |
PFunctor First Source # | |
PFunctor Last Source # | |
PFunctor Identity Source # | |
PFunctor First Source # | |
PFunctor Last Source # | |
PFunctor Dual Source # | |
PFunctor Sum Source # | |
PFunctor Product Source # | |
PFunctor Down Source # | |
PFunctor NonEmpty Source # | |
PFunctor (Either a) Source # | |
PFunctor ((,) a) Source # | |
PFunctor (Arg a) Source # | |
PFunctor (Proxy :: Type -> Type) Source # | |
PFunctor (Const m :: Type -> Type) Source # | |
class SFunctor f where Source #
sFmap :: forall a b (t :: (~>) a b) (t :: f a). Sing t -> Sing t -> Sing (Apply (Apply FmapSym0 t) t :: f b) Source #
(%<$) :: forall a b (t :: a) (t :: f b). Sing t -> Sing t -> Sing (Apply (Apply (<$@#@$) t) t :: f a) infixl 4 Source #
Instances
SFunctor [] Source # | |
SFunctor Maybe Source # | |
SFunctor Min Source # | |
SFunctor Max Source # | |
SFunctor First Source # | |
SFunctor Last Source # | |
SFunctor Identity Source # | |
SFunctor First Source # | |
SFunctor Last Source # | |
SFunctor Dual Source # | |
SFunctor Sum Source # | |
SFunctor Product Source # | |
SFunctor Down Source # | |
SFunctor NonEmpty Source # | |
SFunctor (Either a) Source # | |
SFunctor ((,) a) Source # | |
SFunctor (Arg a) Source # | |
SFunctor (Proxy :: Type -> Type) Source # | |
SFunctor (Const m :: Type -> Type) Source # | |
type Fold (arg :: t m) :: m Source #
type FoldMap (arg :: (~>) a m) (arg :: t a) :: m Source #
type Foldr (arg :: (~>) a ((~>) b b)) (arg :: b) (arg :: t a) :: b Source #
type Foldr' (arg :: (~>) a ((~>) b b)) (arg :: b) (arg :: t a) :: b Source #
type Foldl (arg :: (~>) b ((~>) a b)) (arg :: b) (arg :: t a) :: b Source #
type Foldl' (arg :: (~>) b ((~>) a b)) (arg :: b) (arg :: t a) :: b Source #
type Foldr1 (arg :: (~>) a ((~>) a a)) (arg :: t a) :: a Source #
type Foldl1 (arg :: (~>) a ((~>) a a)) (arg :: t a) :: a Source #
type ToList (arg :: t a) :: [a] Source #
type Null (arg :: t a) :: Bool Source #
type Length (arg :: t a) :: Nat Source #
type Elem (arg :: a) (arg :: t a) :: Bool Source #
type Maximum (arg :: t a) :: a Source #
type Minimum (arg :: t a) :: a Source #
Instances
PFoldable [] Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable Maybe Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable Min Source # | |
Defined in Data.Semigroup.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable Max Source # | |
Defined in Data.Semigroup.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable First Source # | |
Defined in Data.Semigroup.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable Last Source # | |
Defined in Data.Semigroup.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable Identity Source # | |
Defined in Data.Functor.Identity.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable First Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable Last Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable Dual Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable Sum Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable Product Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable NonEmpty Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable (Either a) Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable ((,) a) Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable (Arg a) Source # | |
Defined in Data.Semigroup.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable (Proxy :: Type -> Type) Source # | |
Defined in Data.Foldable.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # | |
PFoldable (Const m :: Type -> Type) Source # | |
Defined in Data.Functor.Const.Singletons type FoldMap arg arg :: m Source # type Foldr arg arg arg :: b Source # type Foldr' arg arg arg :: b Source # type Foldl arg arg arg :: b Source # type Foldl' arg arg arg :: b Source # type Foldr1 arg arg :: a Source # type Foldl1 arg arg :: a Source # type ToList arg :: [a] Source # type Null arg :: Bool Source # type Length arg :: Nat Source # type Elem arg arg :: Bool Source # type Maximum arg :: a Source # |
class SFoldable t where Source #
Nothing
sFold :: forall m (t :: t m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t :: m) Source #
default sFold :: forall m (t :: t m). ((Apply FoldSym0 t :: m) ~ Apply Fold_6989586621680367346Sym0 t, SMonoid m) => Sing t -> Sing (Apply FoldSym0 t :: m) Source #
sFoldMap :: forall a m (t :: (~>) a m) (t :: t a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t :: m) Source #
default sFoldMap :: forall a m (t :: (~>) a m) (t :: t a). ((Apply (Apply FoldMapSym0 t) t :: m) ~ Apply (Apply FoldMap_6989586621680367356Sym0 t) t, SMonoid m) => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t :: m) Source #
sFoldr :: forall a b (t :: (~>) a ((~>) b b)) (t :: b) (t :: t a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t :: b) Source #
default sFoldr :: forall a b (t :: (~>) a ((~>) b b)) (t :: b) (t :: t a). (Apply (Apply (Apply FoldrSym0 t) t) t :: b) ~ Apply (Apply (Apply Foldr_6989586621680367370Sym0 t) t) t => Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t :: b) Source #
sFoldr' :: forall a b (t :: (~>) a ((~>) b b)) (t :: b) (t :: t a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t :: b) Source #
default sFoldr' :: forall a b (t :: (~>) a ((~>) b b)) (t :: b) (t :: t a). (Apply (Apply (Apply Foldr'Sym0 t) t) t :: b) ~ Apply (Apply (Apply Foldr'_6989586621680367385Sym0 t) t) t => Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t :: b) Source #
sFoldl :: forall b a (t :: (~>) b ((~>) a b)) (t :: b) (t :: t a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t :: b) Source #
default sFoldl :: forall b a (t :: (~>) b ((~>) a b)) (t :: b) (t :: t a). (Apply (Apply (Apply FoldlSym0 t) t) t :: b) ~ Apply (Apply (Apply Foldl_6989586621680367408Sym0 t) t) t => Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t :: b) Source #
sFoldl' :: forall b a (t :: (~>) b ((~>) a b)) (t :: b) (t :: t a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t :: b) Source #
default sFoldl' :: forall b a (t :: (~>) b ((~>) a b)) (t :: b) (t :: t a). (Apply (Apply (Apply Foldl'Sym0 t) t) t :: b) ~ Apply (Apply (Apply Foldl'_6989586621680367423Sym0 t) t) t => Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t :: b) Source #
sFoldr1 :: forall a (t :: (~>) a ((~>) a a)) (t :: t a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t :: a) Source #
default sFoldr1 :: forall a (t :: (~>) a ((~>) a a)) (t :: t a). (Apply (Apply Foldr1Sym0 t) t :: a) ~ Apply (Apply Foldr1_6989586621680367445Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t :: a) Source #
sFoldl1 :: forall a (t :: (~>) a ((~>) a a)) (t :: t a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t :: a) Source #
default sFoldl1 :: forall a (t :: (~>) a ((~>) a a)) (t :: t a). (Apply (Apply Foldl1Sym0 t) t :: a) ~ Apply (Apply Foldl1_6989586621680367466Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t :: a) Source #
sToList :: forall a (t :: t a). Sing t -> Sing (Apply ToListSym0 t :: [a]) Source #
default sToList :: forall a (t :: t a). (Apply ToListSym0 t :: [a]) ~ Apply ToList_6989586621680367486Sym0 t => Sing t -> Sing (Apply ToListSym0 t :: [a]) Source #
sNull :: forall a (t :: t a). Sing t -> Sing (Apply NullSym0 t :: Bool) Source #
default sNull :: forall a (t :: t a). (Apply NullSym0 t :: Bool) ~ Apply Null_6989586621680367495Sym0 t => Sing t -> Sing (Apply NullSym0 t :: Bool) Source #
sLength :: forall a (t :: t a). Sing t -> Sing (Apply LengthSym0 t :: Nat) Source #
default sLength :: forall a (t :: t a). (Apply LengthSym0 t :: Nat) ~ Apply Length_6989586621680367512Sym0 t => Sing t -> Sing (Apply LengthSym0 t :: Nat) Source #
sElem :: forall a (t :: a) (t :: t a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t :: Bool) Source #
default sElem :: forall a (t :: a) (t :: t a). ((Apply (Apply ElemSym0 t) t :: Bool) ~ Apply (Apply Elem_6989586621680367531Sym0 t) t, SEq a) => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t :: Bool) Source #
sMaximum :: forall a (t :: t a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t :: a) Source #
default sMaximum :: forall a (t :: t a). ((Apply MaximumSym0 t :: a) ~ Apply Maximum_6989586621680367545Sym0 t, SOrd a) => Sing t -> Sing (Apply MaximumSym0 t :: a) Source #
sMinimum :: forall a (t :: t a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t :: a) Source #
default sMinimum :: forall a (t :: t a). ((Apply MinimumSym0 t :: a) ~ Apply Minimum_6989586621680367560Sym0 t, SOrd a) => Sing t -> Sing (Apply MinimumSym0 t :: a) Source #
sSum :: forall a (t :: t a). SNum a => Sing t -> Sing (Apply SumSym0 t :: a) Source #
default sSum :: forall a (t :: t a). ((Apply SumSym0 t :: a) ~ Apply Sum_6989586621680367575Sym0 t, SNum a) => Sing t -> Sing (Apply SumSym0 t :: a) Source #
sProduct :: forall a (t :: t a). SNum a => Sing t -> Sing (Apply ProductSym0 t :: a) Source #
Instances
SFoldable [] Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: [m]). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: [a]). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: [a]). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: [a]). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: [a]). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: [a]). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: [a]). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: [a]). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: [a]). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: [a]). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: [a]). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: [a]). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: [a]). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: [a]). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable Maybe Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: Maybe m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: Maybe a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Maybe a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Maybe a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Maybe a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Maybe a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Maybe a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Maybe a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Maybe a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Maybe a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Maybe a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Maybe a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Maybe a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Maybe a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Maybe a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Maybe a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable Min Source # | |
Defined in Data.Semigroup.Singletons sFold :: forall m (t :: Min m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: Min a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Min a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Min a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Min a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Min a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Min a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Min a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Min a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Min a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Min a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Min a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Min a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Min a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Min a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Min a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable Max Source # | |
Defined in Data.Semigroup.Singletons sFold :: forall m (t :: Max m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: Max a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Max a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Max a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Max a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Max a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Max a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Max a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Max a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Max a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Max a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Max a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Max a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Max a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Max a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Max a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable First Source # | |
Defined in Data.Semigroup.Singletons sFold :: forall m (t :: First m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: First a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: First a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: First a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: First a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: First a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: First a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: First a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: First a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: First a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: First a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: First a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: First a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: First a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable Last Source # | |
Defined in Data.Semigroup.Singletons sFold :: forall m (t :: Last m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: Last a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Last a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Last a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Last a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Last a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Last a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Last a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Last a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Last a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Last a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Last a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Last a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Last a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable Identity Source # | |
Defined in Data.Functor.Identity.Singletons sFold :: forall m (t :: Identity m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: Identity a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Identity a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Identity a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Identity a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Identity a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Identity a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Identity a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Identity a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Identity a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Identity a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Identity a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Identity a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Identity a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Identity a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Identity a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable First Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: First m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: First a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: First a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: First a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: First a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: First a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: First a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: First a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: First a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: First a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: First a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: First a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: First a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: First a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable Last Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: Last m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: Last a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Last a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Last a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Last a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Last a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Last a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Last a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Last a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Last a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Last a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Last a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Last a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Last a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable Dual Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: Dual m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: Dual a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Dual a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Dual a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Dual a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Dual a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Dual a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Dual a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Dual a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Dual a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Dual a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Dual a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Dual a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Dual a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Dual a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Dual a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable Sum Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: Sum m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: Sum a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Sum a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Sum a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Sum a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Sum a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Sum a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Sum a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Sum a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Sum a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Sum a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Sum a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Sum a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Sum a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Sum a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Sum a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable Product Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: Product m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: Product a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Product a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Product a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Product a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Product a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Product a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Product a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Product a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Product a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Product a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Product a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Product a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Product a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Product a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Product a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable NonEmpty Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: NonEmpty m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: NonEmpty a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: NonEmpty a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: NonEmpty a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: NonEmpty a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: NonEmpty a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: NonEmpty a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: NonEmpty a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: NonEmpty a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: NonEmpty a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: NonEmpty a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: NonEmpty a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: NonEmpty a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: NonEmpty a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: NonEmpty a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: NonEmpty a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable (Either a) Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: Either a m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a0 m (t :: a0 ~> m) (t :: Either a a0). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a0 b (t :: a0 ~> (b ~> b)) (t :: b) (t :: Either a a0). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a0 b (t :: a0 ~> (b ~> b)) (t :: b) (t :: Either a a0). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a0 (t :: b ~> (a0 ~> b)) (t :: b) (t :: Either a a0). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a0 (t :: b ~> (a0 ~> b)) (t :: b) (t :: Either a a0). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a0 (t :: a0 ~> (a0 ~> a0)) (t :: Either a a0). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a0 (t :: a0 ~> (a0 ~> a0)) (t :: Either a a0). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a0 (t :: Either a a0). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a0 (t :: Either a a0). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a0 (t :: Either a a0). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a0 (t :: a0) (t :: Either a a0). SEq a0 => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a0 (t :: Either a a0). SOrd a0 => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a0 (t :: Either a a0). SOrd a0 => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a0 (t :: Either a a0). SNum a0 => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a0 (t :: Either a a0). SNum a0 => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable ((,) a) Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: (a, m)). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a0 m (t :: a0 ~> m) (t :: (a, a0)). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a0 b (t :: a0 ~> (b ~> b)) (t :: b) (t :: (a, a0)). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a0 b (t :: a0 ~> (b ~> b)) (t :: b) (t :: (a, a0)). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a0 (t :: b ~> (a0 ~> b)) (t :: b) (t :: (a, a0)). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a0 (t :: b ~> (a0 ~> b)) (t :: b) (t :: (a, a0)). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a0 (t :: a0 ~> (a0 ~> a0)) (t :: (a, a0)). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a0 (t :: a0 ~> (a0 ~> a0)) (t :: (a, a0)). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a0 (t :: (a, a0)). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a0 (t :: (a, a0)). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a0 (t :: (a, a0)). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a0 (t :: a0) (t :: (a, a0)). SEq a0 => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a0 (t :: (a, a0)). SOrd a0 => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a0 (t :: (a, a0)). SOrd a0 => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a0 (t :: (a, a0)). SNum a0 => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a0 (t :: (a, a0)). SNum a0 => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable (Arg a) Source # | |
Defined in Data.Semigroup.Singletons sFold :: forall m (t :: Arg a m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a0 m (t :: a0 ~> m) (t :: Arg a a0). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a0 b (t :: a0 ~> (b ~> b)) (t :: b) (t :: Arg a a0). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a0 b (t :: a0 ~> (b ~> b)) (t :: b) (t :: Arg a a0). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a0 (t :: b ~> (a0 ~> b)) (t :: b) (t :: Arg a a0). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a0 (t :: b ~> (a0 ~> b)) (t :: b) (t :: Arg a a0). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a0 (t :: a0 ~> (a0 ~> a0)) (t :: Arg a a0). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a0 (t :: a0 ~> (a0 ~> a0)) (t :: Arg a a0). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a0 (t :: Arg a a0). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a0 (t :: Arg a a0). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a0 (t :: Arg a a0). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a0 (t :: a0) (t :: Arg a a0). SEq a0 => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a0 (t :: Arg a a0). SOrd a0 => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a0 (t :: Arg a a0). SOrd a0 => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a0 (t :: Arg a a0). SNum a0 => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a0 (t :: Arg a a0). SNum a0 => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable (Proxy :: Type -> Type) Source # | |
Defined in Data.Foldable.Singletons sFold :: forall m (t :: Proxy m). SMonoid m => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m (t :: a ~> m) (t :: Proxy a). SMonoid m => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Proxy a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Proxy a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Proxy a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Proxy a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Proxy a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Proxy a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Proxy a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Proxy a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Proxy a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Proxy a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Proxy a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Proxy a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Proxy a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Proxy a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # | |
SFoldable (Const m :: Type -> Type) Source # | |
Defined in Data.Functor.Const.Singletons sFold :: forall m0 (t :: Const m m0). SMonoid m0 => Sing t -> Sing (Apply FoldSym0 t) Source # sFoldMap :: forall a m0 (t :: a ~> m0) (t :: Const m a). SMonoid m0 => Sing t -> Sing t -> Sing (Apply (Apply FoldMapSym0 t) t) Source # sFoldr :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Const m a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldrSym0 t) t) t) Source # sFoldr' :: forall a b (t :: a ~> (b ~> b)) (t :: b) (t :: Const m a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldr'Sym0 t) t) t) Source # sFoldl :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Const m a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FoldlSym0 t) t) t) Source # sFoldl' :: forall b a (t :: b ~> (a ~> b)) (t :: b) (t :: Const m a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Foldl'Sym0 t) t) t) Source # sFoldr1 :: forall a (t :: a ~> (a ~> a)) (t :: Const m a). Sing t -> Sing t -> Sing (Apply (Apply Foldr1Sym0 t) t) Source # sFoldl1 :: forall a (t :: a ~> (a ~> a)) (t :: Const m a). Sing t -> Sing t -> Sing (Apply (Apply Foldl1Sym0 t) t) Source # sToList :: forall a (t :: Const m a). Sing t -> Sing (Apply ToListSym0 t) Source # sNull :: forall a (t :: Const m a). Sing t -> Sing (Apply NullSym0 t) Source # sLength :: forall a (t :: Const m a). Sing t -> Sing (Apply LengthSym0 t) Source # sElem :: forall a (t :: a) (t :: Const m a). SEq a => Sing t -> Sing t -> Sing (Apply (Apply ElemSym0 t) t) Source # sMaximum :: forall a (t :: Const m a). SOrd a => Sing t -> Sing (Apply MaximumSym0 t) Source # sMinimum :: forall a (t :: Const m a). SOrd a => Sing t -> Sing (Apply MinimumSym0 t) Source # sSum :: forall a (t :: Const m a). SNum a => Sing t -> Sing (Apply SumSym0 t) Source # sProduct :: forall a (t :: Const m a). SNum a => Sing t -> Sing (Apply ProductSym0 t) Source # |
Instances
PMonoid Ordering Source # | |
PMonoid Symbol Source # | |
PMonoid () Source # | |
PMonoid All Source # | |
PMonoid Any Source # | |
PMonoid [a] Source # | |
PMonoid (Maybe a) Source # | |
PMonoid (Min a) Source # | |
PMonoid (Max a) Source # | |
PMonoid (WrappedMonoid m) Source # | |
PMonoid (Identity a) Source # | |
PMonoid (First a) Source # | |
PMonoid (Last a) Source # | |
PMonoid (Dual a) Source # | |
PMonoid (Sum a) Source # | |
PMonoid (Product a) Source # | |
PMonoid (Down a) Source # | |
PMonoid (a, b) Source # | |
PMonoid (Proxy s) Source # | |
PMonoid (a ~> b) Source # | |
PMonoid (a, b, c) Source # | |
PMonoid (Const a b) Source # | |
PMonoid (a, b, c, d) Source # | |
PMonoid (a, b, c, d, e) Source # | |
class SSemigroup a => SMonoid a where Source #
sMempty :: Sing (MemptySym0 :: a) Source #
sMappend :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply MappendSym0 t) t :: a) Source #
default sMappend :: forall (t :: a) (t :: a). (Apply (Apply MappendSym0 t) t :: a) ~ Apply (Apply Mappend_6989586621680267913Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply MappendSym0 t) t :: a) Source #
sMconcat :: forall (t :: [a]). Sing t -> Sing (Apply MconcatSym0 t :: a) Source #
default sMconcat :: forall (t :: [a]). (Apply MconcatSym0 t :: a) ~ Apply Mconcat_6989586621680267927Sym0 t => Sing t -> Sing (Apply MconcatSym0 t :: a) Source #
Instances
class PTraversable t Source #
type Traverse (arg :: (~>) a (f b)) (arg :: t a) :: f (t b) Source #
type SequenceA (arg :: t (f a)) :: f (t a) Source #
type MapM (arg :: (~>) a (m b)) (arg :: t a) :: m (t b) Source #
Instances
class (SFunctor t, SFoldable t) => STraversable t where Source #
Nothing
sTraverse :: forall a f b (t :: (~>) a (f b)) (t :: t a). SApplicative f => Sing t -> Sing t -> Sing (Apply (Apply TraverseSym0 t) t :: f (t b)) Source #
default sTraverse :: forall a f b (t :: (~>) a (f b)) (t :: t a). ((Apply (Apply TraverseSym0 t) t :: f (t b)) ~ Apply (Apply Traverse_6989586621680721221Sym0 t) t, SApplicative f) => Sing t -> Sing t -> Sing (Apply (Apply TraverseSym0 t) t :: f (t b)) Source #
sSequenceA :: forall f a (t :: t (f a)). SApplicative f => Sing t -> Sing (Apply SequenceASym0 t :: f (t a)) Source #
default sSequenceA :: forall f a (t :: t (f a)). ((Apply SequenceASym0 t :: f (t a)) ~ Apply SequenceA_6989586621680721233Sym0 t, SApplicative f) => Sing t -> Sing (Apply SequenceASym0 t :: f (t a)) Source #
sMapM :: forall a m b (t :: (~>) a (m b)) (t :: t a). SMonad m => Sing t -> Sing t -> Sing (Apply (Apply MapMSym0 t) t :: m (t b)) Source #
default sMapM :: forall a m b (t :: (~>) a (m b)) (t :: t a). ((Apply (Apply MapMSym0 t) t :: m (t b)) ~ Apply (Apply MapM_6989586621680721243Sym0 t) t, SMonad m) => Sing t -> Sing t -> Sing (Apply (Apply MapMSym0 t) t :: m (t b)) Source #
sSequence :: forall m a (t :: t (m a)). SMonad m => Sing t -> Sing (Apply SequenceSym0 t :: m (t a)) Source #
Instances
class PApplicative f Source #
type Pure (arg :: a) :: f a Source #
type (arg :: f ((~>) a b)) <*> (arg :: f a) :: f b infixl 4 Source #
type LiftA2 (arg :: (~>) a ((~>) b c)) (arg :: f a) (arg :: f b) :: f c Source #
Instances
class SFunctor f => SApplicative f where Source #
sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t :: f a) Source #
(%<*>) :: forall a b (t :: f ((~>) a b)) (t :: f a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t :: f b) infixl 4 Source #
default (%<*>) :: forall a b (t :: f ((~>) a b)) (t :: f a). (Apply (Apply (<*>@#@$) t) t :: f b) ~ Apply (Apply TFHelper_6989586621679319204Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t :: f b) Source #
sLiftA2 :: forall a b c (t :: (~>) a ((~>) b c)) (t :: f a) (t :: f b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t :: f c) Source #
default sLiftA2 :: forall a b c (t :: (~>) a ((~>) b c)) (t :: f a) (t :: f b). (Apply (Apply (Apply LiftA2Sym0 t) t) t :: f c) ~ Apply (Apply (Apply LiftA2_6989586621679319220Sym0 t) t) t => Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t :: f c) Source #
(%*>) :: forall a b (t :: f a) (t :: f b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t :: f b) infixl 4 Source #
default (%*>) :: forall a b (t :: f a) (t :: f b). (Apply (Apply (*>@#@$) t) t :: f b) ~ Apply (Apply TFHelper_6989586621679319236Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t :: f b) Source #
(%<*) :: forall a b (t :: f a) (t :: f b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t :: f a) infixl 4 Source #
Instances
SApplicative [] Source # | |
Defined in Control.Monad.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: [a ~> b]) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: [a]) (t :: [b]). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: [a]) (t :: [b]). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: [a]) (t :: [b]). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative Maybe Source # | |
Defined in Control.Monad.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Maybe (a ~> b)) (t :: Maybe a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Maybe a) (t :: Maybe b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Maybe a) (t :: Maybe b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Maybe a) (t :: Maybe b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative Min Source # | |
Defined in Data.Semigroup.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Min (a ~> b)) (t :: Min a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Min a) (t :: Min b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Min a) (t :: Min b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Min a) (t :: Min b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative Max Source # | |
Defined in Data.Semigroup.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Max (a ~> b)) (t :: Max a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Max a) (t :: Max b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Max a) (t :: Max b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Max a) (t :: Max b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative First Source # | |
Defined in Data.Semigroup.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: First (a ~> b)) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: First a) (t :: First b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: First a) (t :: First b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: First a) (t :: First b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative Last Source # | |
Defined in Data.Semigroup.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Last (a ~> b)) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Last a) (t :: Last b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Last a) (t :: Last b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Last a) (t :: Last b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative Identity Source # | |
Defined in Data.Functor.Identity.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Identity (a ~> b)) (t :: Identity a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Identity a) (t :: Identity b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Identity a) (t :: Identity b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Identity a) (t :: Identity b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative First Source # | |
Defined in Data.Monoid.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: First (a ~> b)) (t :: First a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: First a) (t :: First b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: First a) (t :: First b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: First a) (t :: First b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative Last Source # | |
Defined in Data.Monoid.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Last (a ~> b)) (t :: Last a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Last a) (t :: Last b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Last a) (t :: Last b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Last a) (t :: Last b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative Dual Source # | |
Defined in Data.Semigroup.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Dual (a ~> b)) (t :: Dual a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Dual a) (t :: Dual b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Dual a) (t :: Dual b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Dual a) (t :: Dual b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative Sum Source # | |
Defined in Data.Semigroup.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Sum (a ~> b)) (t :: Sum a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Sum a) (t :: Sum b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Sum a) (t :: Sum b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Sum a) (t :: Sum b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative Product Source # | |
Defined in Data.Semigroup.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Product (a ~> b)) (t :: Product a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Product a) (t :: Product b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Product a) (t :: Product b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Product a) (t :: Product b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative Down Source # | |
Defined in Control.Applicative.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Down (a ~> b)) (t :: Down a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Down a) (t :: Down b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Down a) (t :: Down b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Down a) (t :: Down b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative NonEmpty Source # | |
Defined in Control.Monad.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: NonEmpty (a ~> b)) (t :: NonEmpty a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: NonEmpty a) (t :: NonEmpty b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: NonEmpty a) (t :: NonEmpty b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: NonEmpty a) (t :: NonEmpty b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative (Either e) Source # | |
Defined in Control.Monad.Singletons.Internal sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Either e (a ~> b)) (t :: Either e a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Either e a) (t :: Either e b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Either e a) (t :: Either e b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Either e a) (t :: Either e b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SMonoid a => SApplicative ((,) a) Source # | |
Defined in Control.Applicative.Singletons sPure :: forall a0 (t :: a0). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a0 b (t :: (a, a0 ~> b)) (t :: (a, a0)). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a0 b c (t :: a0 ~> (b ~> c)) (t :: (a, a0)) (t :: (a, b)). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a0 b (t :: (a, a0)) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a0 b (t :: (a, a0)) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SApplicative (Proxy :: Type -> Type) Source # | |
Defined in Data.Proxy.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Proxy (a ~> b)) (t :: Proxy a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Proxy a) (t :: Proxy b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Proxy a) (t :: Proxy b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Proxy a) (t :: Proxy b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # | |
SMonoid m => SApplicative (Const m :: Type -> Type) Source # | |
Defined in Data.Functor.Const.Singletons sPure :: forall a (t :: a). Sing t -> Sing (Apply PureSym0 t) Source # (%<*>) :: forall a b (t :: Const m (a ~> b)) (t :: Const m a). Sing t -> Sing t -> Sing (Apply (Apply (<*>@#@$) t) t) Source # sLiftA2 :: forall a b c (t :: a ~> (b ~> c)) (t :: Const m a) (t :: Const m b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply LiftA2Sym0 t) t) t) Source # (%*>) :: forall a b (t :: Const m a) (t :: Const m b). Sing t -> Sing t -> Sing (Apply (Apply (*>@#@$) t) t) Source # (%<*) :: forall a b (t :: Const m a) (t :: Const m b). Sing t -> Sing t -> Sing (Apply (Apply (<*@#@$) t) t) Source # |
(%.) :: forall b c a (t :: (~>) b c) (t :: (~>) a b) (t :: a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply (.@#@$) t) t) t :: c) infixr 9 Source #
type family Error (str :: k0) :: k where ... Source #
The promotion of error
. This version is more poly-kinded for
easier use.
data ErrorSym0 :: (~>) k0 k Source #
Instances
SingI (ErrorSym0 :: TyFun Symbol a -> Type) Source # | |
Defined in GHC.TypeLits.Singletons.Internal | |
SuppressUnusedWarnings (ErrorSym0 :: TyFun k0 k -> Type) Source # | |
Defined in GHC.TypeLits.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (ErrorSym0 :: TyFun k0 k2 -> Type) (a6989586621679518606 :: k0) Source # | |
sUndefined :: HasCallStack => a Source #
The singleton for undefined
.
type family UndefinedSym0 :: k where ... Source #
data (==@#@$) :: (~>) a ((~>) a Bool) infix 4 Source #
Instances
SEq a => SingI ((==@#@$) :: TyFun a (a ~> Bool) -> Type) Source # | |
Defined in Data.Eq.Singletons | |
SuppressUnusedWarnings ((==@#@$) :: TyFun a (a ~> Bool) -> Type) Source # | |
Defined in Data.Eq.Singletons suppressUnusedWarnings :: () # | |
type Apply ((==@#@$) :: TyFun a (a ~> Bool) -> Type) (a6989586621679131004 :: a) Source # | |
data (==@#@$$) (a6989586621679131004 :: a) :: (~>) a Bool infix 4 Source #
Instances
(SEq a, SingI d) => SingI ((==@#@$$) d :: TyFun a Bool -> Type) Source # | |
Defined in Data.Eq.Singletons | |
SuppressUnusedWarnings ((==@#@$$) a6989586621679131004 :: TyFun a Bool -> Type) Source # | |
Defined in Data.Eq.Singletons suppressUnusedWarnings :: () # | |
type Apply ((==@#@$$) a6989586621679131004 :: TyFun a Bool -> Type) (a6989586621679131005 :: a) Source # | |
type family (a6989586621679131004 :: a) ==@#@$$$ (a6989586621679131005 :: a) :: Bool where ... infix 4 Source #
data (>@#@$) :: (~>) a ((~>) a Bool) infix 4 Source #
Instances
SOrd a => SingI ((>@#@$) :: TyFun a (a ~> Bool) -> Type) Source # | |
Defined in Data.Ord.Singletons | |
SuppressUnusedWarnings ((>@#@$) :: TyFun a (a ~> Bool) -> Type) Source # | |
Defined in Data.Ord.Singletons suppressUnusedWarnings :: () # | |
type Apply ((>@#@$) :: TyFun a (a ~> Bool) -> Type) (a6989586621679170750 :: a) Source # | |
data (>@#@$$) (a6989586621679170750 :: a) :: (~>) a Bool infix 4 Source #
Instances
(SOrd a, SingI d) => SingI ((>@#@$$) d :: TyFun a Bool -> Type) Source # | |
Defined in Data.Ord.Singletons | |
SuppressUnusedWarnings ((>@#@$$) a6989586621679170750 :: TyFun a Bool -> Type) Source # | |
Defined in Data.Ord.Singletons suppressUnusedWarnings :: () # | |
type Apply ((>@#@$$) a6989586621679170750 :: TyFun a Bool -> Type) (a6989586621679170751 :: a) Source # | |
type family (a6989586621679170750 :: a) >@#@$$$ (a6989586621679170751 :: a) :: Bool where ... infix 4 Source #
data IfSym0 :: (~>) Bool ((~>) k ((~>) k k)) Source #
Instances
SingI (IfSym0 :: TyFun Bool (k ~> (k ~> k)) -> Type) Source # | |
Defined in Data.Bool.Singletons | |
SuppressUnusedWarnings (IfSym0 :: TyFun Bool (k ~> (k ~> k)) -> Type) Source # | |
Defined in Data.Bool.Singletons suppressUnusedWarnings :: () # | |
type Apply (IfSym0 :: TyFun Bool (k ~> (k ~> k)) -> Type) (a6989586621679126966 :: Bool) Source # | |
data IfSym1 (a6989586621679126966 :: Bool) :: (~>) k ((~>) k k) Source #
Instances
SingI c => SingI (IfSym1 c :: TyFun k (k ~> k) -> Type) Source # | |
Defined in Data.Bool.Singletons | |
SuppressUnusedWarnings (IfSym1 a6989586621679126966 :: TyFun k (k ~> k) -> Type) Source # | |
Defined in Data.Bool.Singletons suppressUnusedWarnings :: () # | |
type Apply (IfSym1 a6989586621679126966 :: TyFun k (k ~> k) -> Type) (a6989586621679126967 :: k) Source # | |
data IfSym2 (a6989586621679126966 :: Bool) (a6989586621679126967 :: k) :: (~>) k k Source #
Instances
(SingI c, SingI t) => SingI (IfSym2 c t :: TyFun k k -> Type) Source # | |
Defined in Data.Bool.Singletons | |
SuppressUnusedWarnings (IfSym2 a6989586621679126966 a6989586621679126967 :: TyFun k k -> Type) Source # | |
Defined in Data.Bool.Singletons suppressUnusedWarnings :: () # | |
type Apply (IfSym2 a6989586621679126966 a6989586621679126967 :: TyFun k k -> Type) (a6989586621679126968 :: k) Source # | |
type family IfSym3 (a6989586621679126966 :: Bool) (a6989586621679126967 :: k) (a6989586621679126968 :: k) :: k where ... Source #
data (&&@#@$) :: (~>) Bool ((~>) Bool Bool) infixr 3 Source #
Instances
SingI (&&@#@$) Source # | |
Defined in Data.Bool.Singletons | |
SuppressUnusedWarnings (&&@#@$) Source # | |
Defined in Data.Bool.Singletons suppressUnusedWarnings :: () # | |
type Apply (&&@#@$) (a6989586621679126062 :: Bool) Source # | |
Defined in Data.Bool.Singletons |
data (&&@#@$$) (a6989586621679126062 :: Bool) :: (~>) Bool Bool infixr 3 Source #
Instances
SingI x => SingI ((&&@#@$$) x :: TyFun Bool Bool -> Type) Source # | |
Defined in Data.Bool.Singletons | |
SuppressUnusedWarnings ((&&@#@$$) a6989586621679126062 :: TyFun Bool Bool -> Type) Source # | |
Defined in Data.Bool.Singletons suppressUnusedWarnings :: () # | |
type Apply ((&&@#@$$) a6989586621679126062 :: TyFun Bool Bool -> Type) (a6989586621679126063 :: Bool) Source # | |
type family (a6989586621679126062 :: Bool) &&@#@$$$ (a6989586621679126063 :: Bool) :: Bool where ... infixr 3 Source #
type family Tuple0Sym0 :: () where ... Source #
Tuple0Sym0 = '() |
data Tuple2Sym0 :: (~>) a ((~>) b (a :: Type, b :: Type)) Source #
Instances
SingI (Tuple2Sym0 :: TyFun a (b ~> (a, b)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing Tuple2Sym0 # | |
SuppressUnusedWarnings (Tuple2Sym0 :: TyFun a (b ~> (a, b)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple2Sym0 :: TyFun a (b ~> (a, b)) -> Type) (a6989586621679042302 :: a) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple2Sym0 :: TyFun a (b ~> (a, b)) -> Type) (a6989586621679042302 :: a) = Tuple2Sym1 a6989586621679042302 :: TyFun b (a, b) -> Type |
data Tuple2Sym1 (a6989586621679042302 :: a) :: (~>) b (a :: Type, b :: Type) Source #
Instances
SingI d => SingI (Tuple2Sym1 d :: TyFun b (a, b) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple2Sym1 d) # | |
SuppressUnusedWarnings (Tuple2Sym1 a6989586621679042302 :: TyFun b (a, b) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple2Sym1 a6989586621679042302 :: TyFun k2 (k1, k2) -> Type) (a6989586621679042303 :: k2) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple2Sym1 a6989586621679042302 :: TyFun k2 (k1, k2) -> Type) (a6989586621679042303 :: k2) = '(a6989586621679042302, a6989586621679042303) |
type family Tuple2Sym2 (a6989586621679042302 :: a) (a6989586621679042303 :: b) :: (a :: Type, b :: Type) where ... Source #
Tuple2Sym2 a6989586621679042302 a6989586621679042303 = '(a6989586621679042302, a6989586621679042303) |
data Tuple3Sym0 :: (~>) a ((~>) b ((~>) c (a :: Type, b :: Type, c :: Type))) Source #
Instances
SingI (Tuple3Sym0 :: TyFun a (b ~> (c ~> (a, b, c))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing Tuple3Sym0 # | |
SuppressUnusedWarnings (Tuple3Sym0 :: TyFun a (b ~> (c ~> (a, b, c))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple3Sym0 :: TyFun a (b ~> (c ~> (a, b, c))) -> Type) (a6989586621679042332 :: a) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple3Sym0 :: TyFun a (b ~> (c ~> (a, b, c))) -> Type) (a6989586621679042332 :: a) = Tuple3Sym1 a6989586621679042332 :: TyFun b (c ~> (a, b, c)) -> Type |
data Tuple3Sym1 (a6989586621679042332 :: a) :: (~>) b ((~>) c (a :: Type, b :: Type, c :: Type)) Source #
Instances
SingI d => SingI (Tuple3Sym1 d :: TyFun b (c ~> (a, b, c)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple3Sym1 d) # | |
SuppressUnusedWarnings (Tuple3Sym1 a6989586621679042332 :: TyFun b (c ~> (a, b, c)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple3Sym1 a6989586621679042332 :: TyFun b (c ~> (a, b, c)) -> Type) (a6989586621679042333 :: b) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple3Sym1 a6989586621679042332 :: TyFun b (c ~> (a, b, c)) -> Type) (a6989586621679042333 :: b) = Tuple3Sym2 a6989586621679042332 a6989586621679042333 :: TyFun c (a, b, c) -> Type |
data Tuple3Sym2 (a6989586621679042332 :: a) (a6989586621679042333 :: b) :: (~>) c (a :: Type, b :: Type, c :: Type) Source #
Instances
(SingI d1, SingI d2) => SingI (Tuple3Sym2 d1 d2 :: TyFun c (a, b, c) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple3Sym2 d1 d2) # | |
SuppressUnusedWarnings (Tuple3Sym2 a6989586621679042332 a6989586621679042333 :: TyFun c (a, b, c) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple3Sym2 a6989586621679042332 a6989586621679042333 :: TyFun k3 (k1, k2, k3) -> Type) (a6989586621679042334 :: k3) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple3Sym2 a6989586621679042332 a6989586621679042333 :: TyFun k3 (k1, k2, k3) -> Type) (a6989586621679042334 :: k3) = '(a6989586621679042332, a6989586621679042333, a6989586621679042334) |
type family Tuple3Sym3 (a6989586621679042332 :: a) (a6989586621679042333 :: b) (a6989586621679042334 :: c) :: (a :: Type, b :: Type, c :: Type) where ... Source #
Tuple3Sym3 a6989586621679042332 a6989586621679042333 a6989586621679042334 = '(a6989586621679042332, a6989586621679042333, a6989586621679042334) |
data Tuple4Sym0 :: (~>) a ((~>) b ((~>) c ((~>) d (a :: Type, b :: Type, c :: Type, d :: Type)))) Source #
Instances
SingI (Tuple4Sym0 :: TyFun a (b ~> (c ~> (d ~> (a, b, c, d)))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing Tuple4Sym0 # | |
SuppressUnusedWarnings (Tuple4Sym0 :: TyFun a (b ~> (c ~> (d ~> (a, b, c, d)))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple4Sym0 :: TyFun a (b ~> (c ~> (d ~> (a, b, c, d)))) -> Type) (a6989586621679042377 :: a) Source # | |
Defined in Data.Singletons.Base.Instances |
data Tuple4Sym1 (a6989586621679042377 :: a) :: (~>) b ((~>) c ((~>) d (a :: Type, b :: Type, c :: Type, d :: Type))) Source #
Instances
SingI d1 => SingI (Tuple4Sym1 d1 :: TyFun b (c ~> (d2 ~> (a, b, c, d2))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple4Sym1 d1) # | |
SuppressUnusedWarnings (Tuple4Sym1 a6989586621679042377 :: TyFun b (c ~> (d ~> (a, b, c, d))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple4Sym1 a6989586621679042377 :: TyFun b (c ~> (d ~> (a, b, c, d))) -> Type) (a6989586621679042378 :: b) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple4Sym1 a6989586621679042377 :: TyFun b (c ~> (d ~> (a, b, c, d))) -> Type) (a6989586621679042378 :: b) = Tuple4Sym2 a6989586621679042377 a6989586621679042378 :: TyFun c (d ~> (a, b, c, d)) -> Type |
data Tuple4Sym2 (a6989586621679042377 :: a) (a6989586621679042378 :: b) :: (~>) c ((~>) d (a :: Type, b :: Type, c :: Type, d :: Type)) Source #
Instances
(SingI d1, SingI d2) => SingI (Tuple4Sym2 d1 d2 :: TyFun c (d3 ~> (a, b, c, d3)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple4Sym2 d1 d2) # | |
SuppressUnusedWarnings (Tuple4Sym2 a6989586621679042377 a6989586621679042378 :: TyFun c (d ~> (a, b, c, d)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple4Sym2 a6989586621679042377 a6989586621679042378 :: TyFun c (d ~> (a, b, c, d)) -> Type) (a6989586621679042379 :: c) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple4Sym2 a6989586621679042377 a6989586621679042378 :: TyFun c (d ~> (a, b, c, d)) -> Type) (a6989586621679042379 :: c) = Tuple4Sym3 a6989586621679042377 a6989586621679042378 a6989586621679042379 :: TyFun d (a, b, c, d) -> Type |
data Tuple4Sym3 (a6989586621679042377 :: a) (a6989586621679042378 :: b) (a6989586621679042379 :: c) :: (~>) d (a :: Type, b :: Type, c :: Type, d :: Type) Source #
Instances
(SingI d1, SingI d2, SingI d3) => SingI (Tuple4Sym3 d1 d2 d3 :: TyFun d4 (a, b, c, d4) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple4Sym3 d1 d2 d3) # | |
SuppressUnusedWarnings (Tuple4Sym3 a6989586621679042377 a6989586621679042378 a6989586621679042379 :: TyFun d (a, b, c, d) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple4Sym3 a6989586621679042377 a6989586621679042378 a6989586621679042379 :: TyFun k4 (k1, k2, k3, k4) -> Type) (a6989586621679042380 :: k4) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple4Sym3 a6989586621679042377 a6989586621679042378 a6989586621679042379 :: TyFun k4 (k1, k2, k3, k4) -> Type) (a6989586621679042380 :: k4) = '(a6989586621679042377, a6989586621679042378, a6989586621679042379, a6989586621679042380) |
type family Tuple4Sym4 (a6989586621679042377 :: a) (a6989586621679042378 :: b) (a6989586621679042379 :: c) (a6989586621679042380 :: d) :: (a :: Type, b :: Type, c :: Type, d :: Type) where ... Source #
Tuple4Sym4 a6989586621679042377 a6989586621679042378 a6989586621679042379 a6989586621679042380 = '(a6989586621679042377, a6989586621679042378, a6989586621679042379, a6989586621679042380) |
data Tuple5Sym0 :: (~>) a ((~>) b ((~>) c ((~>) d ((~>) e (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type))))) Source #
Instances
SingI (Tuple5Sym0 :: TyFun a (b ~> (c ~> (d ~> (e ~> (a, b, c, d, e))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing Tuple5Sym0 # | |
SuppressUnusedWarnings (Tuple5Sym0 :: TyFun a (b ~> (c ~> (d ~> (e ~> (a, b, c, d, e))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple5Sym0 :: TyFun a (b ~> (c ~> (d ~> (e ~> (a, b, c, d, e))))) -> Type) (a6989586621679042439 :: a) Source # | |
Defined in Data.Singletons.Base.Instances |
data Tuple5Sym1 (a6989586621679042439 :: a) :: (~>) b ((~>) c ((~>) d ((~>) e (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type)))) Source #
Instances
SingI d1 => SingI (Tuple5Sym1 d1 :: TyFun b (c ~> (d2 ~> (e ~> (a, b, c, d2, e)))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple5Sym1 d1) # | |
SuppressUnusedWarnings (Tuple5Sym1 a6989586621679042439 :: TyFun b (c ~> (d ~> (e ~> (a, b, c, d, e)))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple5Sym1 a6989586621679042439 :: TyFun b (c ~> (d ~> (e ~> (a, b, c, d, e)))) -> Type) (a6989586621679042440 :: b) Source # | |
Defined in Data.Singletons.Base.Instances |
data Tuple5Sym2 (a6989586621679042439 :: a) (a6989586621679042440 :: b) :: (~>) c ((~>) d ((~>) e (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type))) Source #
Instances
(SingI d1, SingI d2) => SingI (Tuple5Sym2 d1 d2 :: TyFun c (d3 ~> (e ~> (a, b, c, d3, e))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple5Sym2 d1 d2) # | |
SuppressUnusedWarnings (Tuple5Sym2 a6989586621679042439 a6989586621679042440 :: TyFun c (d ~> (e ~> (a, b, c, d, e))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple5Sym2 a6989586621679042439 a6989586621679042440 :: TyFun c (d ~> (e ~> (a, b, c, d, e))) -> Type) (a6989586621679042441 :: c) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple5Sym2 a6989586621679042439 a6989586621679042440 :: TyFun c (d ~> (e ~> (a, b, c, d, e))) -> Type) (a6989586621679042441 :: c) = Tuple5Sym3 a6989586621679042439 a6989586621679042440 a6989586621679042441 :: TyFun d (e ~> (a, b, c, d, e)) -> Type |
data Tuple5Sym3 (a6989586621679042439 :: a) (a6989586621679042440 :: b) (a6989586621679042441 :: c) :: (~>) d ((~>) e (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type)) Source #
Instances
(SingI d1, SingI d2, SingI d3) => SingI (Tuple5Sym3 d1 d2 d3 :: TyFun d4 (e ~> (a, b, c, d4, e)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple5Sym3 d1 d2 d3) # | |
SuppressUnusedWarnings (Tuple5Sym3 a6989586621679042439 a6989586621679042440 a6989586621679042441 :: TyFun d (e ~> (a, b, c, d, e)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple5Sym3 a6989586621679042439 a6989586621679042440 a6989586621679042441 :: TyFun d (e ~> (a, b, c, d, e)) -> Type) (a6989586621679042442 :: d) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple5Sym3 a6989586621679042439 a6989586621679042440 a6989586621679042441 :: TyFun d (e ~> (a, b, c, d, e)) -> Type) (a6989586621679042442 :: d) = Tuple5Sym4 a6989586621679042439 a6989586621679042440 a6989586621679042441 a6989586621679042442 :: TyFun e (a, b, c, d, e) -> Type |
data Tuple5Sym4 (a6989586621679042439 :: a) (a6989586621679042440 :: b) (a6989586621679042441 :: c) (a6989586621679042442 :: d) :: (~>) e (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type) Source #
Instances
(SingI d1, SingI d2, SingI d3, SingI d5) => SingI (Tuple5Sym4 d1 d2 d3 d5 :: TyFun e (a, b, c, d4, e) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple5Sym4 d1 d2 d3 d5) # | |
SuppressUnusedWarnings (Tuple5Sym4 a6989586621679042439 a6989586621679042440 a6989586621679042441 a6989586621679042442 :: TyFun e (a, b, c, d, e) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple5Sym4 a6989586621679042439 a6989586621679042440 a6989586621679042441 a6989586621679042442 :: TyFun k5 (k1, k2, k3, k4, k5) -> Type) (a6989586621679042443 :: k5) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple5Sym4 a6989586621679042439 a6989586621679042440 a6989586621679042441 a6989586621679042442 :: TyFun k5 (k1, k2, k3, k4, k5) -> Type) (a6989586621679042443 :: k5) = '(a6989586621679042439, a6989586621679042440, a6989586621679042441, a6989586621679042442, a6989586621679042443) |
type family Tuple5Sym5 (a6989586621679042439 :: a) (a6989586621679042440 :: b) (a6989586621679042441 :: c) (a6989586621679042442 :: d) (a6989586621679042443 :: e) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type) where ... Source #
Tuple5Sym5 a6989586621679042439 a6989586621679042440 a6989586621679042441 a6989586621679042442 a6989586621679042443 = '(a6989586621679042439, a6989586621679042440, a6989586621679042441, a6989586621679042442, a6989586621679042443) |
data Tuple6Sym0 :: (~>) a ((~>) b ((~>) c ((~>) d ((~>) e ((~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type)))))) Source #
Instances
SingI (Tuple6Sym0 :: TyFun a (b ~> (c ~> (d ~> (e ~> (f ~> (a, b, c, d, e, f)))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing Tuple6Sym0 # | |
SuppressUnusedWarnings (Tuple6Sym0 :: TyFun a (b ~> (c ~> (d ~> (e ~> (f ~> (a, b, c, d, e, f)))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple6Sym0 :: TyFun a (b ~> (c ~> (d ~> (e ~> (f ~> (a, b, c, d, e, f)))))) -> Type) (a6989586621679042520 :: a) Source # | |
data Tuple6Sym1 (a6989586621679042520 :: a) :: (~>) b ((~>) c ((~>) d ((~>) e ((~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type))))) Source #
Instances
SingI d1 => SingI (Tuple6Sym1 d1 :: TyFun b (c ~> (d2 ~> (e ~> (f ~> (a, b, c, d2, e, f))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple6Sym1 d1) # | |
SuppressUnusedWarnings (Tuple6Sym1 a6989586621679042520 :: TyFun b (c ~> (d ~> (e ~> (f ~> (a, b, c, d, e, f))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple6Sym1 a6989586621679042520 :: TyFun b (c ~> (d ~> (e ~> (f ~> (a, b, c, d, e, f))))) -> Type) (a6989586621679042521 :: b) Source # | |
Defined in Data.Singletons.Base.Instances |
data Tuple6Sym2 (a6989586621679042520 :: a) (a6989586621679042521 :: b) :: (~>) c ((~>) d ((~>) e ((~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type)))) Source #
Instances
(SingI d1, SingI d2) => SingI (Tuple6Sym2 d1 d2 :: TyFun c (d3 ~> (e ~> (f ~> (a, b, c, d3, e, f)))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple6Sym2 d1 d2) # | |
SuppressUnusedWarnings (Tuple6Sym2 a6989586621679042520 a6989586621679042521 :: TyFun c (d ~> (e ~> (f ~> (a, b, c, d, e, f)))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple6Sym2 a6989586621679042520 a6989586621679042521 :: TyFun c (d ~> (e ~> (f ~> (a, b, c, d, e, f)))) -> Type) (a6989586621679042522 :: c) Source # | |
Defined in Data.Singletons.Base.Instances |
data Tuple6Sym3 (a6989586621679042520 :: a) (a6989586621679042521 :: b) (a6989586621679042522 :: c) :: (~>) d ((~>) e ((~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type))) Source #
Instances
(SingI d1, SingI d2, SingI d3) => SingI (Tuple6Sym3 d1 d2 d3 :: TyFun d4 (e ~> (f ~> (a, b, c, d4, e, f))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple6Sym3 d1 d2 d3) # | |
SuppressUnusedWarnings (Tuple6Sym3 a6989586621679042520 a6989586621679042521 a6989586621679042522 :: TyFun d (e ~> (f ~> (a, b, c, d, e, f))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple6Sym3 a6989586621679042520 a6989586621679042521 a6989586621679042522 :: TyFun d (e ~> (f ~> (a, b, c, d, e, f))) -> Type) (a6989586621679042523 :: d) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple6Sym3 a6989586621679042520 a6989586621679042521 a6989586621679042522 :: TyFun d (e ~> (f ~> (a, b, c, d, e, f))) -> Type) (a6989586621679042523 :: d) = Tuple6Sym4 a6989586621679042520 a6989586621679042521 a6989586621679042522 a6989586621679042523 :: TyFun e (f ~> (a, b, c, d, e, f)) -> Type |
data Tuple6Sym4 (a6989586621679042520 :: a) (a6989586621679042521 :: b) (a6989586621679042522 :: c) (a6989586621679042523 :: d) :: (~>) e ((~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type)) Source #
Instances
(SingI d1, SingI d2, SingI d3, SingI d5) => SingI (Tuple6Sym4 d1 d2 d3 d5 :: TyFun e (f ~> (a, b, c, d4, e, f)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple6Sym4 d1 d2 d3 d5) # | |
SuppressUnusedWarnings (Tuple6Sym4 a6989586621679042520 a6989586621679042521 a6989586621679042522 a6989586621679042523 :: TyFun e (f ~> (a, b, c, d, e, f)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple6Sym4 a6989586621679042520 a6989586621679042521 a6989586621679042522 a6989586621679042523 :: TyFun e (f ~> (a, b, c, d, e, f)) -> Type) (a6989586621679042524 :: e) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple6Sym4 a6989586621679042520 a6989586621679042521 a6989586621679042522 a6989586621679042523 :: TyFun e (f ~> (a, b, c, d, e, f)) -> Type) (a6989586621679042524 :: e) = Tuple6Sym5 a6989586621679042520 a6989586621679042521 a6989586621679042522 a6989586621679042523 a6989586621679042524 :: TyFun f (a, b, c, d, e, f) -> Type |
data Tuple6Sym5 (a6989586621679042520 :: a) (a6989586621679042521 :: b) (a6989586621679042522 :: c) (a6989586621679042523 :: d) (a6989586621679042524 :: e) :: (~>) f (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type) Source #
Instances
(SingI d1, SingI d2, SingI d3, SingI d5, SingI d6) => SingI (Tuple6Sym5 d1 d2 d3 d5 d6 :: TyFun f (a, b, c, d4, e, f) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple6Sym5 d1 d2 d3 d5 d6) # | |
SuppressUnusedWarnings (Tuple6Sym5 a6989586621679042520 a6989586621679042521 a6989586621679042522 a6989586621679042523 a6989586621679042524 :: TyFun f (a, b, c, d, e, f) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple6Sym5 a6989586621679042520 a6989586621679042521 a6989586621679042522 a6989586621679042523 a6989586621679042524 :: TyFun k6 (k1, k2, k3, k4, k5, k6) -> Type) (a6989586621679042525 :: k6) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple6Sym5 a6989586621679042520 a6989586621679042521 a6989586621679042522 a6989586621679042523 a6989586621679042524 :: TyFun k6 (k1, k2, k3, k4, k5, k6) -> Type) (a6989586621679042525 :: k6) = '(a6989586621679042520, a6989586621679042521, a6989586621679042522, a6989586621679042523, a6989586621679042524, a6989586621679042525) |
type family Tuple6Sym6 (a6989586621679042520 :: a) (a6989586621679042521 :: b) (a6989586621679042522 :: c) (a6989586621679042523 :: d) (a6989586621679042524 :: e) (a6989586621679042525 :: f) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type) where ... Source #
Tuple6Sym6 a6989586621679042520 a6989586621679042521 a6989586621679042522 a6989586621679042523 a6989586621679042524 a6989586621679042525 = '(a6989586621679042520, a6989586621679042521, a6989586621679042522, a6989586621679042523, a6989586621679042524, a6989586621679042525) |
data Tuple7Sym0 :: (~>) a ((~>) b ((~>) c ((~>) d ((~>) e ((~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type))))))) Source #
Instances
SingI (Tuple7Sym0 :: TyFun a (b ~> (c ~> (d ~> (e ~> (f ~> (g ~> (a, b, c, d, e, f, g))))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing Tuple7Sym0 # | |
SuppressUnusedWarnings (Tuple7Sym0 :: TyFun a (b ~> (c ~> (d ~> (e ~> (f ~> (g ~> (a, b, c, d, e, f, g))))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple7Sym0 :: TyFun a (b ~> (c ~> (d ~> (e ~> (f ~> (g ~> (a, b, c, d, e, f, g))))))) -> Type) (a6989586621679042622 :: a) Source # | |
data Tuple7Sym1 (a6989586621679042622 :: a) :: (~>) b ((~>) c ((~>) d ((~>) e ((~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type)))))) Source #
Instances
SingI d1 => SingI (Tuple7Sym1 d1 :: TyFun b (c ~> (d2 ~> (e ~> (f ~> (g ~> (a, b, c, d2, e, f, g)))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple7Sym1 d1) # | |
SuppressUnusedWarnings (Tuple7Sym1 a6989586621679042622 :: TyFun b (c ~> (d ~> (e ~> (f ~> (g ~> (a, b, c, d, e, f, g)))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple7Sym1 a6989586621679042622 :: TyFun b (c ~> (d ~> (e ~> (f ~> (g ~> (a, b, c, d, e, f, g)))))) -> Type) (a6989586621679042623 :: b) Source # | |
Defined in Data.Singletons.Base.Instances |
data Tuple7Sym2 (a6989586621679042622 :: a) (a6989586621679042623 :: b) :: (~>) c ((~>) d ((~>) e ((~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type))))) Source #
Instances
(SingI d1, SingI d2) => SingI (Tuple7Sym2 d1 d2 :: TyFun c (d3 ~> (e ~> (f ~> (g ~> (a, b, c, d3, e, f, g))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple7Sym2 d1 d2) # | |
SuppressUnusedWarnings (Tuple7Sym2 a6989586621679042622 a6989586621679042623 :: TyFun c (d ~> (e ~> (f ~> (g ~> (a, b, c, d, e, f, g))))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple7Sym2 a6989586621679042622 a6989586621679042623 :: TyFun c (d ~> (e ~> (f ~> (g ~> (a, b, c, d, e, f, g))))) -> Type) (a6989586621679042624 :: c) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple7Sym2 a6989586621679042622 a6989586621679042623 :: TyFun c (d ~> (e ~> (f ~> (g ~> (a, b, c, d, e, f, g))))) -> Type) (a6989586621679042624 :: c) = Tuple7Sym3 a6989586621679042622 a6989586621679042623 a6989586621679042624 :: TyFun d (e ~> (f ~> (g ~> (a, b, c, d, e, f, g)))) -> Type |
data Tuple7Sym3 (a6989586621679042622 :: a) (a6989586621679042623 :: b) (a6989586621679042624 :: c) :: (~>) d ((~>) e ((~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type)))) Source #
Instances
(SingI d1, SingI d2, SingI d3) => SingI (Tuple7Sym3 d1 d2 d3 :: TyFun d4 (e ~> (f ~> (g ~> (a, b, c, d4, e, f, g)))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple7Sym3 d1 d2 d3) # | |
SuppressUnusedWarnings (Tuple7Sym3 a6989586621679042622 a6989586621679042623 a6989586621679042624 :: TyFun d (e ~> (f ~> (g ~> (a, b, c, d, e, f, g)))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple7Sym3 a6989586621679042622 a6989586621679042623 a6989586621679042624 :: TyFun d (e ~> (f ~> (g ~> (a, b, c, d, e, f, g)))) -> Type) (a6989586621679042625 :: d) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple7Sym3 a6989586621679042622 a6989586621679042623 a6989586621679042624 :: TyFun d (e ~> (f ~> (g ~> (a, b, c, d, e, f, g)))) -> Type) (a6989586621679042625 :: d) = Tuple7Sym4 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 :: TyFun e (f ~> (g ~> (a, b, c, d, e, f, g))) -> Type |
data Tuple7Sym4 (a6989586621679042622 :: a) (a6989586621679042623 :: b) (a6989586621679042624 :: c) (a6989586621679042625 :: d) :: (~>) e ((~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type))) Source #
Instances
(SingI d1, SingI d2, SingI d3, SingI d5) => SingI (Tuple7Sym4 d1 d2 d3 d5 :: TyFun e (f ~> (g ~> (a, b, c, d4, e, f, g))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple7Sym4 d1 d2 d3 d5) # | |
SuppressUnusedWarnings (Tuple7Sym4 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 :: TyFun e (f ~> (g ~> (a, b, c, d, e, f, g))) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple7Sym4 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 :: TyFun e (f ~> (g ~> (a, b, c, d, e, f, g))) -> Type) (a6989586621679042626 :: e) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple7Sym4 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 :: TyFun e (f ~> (g ~> (a, b, c, d, e, f, g))) -> Type) (a6989586621679042626 :: e) = Tuple7Sym5 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 a6989586621679042626 :: TyFun f (g ~> (a, b, c, d, e, f, g)) -> Type |
data Tuple7Sym5 (a6989586621679042622 :: a) (a6989586621679042623 :: b) (a6989586621679042624 :: c) (a6989586621679042625 :: d) (a6989586621679042626 :: e) :: (~>) f ((~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type)) Source #
Instances
(SingI d1, SingI d2, SingI d3, SingI d5, SingI d6) => SingI (Tuple7Sym5 d1 d2 d3 d5 d6 :: TyFun f (g ~> (a, b, c, d4, e, f, g)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple7Sym5 d1 d2 d3 d5 d6) # | |
SuppressUnusedWarnings (Tuple7Sym5 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 a6989586621679042626 :: TyFun f (g ~> (a, b, c, d, e, f, g)) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple7Sym5 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 a6989586621679042626 :: TyFun f (g ~> (a, b, c, d, e, f, g)) -> Type) (a6989586621679042627 :: f) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple7Sym5 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 a6989586621679042626 :: TyFun f (g ~> (a, b, c, d, e, f, g)) -> Type) (a6989586621679042627 :: f) = Tuple7Sym6 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 a6989586621679042626 a6989586621679042627 :: TyFun g (a, b, c, d, e, f, g) -> Type |
data Tuple7Sym6 (a6989586621679042622 :: a) (a6989586621679042623 :: b) (a6989586621679042624 :: c) (a6989586621679042625 :: d) (a6989586621679042626 :: e) (a6989586621679042627 :: f) :: (~>) g (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type) Source #
Instances
(SingI d1, SingI d2, SingI d3, SingI d5, SingI d6, SingI d7) => SingI (Tuple7Sym6 d1 d2 d3 d5 d6 d7 :: TyFun g (a, b, c, d4, e, f, g) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances sing :: Sing (Tuple7Sym6 d1 d2 d3 d5 d6 d7) # | |
SuppressUnusedWarnings (Tuple7Sym6 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 a6989586621679042626 a6989586621679042627 :: TyFun g (a, b, c, d, e, f, g) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply (Tuple7Sym6 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 a6989586621679042626 a6989586621679042627 :: TyFun k7 (k1, k2, k3, k4, k5, k6, k7) -> Type) (a6989586621679042628 :: k7) Source # | |
Defined in Data.Singletons.Base.Instances type Apply (Tuple7Sym6 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 a6989586621679042626 a6989586621679042627 :: TyFun k7 (k1, k2, k3, k4, k5, k6, k7) -> Type) (a6989586621679042628 :: k7) = '(a6989586621679042622, a6989586621679042623, a6989586621679042624, a6989586621679042625, a6989586621679042626, a6989586621679042627, a6989586621679042628) |
type family Tuple7Sym7 (a6989586621679042622 :: a) (a6989586621679042623 :: b) (a6989586621679042624 :: c) (a6989586621679042625 :: d) (a6989586621679042626 :: e) (a6989586621679042627 :: f) (a6989586621679042628 :: g) :: (a :: Type, b :: Type, c :: Type, d :: Type, e :: Type, f :: Type, g :: Type) where ... Source #
Tuple7Sym7 a6989586621679042622 a6989586621679042623 a6989586621679042624 a6989586621679042625 a6989586621679042626 a6989586621679042627 a6989586621679042628 = '(a6989586621679042622, a6989586621679042623, a6989586621679042624, a6989586621679042625, a6989586621679042626, a6989586621679042627, a6989586621679042628) |
data CompareSym0 :: (~>) a ((~>) a Ordering) Source #
Instances
SOrd a => SingI (CompareSym0 :: TyFun a (a ~> Ordering) -> Type) Source # | |
Defined in Data.Ord.Singletons sing :: Sing CompareSym0 # | |
SuppressUnusedWarnings (CompareSym0 :: TyFun a (a ~> Ordering) -> Type) Source # | |
Defined in Data.Ord.Singletons suppressUnusedWarnings :: () # | |
type Apply (CompareSym0 :: TyFun a (a ~> Ordering) -> Type) (a6989586621679170735 :: a) Source # | |
Defined in Data.Ord.Singletons type Apply (CompareSym0 :: TyFun a (a ~> Ordering) -> Type) (a6989586621679170735 :: a) = CompareSym1 a6989586621679170735 |
data CompareSym1 (a6989586621679170735 :: a) :: (~>) a Ordering Source #
Instances
(SOrd a, SingI d) => SingI (CompareSym1 d :: TyFun a Ordering -> Type) Source # | |
Defined in Data.Ord.Singletons sing :: Sing (CompareSym1 d) # | |
SuppressUnusedWarnings (CompareSym1 a6989586621679170735 :: TyFun a Ordering -> Type) Source # | |
Defined in Data.Ord.Singletons suppressUnusedWarnings :: () # | |
type Apply (CompareSym1 a6989586621679170735 :: TyFun a Ordering -> Type) (a6989586621679170736 :: a) Source # | |
Defined in Data.Ord.Singletons |
type family CompareSym2 (a6989586621679170735 :: a) (a6989586621679170736 :: a) :: Ordering where ... Source #
CompareSym2 a6989586621679170735 a6989586621679170736 = Compare a6989586621679170735 a6989586621679170736 |
data ThenCmpSym0 :: (~>) Ordering ((~>) Ordering Ordering) Source #
Instances
SingI ThenCmpSym0 Source # | |
Defined in Data.Ord.Singletons sing :: Sing ThenCmpSym0 # | |
SuppressUnusedWarnings ThenCmpSym0 Source # | |
Defined in Data.Ord.Singletons suppressUnusedWarnings :: () # | |
type Apply ThenCmpSym0 (a6989586621679170719 :: Ordering) Source # | |
Defined in Data.Ord.Singletons |
data ThenCmpSym1 (a6989586621679170719 :: Ordering) :: (~>) Ordering Ordering Source #
Instances
SingI d => SingI (ThenCmpSym1 d :: TyFun Ordering Ordering -> Type) Source # | |
Defined in Data.Ord.Singletons sing :: Sing (ThenCmpSym1 d) # | |
SuppressUnusedWarnings (ThenCmpSym1 a6989586621679170719 :: TyFun Ordering Ordering -> Type) Source # | |
Defined in Data.Ord.Singletons suppressUnusedWarnings :: () # | |
type Apply (ThenCmpSym1 a6989586621679170719 :: TyFun Ordering Ordering -> Type) (a6989586621679170720 :: Ordering) Source # | |
Defined in Data.Ord.Singletons |
type family ThenCmpSym2 (a6989586621679170719 :: Ordering) (a6989586621679170720 :: Ordering) :: Ordering where ... Source #
ThenCmpSym2 a6989586621679170719 a6989586621679170720 = ThenCmp a6989586621679170719 a6989586621679170720 |
data FoldlSym0 :: (~>) ((~>) b ((~>) a b)) ((~>) b ((~>) (t a) b)) Source #
Instances
SFoldable t => SingI (FoldlSym0 :: TyFun (b ~> (a ~> b)) (b ~> (t a ~> b)) -> Type) Source # | |
Defined in Data.Foldable.Singletons | |
SuppressUnusedWarnings (FoldlSym0 :: TyFun (b ~> (a ~> b)) (b ~> (t a ~> b)) -> Type) Source # | |
Defined in Data.Foldable.Singletons suppressUnusedWarnings :: () # | |
type Apply (FoldlSym0 :: TyFun (b ~> (a ~> b)) (b ~> (t a ~> b)) -> Type) (a6989586621680367299 :: b ~> (a ~> b)) Source # | |
data FoldlSym1 (a6989586621680367299 :: (~>) b ((~>) a b)) :: (~>) b ((~>) (t a) b) Source #
Instances
(SFoldable t, SingI d) => SingI (FoldlSym1 d :: TyFun b (t a ~> b) -> Type) Source # | |
Defined in Data.Foldable.Singletons | |
SuppressUnusedWarnings (FoldlSym1 a6989586621680367299 :: TyFun b (t a ~> b) -> Type) Source # | |
Defined in Data.Foldable.Singletons suppressUnusedWarnings :: () # | |
type Apply (FoldlSym1 a6989586621680367299 :: TyFun b (t a ~> b) -> Type) (a6989586621680367300 :: b) Source # | |
data FoldlSym2 (a6989586621680367299 :: (~>) b ((~>) a b)) (a6989586621680367300 :: b) :: (~>) (t a) b Source #
Instances
(SFoldable t, SingI d1, SingI d2) => SingI (FoldlSym2 d1 d2 :: TyFun (t a) b -> Type) Source # | |
Defined in Data.Foldable.Singletons | |
SuppressUnusedWarnings (FoldlSym2 a6989586621680367299 a6989586621680367300 :: TyFun (t a) b -> Type) Source # | |
Defined in Data.Foldable.Singletons suppressUnusedWarnings :: () # | |
type Apply (FoldlSym2 a6989586621680367299 a6989586621680367300 :: TyFun (t a) b -> Type) (a6989586621680367301 :: t a) Source # | |
type family FoldlSym3 (a6989586621680367299 :: (~>) b ((~>) a b)) (a6989586621680367300 :: b) (a6989586621680367301 :: t a) :: b where ... Source #
type family MinBoundSym0 :: a where ... Source #
type family MaxBoundSym0 :: a where ... Source #
data ShowsPrecSym0 :: (~>) Nat ((~>) a ((~>) Symbol Symbol)) Source #
Instances
SShow a => SingI (ShowsPrecSym0 :: TyFun Nat (a ~> (Symbol ~> Symbol)) -> Type) Source # | |
Defined in Text.Show.Singletons sing :: Sing ShowsPrecSym0 # | |
SuppressUnusedWarnings (ShowsPrecSym0 :: TyFun Nat (a ~> (Symbol ~> Symbol)) -> Type) Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply (ShowsPrecSym0 :: TyFun Nat (a ~> (Symbol ~> Symbol)) -> Type) (a6989586621680196507 :: Nat) Source # | |
data ShowsPrecSym1 (a6989586621680196507 :: Nat) :: (~>) a ((~>) Symbol Symbol) Source #
Instances
(SShow a, SingI d) => SingI (ShowsPrecSym1 d :: TyFun a (Symbol ~> Symbol) -> Type) Source # | |
Defined in Text.Show.Singletons sing :: Sing (ShowsPrecSym1 d) # | |
SuppressUnusedWarnings (ShowsPrecSym1 a6989586621680196507 :: TyFun a (Symbol ~> Symbol) -> Type) Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply (ShowsPrecSym1 a6989586621680196507 :: TyFun a (Symbol ~> Symbol) -> Type) (a6989586621680196508 :: a) Source # | |
Defined in Text.Show.Singletons type Apply (ShowsPrecSym1 a6989586621680196507 :: TyFun a (Symbol ~> Symbol) -> Type) (a6989586621680196508 :: a) = ShowsPrecSym2 a6989586621680196507 a6989586621680196508 |
data ShowsPrecSym2 (a6989586621680196507 :: Nat) (a6989586621680196508 :: a) :: (~>) Symbol Symbol Source #
Instances
(SShow a, SingI d1, SingI d2) => SingI (ShowsPrecSym2 d1 d2 :: TyFun Symbol Symbol -> Type) Source # | |
Defined in Text.Show.Singletons sing :: Sing (ShowsPrecSym2 d1 d2) # | |
SuppressUnusedWarnings (ShowsPrecSym2 a6989586621680196507 a6989586621680196508 :: TyFun Symbol Symbol -> Type) Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply (ShowsPrecSym2 a6989586621680196507 a6989586621680196508 :: TyFun Symbol Symbol -> Type) (a6989586621680196509 :: Symbol) Source # | |
Defined in Text.Show.Singletons |
type family ShowsPrecSym3 (a6989586621680196507 :: Nat) (a6989586621680196508 :: a) (a6989586621680196509 :: Symbol) :: Symbol where ... Source #
ShowsPrecSym3 a6989586621680196507 a6989586621680196508 a6989586621680196509 = ShowsPrec a6989586621680196507 a6989586621680196508 a6989586621680196509 |
data ShowStringSym0 :: (~>) Symbol ((~>) Symbol Symbol) Source #
Instances
SingI ShowStringSym0 Source # | |
Defined in Text.Show.Singletons sing :: Sing ShowStringSym0 # | |
SuppressUnusedWarnings ShowStringSym0 Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply ShowStringSym0 (a6989586621680196462 :: Symbol) Source # | |
Defined in Text.Show.Singletons |
data ShowStringSym1 (a6989586621680196462 :: Symbol) :: (~>) Symbol Symbol Source #
Instances
SingI d => SingI (ShowStringSym1 d :: TyFun Symbol Symbol -> Type) Source # | |
Defined in Text.Show.Singletons sing :: Sing (ShowStringSym1 d) # | |
SuppressUnusedWarnings (ShowStringSym1 a6989586621680196462 :: TyFun Symbol Symbol -> Type) Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply (ShowStringSym1 a6989586621680196462 :: TyFun Symbol Symbol -> Type) (a6989586621680196463 :: Symbol) Source # | |
Defined in Text.Show.Singletons type Apply (ShowStringSym1 a6989586621680196462 :: TyFun Symbol Symbol -> Type) (a6989586621680196463 :: Symbol) = ShowString a6989586621680196462 a6989586621680196463 |
type family ShowStringSym2 (a6989586621680196462 :: Symbol) (a6989586621680196463 :: Symbol) :: Symbol where ... Source #
ShowStringSym2 a6989586621680196462 a6989586621680196463 = ShowString a6989586621680196462 a6989586621680196463 |
data ShowParenSym0 :: (~>) Bool ((~>) ((~>) Symbol Symbol) ((~>) Symbol Symbol)) Source #
Instances
SingI ShowParenSym0 Source # | |
Defined in Text.Show.Singletons sing :: Sing ShowParenSym0 # | |
SuppressUnusedWarnings ShowParenSym0 Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply ShowParenSym0 (a6989586621680196446 :: Bool) Source # | |
Defined in Text.Show.Singletons |
data ShowParenSym1 (a6989586621680196446 :: Bool) :: (~>) ((~>) Symbol Symbol) ((~>) Symbol Symbol) Source #
Instances
SingI d => SingI (ShowParenSym1 d :: TyFun (Symbol ~> Symbol) (Symbol ~> Symbol) -> Type) Source # | |
Defined in Text.Show.Singletons sing :: Sing (ShowParenSym1 d) # | |
SuppressUnusedWarnings (ShowParenSym1 a6989586621680196446 :: TyFun (Symbol ~> Symbol) (Symbol ~> Symbol) -> Type) Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply (ShowParenSym1 a6989586621680196446 :: TyFun (Symbol ~> Symbol) (Symbol ~> Symbol) -> Type) (a6989586621680196447 :: Symbol ~> Symbol) Source # | |
Defined in Text.Show.Singletons |
data ShowParenSym2 (a6989586621680196446 :: Bool) (a6989586621680196447 :: (~>) Symbol Symbol) :: (~>) Symbol Symbol Source #
Instances
(SingI d1, SingI d2) => SingI (ShowParenSym2 d1 d2 :: TyFun Symbol Symbol -> Type) Source # | |
Defined in Text.Show.Singletons sing :: Sing (ShowParenSym2 d1 d2) # | |
SuppressUnusedWarnings (ShowParenSym2 a6989586621680196446 a6989586621680196447 :: TyFun Symbol Symbol -> Type) Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply (ShowParenSym2 a6989586621680196446 a6989586621680196447 :: TyFun Symbol Symbol -> Type) (a6989586621680196448 :: Symbol) Source # | |
Defined in Text.Show.Singletons |
data ShowSpaceSym0 :: (~>) Symbol Symbol Source #
Instances
SingI ShowSpaceSym0 Source # | |
Defined in Text.Show.Singletons sing :: Sing ShowSpaceSym0 # | |
SuppressUnusedWarnings ShowSpaceSym0 Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply ShowSpaceSym0 (a6989586621680196434 :: Symbol) Source # | |
Defined in Text.Show.Singletons |
type family ShowSpaceSym1 (a6989586621680196434 :: Symbol) :: Symbol where ... Source #
ShowSpaceSym1 a6989586621680196434 = ShowSpace a6989586621680196434 |
data ShowCharSym0 :: (~>) Symbol ((~>) Symbol Symbol) Source #
Instances
SingI ShowCharSym0 Source # | |
Defined in Text.Show.Singletons sing :: Sing ShowCharSym0 # | |
SuppressUnusedWarnings ShowCharSym0 Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply ShowCharSym0 (a6989586621680196473 :: Symbol) Source # | |
Defined in Text.Show.Singletons |
data ShowCharSym1 (a6989586621680196473 :: Symbol) :: (~>) Symbol Symbol Source #
Instances
SingI d => SingI (ShowCharSym1 d :: TyFun Symbol Symbol -> Type) Source # | |
Defined in Text.Show.Singletons sing :: Sing (ShowCharSym1 d) # | |
SuppressUnusedWarnings (ShowCharSym1 a6989586621680196473 :: TyFun Symbol Symbol -> Type) Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply (ShowCharSym1 a6989586621680196473 :: TyFun Symbol Symbol -> Type) (a6989586621680196474 :: Symbol) Source # | |
Defined in Text.Show.Singletons |
type family ShowCharSym2 (a6989586621680196473 :: Symbol) (a6989586621680196474 :: Symbol) :: Symbol where ... Source #
ShowCharSym2 a6989586621680196473 a6989586621680196474 = ShowChar a6989586621680196473 a6989586621680196474 |
data ShowCommaSpaceSym0 :: (~>) Symbol Symbol Source #
Instances
SingI ShowCommaSpaceSym0 Source # | |
Defined in Text.Show.Singletons | |
SuppressUnusedWarnings ShowCommaSpaceSym0 Source # | |
Defined in Text.Show.Singletons suppressUnusedWarnings :: () # | |
type Apply ShowCommaSpaceSym0 (a6989586621680196428 :: Symbol) Source # | |
Defined in Text.Show.Singletons type Apply ShowCommaSpaceSym0 (a6989586621680196428 :: Symbol) = ShowCommaSpace a6989586621680196428 |
type family ShowCommaSpaceSym1 (a6989586621680196428 :: Symbol) :: Symbol where ... Source #
ShowCommaSpaceSym1 a6989586621680196428 = ShowCommaSpace a6989586621680196428 |
data FromIntegerSym0 :: (~>) Nat a Source #
Instances
SNum a => SingI (FromIntegerSym0 :: TyFun Nat a -> Type) Source # | |
Defined in GHC.Num.Singletons sing :: Sing FromIntegerSym0 # | |
SuppressUnusedWarnings (FromIntegerSym0 :: TyFun Nat a -> Type) Source # | |
Defined in GHC.Num.Singletons suppressUnusedWarnings :: () # | |
type Apply (FromIntegerSym0 :: TyFun Nat k2 -> Type) (a6989586621679550152 :: Nat) Source # | |
Defined in GHC.Num.Singletons type Apply (FromIntegerSym0 :: TyFun Nat k2 -> Type) (a6989586621679550152 :: Nat) = FromInteger a6989586621679550152 :: k2 |
type family FromIntegerSym1 (a6989586621679550152 :: Nat) :: a where ... Source #
FromIntegerSym1 a6989586621679550152 = FromInteger a6989586621679550152 |
data NegateSym0 :: (~>) a a Source #
Instances
SNum a => SingI (NegateSym0 :: TyFun a a -> Type) Source # | |
Defined in GHC.Num.Singletons sing :: Sing NegateSym0 # | |
SuppressUnusedWarnings (NegateSym0 :: TyFun a a -> Type) Source # | |
Defined in GHC.Num.Singletons suppressUnusedWarnings :: () # | |
type Apply (NegateSym0 :: TyFun a a -> Type) (a6989586621679550143 :: a) Source # | |
Defined in GHC.Num.Singletons type Apply (NegateSym0 :: TyFun a a -> Type) (a6989586621679550143 :: a) = Negate a6989586621679550143 |
type family NegateSym1 (a6989586621679550143 :: a) :: a where ... Source #
NegateSym1 a6989586621679550143 = Negate a6989586621679550143 |
data FromStringSym0 :: (~>) Symbol a Source #
Instances
SIsString a => SingI (FromStringSym0 :: TyFun Symbol a -> Type) Source # | |
Defined in Data.String.Singletons sing :: Sing FromStringSym0 # | |
SuppressUnusedWarnings (FromStringSym0 :: TyFun Symbol a -> Type) Source # | |
Defined in Data.String.Singletons suppressUnusedWarnings :: () # | |
type Apply (FromStringSym0 :: TyFun Symbol k2 -> Type) (a6989586621681219672 :: Symbol) Source # | |
Defined in Data.String.Singletons type Apply (FromStringSym0 :: TyFun Symbol k2 -> Type) (a6989586621681219672 :: Symbol) = FromString a6989586621681219672 :: k2 |
type family FromStringSym1 (a6989586621681219672 :: Symbol) :: a where ... Source #
FromStringSym1 a6989586621681219672 = FromString a6989586621681219672 |
data FmapSym0 :: (~>) ((~>) a b) ((~>) (f a) (f b)) Source #
Instances
SFunctor f => SingI (FmapSym0 :: TyFun (a ~> b) (f a ~> f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
SuppressUnusedWarnings (FmapSym0 :: TyFun (a ~> b) (f a ~> f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (FmapSym0 :: TyFun (a ~> b) (f a ~> f b) -> Type) (a6989586621679319155 :: a ~> b) Source # | |
data FmapSym1 (a6989586621679319155 :: (~>) a b) :: (~>) (f a) (f b) Source #
Instances
(SFunctor f, SingI d) => SingI (FmapSym1 d :: TyFun (f a) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
SuppressUnusedWarnings (FmapSym1 a6989586621679319155 :: TyFun (f a) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (FmapSym1 a6989586621679319155 :: TyFun (f a) (f b) -> Type) (a6989586621679319156 :: f a) Source # | |
type family FmapSym2 (a6989586621679319155 :: (~>) a b) (a6989586621679319156 :: f a) :: f b where ... Source #
data (<$@#@$) :: (~>) a ((~>) (f b) (f a)) infixl 4 Source #
Instances
SFunctor f => SingI ((<$@#@$) :: TyFun a (f b ~> f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
SuppressUnusedWarnings ((<$@#@$) :: TyFun a (f b ~> f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<$@#@$) :: TyFun a (f b ~> f a) -> Type) (a6989586621679319160 :: a) Source # | |
data (<$@#@$$) (a6989586621679319160 :: a) :: (~>) (f b) (f a) infixl 4 Source #
Instances
(SFunctor f, SingI d) => SingI ((<$@#@$$) d :: TyFun (f b) (f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
SuppressUnusedWarnings ((<$@#@$$) a6989586621679319160 :: TyFun (f b) (f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<$@#@$$) a6989586621679319160 :: TyFun (f b) (f a) -> Type) (a6989586621679319161 :: f b) Source # | |
type family (a6989586621679319160 :: a) <$@#@$$$ (a6989586621679319161 :: f b) :: f a where ... infixl 4 Source #
data FoldMapSym0 :: (~>) ((~>) a m) ((~>) (t a) m) Source #
Instances
(SFoldable t, SMonoid m) => SingI (FoldMapSym0 :: TyFun (a ~> m) (t a ~> m) -> Type) Source # | |
Defined in Data.Foldable.Singletons sing :: Sing FoldMapSym0 # | |
SuppressUnusedWarnings (FoldMapSym0 :: TyFun (a ~> m) (t a ~> m) -> Type) Source # | |
Defined in Data.Foldable.Singletons suppressUnusedWarnings :: () # | |
type Apply (FoldMapSym0 :: TyFun (a ~> m) (t a ~> m) -> Type) (a6989586621680367279 :: a ~> m) Source # | |
Defined in Data.Foldable.Singletons type Apply (FoldMapSym0 :: TyFun (a ~> m) (t a ~> m) -> Type) (a6989586621680367279 :: a ~> m) = FoldMapSym1 a6989586621680367279 :: TyFun (t a) m -> Type |
data FoldMapSym1 (a6989586621680367279 :: (~>) a m) :: (~>) (t a) m Source #
Instances
(SFoldable t, SMonoid m, SingI d) => SingI (FoldMapSym1 d :: TyFun (t a) m -> Type) Source # | |
Defined in Data.Foldable.Singletons sing :: Sing (FoldMapSym1 d) # | |
SuppressUnusedWarnings (FoldMapSym1 a6989586621680367279 :: TyFun (t a) m -> Type) Source # | |
Defined in Data.Foldable.Singletons suppressUnusedWarnings :: () # | |
type Apply (FoldMapSym1 a6989586621680367279 :: TyFun (t a) m -> Type) (a6989586621680367280 :: t a) Source # | |
Defined in Data.Foldable.Singletons type Apply (FoldMapSym1 a6989586621680367279 :: TyFun (t a) m -> Type) (a6989586621680367280 :: t a) = FoldMap a6989586621680367279 a6989586621680367280 |
type family FoldMapSym2 (a6989586621680367279 :: (~>) a m) (a6989586621680367280 :: t a) :: m where ... Source #
FoldMapSym2 a6989586621680367279 a6989586621680367280 = FoldMap a6989586621680367279 a6989586621680367280 |
type family MemptySym0 :: a where ... Source #
data MappendSym0 :: (~>) a ((~>) a a) Source #
Instances
SMonoid a => SingI (MappendSym0 :: TyFun a (a ~> a) -> Type) Source # | |
Defined in Data.Monoid.Singletons sing :: Sing MappendSym0 # | |
SuppressUnusedWarnings (MappendSym0 :: TyFun a (a ~> a) -> Type) Source # | |
Defined in Data.Monoid.Singletons suppressUnusedWarnings :: () # | |
type Apply (MappendSym0 :: TyFun a (a ~> a) -> Type) (a6989586621680267906 :: a) Source # | |
Defined in Data.Monoid.Singletons type Apply (MappendSym0 :: TyFun a (a ~> a) -> Type) (a6989586621680267906 :: a) = MappendSym1 a6989586621680267906 |
data MappendSym1 (a6989586621680267906 :: a) :: (~>) a a Source #
Instances
(SMonoid a, SingI d) => SingI (MappendSym1 d :: TyFun a a -> Type) Source # | |
Defined in Data.Monoid.Singletons sing :: Sing (MappendSym1 d) # | |
SuppressUnusedWarnings (MappendSym1 a6989586621680267906 :: TyFun a a -> Type) Source # | |
Defined in Data.Monoid.Singletons suppressUnusedWarnings :: () # | |
type Apply (MappendSym1 a6989586621680267906 :: TyFun a a -> Type) (a6989586621680267907 :: a) Source # | |
Defined in Data.Monoid.Singletons type Apply (MappendSym1 a6989586621680267906 :: TyFun a a -> Type) (a6989586621680267907 :: a) = Mappend a6989586621680267906 a6989586621680267907 |
type family MappendSym2 (a6989586621680267906 :: a) (a6989586621680267907 :: a) :: a where ... Source #
MappendSym2 a6989586621680267906 a6989586621680267907 = Mappend a6989586621680267906 a6989586621680267907 |
data FoldrSym0 :: (~>) ((~>) a ((~>) b b)) ((~>) b ((~>) (t a) b)) Source #
Instances
SFoldable t => SingI (FoldrSym0 :: TyFun (a ~> (b ~> b)) (b ~> (t a ~> b)) -> Type) Source # | |
Defined in Data.Foldable.Singletons | |
SuppressUnusedWarnings (FoldrSym0 :: TyFun (a ~> (b ~> b)) (b ~> (t a ~> b)) -> Type) Source # | |
Defined in Data.Foldable.Singletons suppressUnusedWarnings :: () # | |
type Apply (FoldrSym0 :: TyFun (a ~> (b ~> b)) (b ~> (t a ~> b)) -> Type) (a6989586621680367285 :: a ~> (b ~> b)) Source # | |
data FoldrSym1 (a6989586621680367285 :: (~>) a ((~>) b b)) :: (~>) b ((~>) (t a) b) Source #
Instances
(SFoldable t, SingI d) => SingI (FoldrSym1 d :: TyFun b (t a ~> b) -> Type) Source # | |
Defined in Data.Foldable.Singletons | |
SuppressUnusedWarnings (FoldrSym1 a6989586621680367285 :: TyFun b (t a ~> b) -> Type) Source # | |
Defined in Data.Foldable.Singletons suppressUnusedWarnings :: () # | |
type Apply (FoldrSym1 a6989586621680367285 :: TyFun b (t a ~> b) -> Type) (a6989586621680367286 :: b) Source # | |
data FoldrSym2 (a6989586621680367285 :: (~>) a ((~>) b b)) (a6989586621680367286 :: b) :: (~>) (t a) b Source #
Instances
(SFoldable t, SingI d1, SingI d2) => SingI (FoldrSym2 d1 d2 :: TyFun (t a) b -> Type) Source # | |
Defined in Data.Foldable.Singletons | |
SuppressUnusedWarnings (FoldrSym2 a6989586621680367285 a6989586621680367286 :: TyFun (t a) b -> Type) Source # | |
Defined in Data.Foldable.Singletons suppressUnusedWarnings :: () # | |
type Apply (FoldrSym2 a6989586621680367285 a6989586621680367286 :: TyFun (t a) b -> Type) (a6989586621680367287 :: t a) Source # | |
type family FoldrSym3 (a6989586621680367285 :: (~>) a ((~>) b b)) (a6989586621680367286 :: b) (a6989586621680367287 :: t a) :: b where ... Source #
data TraverseSym0 :: (~>) ((~>) a (f b)) ((~>) (t a) (f (t b))) Source #
Instances
(STraversable t, SApplicative f) => SingI (TraverseSym0 :: TyFun (a ~> f b) (t a ~> f (t b)) -> Type) Source # | |
Defined in Data.Traversable.Singletons sing :: Sing TraverseSym0 # | |
SuppressUnusedWarnings (TraverseSym0 :: TyFun (a ~> f b) (t a ~> f (t b)) -> Type) Source # | |
Defined in Data.Traversable.Singletons suppressUnusedWarnings :: () # | |
type Apply (TraverseSym0 :: TyFun (a ~> f b) (t a ~> f (t b)) -> Type) (a6989586621680721206 :: a ~> f b) Source # | |
Defined in Data.Traversable.Singletons type Apply (TraverseSym0 :: TyFun (a ~> f b) (t a ~> f (t b)) -> Type) (a6989586621680721206 :: a ~> f b) = TraverseSym1 a6989586621680721206 :: TyFun (t a) (f (t b)) -> Type |
data TraverseSym1 (a6989586621680721206 :: (~>) a (f b)) :: (~>) (t a) (f (t b)) Source #
Instances
(STraversable t, SApplicative f, SingI d) => SingI (TraverseSym1 d :: TyFun (t a) (f (t b)) -> Type) Source # | |
Defined in Data.Traversable.Singletons sing :: Sing (TraverseSym1 d) # | |
SuppressUnusedWarnings (TraverseSym1 a6989586621680721206 :: TyFun (t a) (f (t b)) -> Type) Source # | |
Defined in Data.Traversable.Singletons suppressUnusedWarnings :: () # | |
type Apply (TraverseSym1 a6989586621680721206 :: TyFun (t a) (f (t b)) -> Type) (a6989586621680721207 :: t a) Source # | |
Defined in Data.Traversable.Singletons type Apply (TraverseSym1 a6989586621680721206 :: TyFun (t a) (f (t b)) -> Type) (a6989586621680721207 :: t a) = Traverse a6989586621680721206 a6989586621680721207 |
type family TraverseSym2 (a6989586621680721206 :: (~>) a (f b)) (a6989586621680721207 :: t a) :: f (t b) where ... Source #
TraverseSym2 a6989586621680721206 a6989586621680721207 = Traverse a6989586621680721206 a6989586621680721207 |
data PureSym0 :: (~>) a (f a) Source #
Instances
SApplicative f => SingI (PureSym0 :: TyFun a (f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
SuppressUnusedWarnings (PureSym0 :: TyFun a (f a) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (PureSym0 :: TyFun a (f a) -> Type) (a6989586621679319179 :: a) Source # | |
data (<*>@#@$) :: (~>) (f ((~>) a b)) ((~>) (f a) (f b)) infixl 4 Source #
Instances
SApplicative f => SingI ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal | |
SuppressUnusedWarnings ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<*>@#@$) :: TyFun (f (a ~> b)) (f a ~> f b) -> Type) (a6989586621679319183 :: f (a ~> b)) Source # | |
Defined in Control.Monad.Singletons.Internal |
data (<*>@#@$$) (a6989586621679319183 :: f ((~>) a b)) :: (~>) (f a) (f b) infixl 4 Source #
Instances
(SApplicative f, SingI d) => SingI ((<*>@#@$$) d :: TyFun (f a) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal sing :: Sing ((<*>@#@$$) d) # | |
SuppressUnusedWarnings ((<*>@#@$$) a6989586621679319183 :: TyFun (f a) (f b) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply ((<*>@#@$$) a6989586621679319183 :: TyFun (f a) (f b) -> Type) (a6989586621679319184 :: f a) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply ((<*>@#@$$) a6989586621679319183 :: TyFun (f a) (f b) -> Type) (a6989586621679319184 :: f a) = a6989586621679319183 <*> a6989586621679319184 |
type family (a6989586621679319183 :: f ((~>) a b)) <*>@#@$$$ (a6989586621679319184 :: f a) :: f b where ... infixl 4 Source #
data LiftA2Sym0 :: (~>) ((~>) a ((~>) b c)) ((~>) (f a) ((~>) (f b) (f c))) Source #
Instances
SApplicative f => SingI (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal sing :: Sing LiftA2Sym0 # | |
SuppressUnusedWarnings (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftA2Sym0 :: TyFun (a ~> (b ~> c)) (f a ~> (f b ~> f c)) -> Type) (a6989586621679319189 :: a ~> (b ~> c)) Source # | |
Defined in Control.Monad.Singletons.Internal |
data LiftA2Sym1 (a6989586621679319189 :: (~>) a ((~>) b c)) :: (~>) (f a) ((~>) (f b) (f c)) Source #
Instances
(SApplicative f, SingI d) => SingI (LiftA2Sym1 d :: TyFun (f a) (f b ~> f c) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal sing :: Sing (LiftA2Sym1 d) # | |
SuppressUnusedWarnings (LiftA2Sym1 a6989586621679319189 :: TyFun (f a) (f b ~> f c) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftA2Sym1 a6989586621679319189 :: TyFun (f a) (f b ~> f c) -> Type) (a6989586621679319190 :: f a) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply (LiftA2Sym1 a6989586621679319189 :: TyFun (f a) (f b ~> f c) -> Type) (a6989586621679319190 :: f a) = LiftA2Sym2 a6989586621679319189 a6989586621679319190 |
data LiftA2Sym2 (a6989586621679319189 :: (~>) a ((~>) b c)) (a6989586621679319190 :: f a) :: (~>) (f b) (f c) Source #
Instances
(SApplicative f, SingI d1, SingI d2) => SingI (LiftA2Sym2 d1 d2 :: TyFun (f b) (f c) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal sing :: Sing (LiftA2Sym2 d1 d2) # | |
SuppressUnusedWarnings (LiftA2Sym2 a6989586621679319189 a6989586621679319190 :: TyFun (f b) (f c) -> Type) Source # | |
Defined in Control.Monad.Singletons.Internal suppressUnusedWarnings :: () # | |
type Apply (LiftA2Sym2 a6989586621679319189 a6989586621679319190 :: TyFun (f b) (f c) -> Type) (a6989586621679319191 :: f b) Source # | |
Defined in Control.Monad.Singletons.Internal type Apply (LiftA2Sym2 a6989586621679319189 a6989586621679319190 :: TyFun (f b) (f c) -> Type) (a6989586621679319191 :: f b) = LiftA2 a6989586621679319189 a6989586621679319190 a6989586621679319191 |
type family LiftA2Sym3 (a6989586621679319189 :: (~>) a ((~>) b c)) (a6989586621679319190 :: f a) (a6989586621679319191 :: f b) :: f c where ... Source #
LiftA2Sym3 a6989586621679319189 a6989586621679319190 a6989586621679319191 = LiftA2 a6989586621679319189 a6989586621679319190 a6989586621679319191 |
data (.@#@$) :: (~>) ((~>) b c) ((~>) ((~>) a b) ((~>) a c)) infixr 9 Source #
Instances
SingI ((.@#@$) :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c)) -> Type) Source # | |
Defined in GHC.Base.Singletons | |
SuppressUnusedWarnings ((.@#@$) :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c)) -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply ((.@#@$) :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c)) -> Type) (a6989586621679274056 :: b ~> c) Source # | |
data (.@#@$$) (a6989586621679274056 :: (~>) b c) :: (~>) ((~>) a b) ((~>) a c) infixr 9 Source #
Instances
SingI d => SingI ((.@#@$$) d :: TyFun (a ~> b) (a ~> c) -> Type) Source # | |
Defined in GHC.Base.Singletons | |
SuppressUnusedWarnings ((.@#@$$) a6989586621679274056 :: TyFun (a ~> b) (a ~> c) -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply ((.@#@$$) a6989586621679274056 :: TyFun (a ~> b) (a ~> c) -> Type) (a6989586621679274057 :: a ~> b) Source # | |
data (a6989586621679274056 :: (~>) b c) .@#@$$$ (a6989586621679274057 :: (~>) a b) :: (~>) a c infixr 9 Source #
Instances
(SingI d1, SingI d2) => SingI (d1 .@#@$$$ d2 :: TyFun a c -> Type) Source # | |
Defined in GHC.Base.Singletons | |
SuppressUnusedWarnings (a6989586621679274056 .@#@$$$ a6989586621679274057 :: TyFun a c -> Type) Source # | |
Defined in GHC.Base.Singletons suppressUnusedWarnings :: () # | |
type Apply (a6989586621679274056 .@#@$$$ a6989586621679274057 :: TyFun a c -> Type) (a6989586621679274058 :: a) Source # | |
type family ((a6989586621679274056 :: (~>) b c) .@#@$$$$ (a6989586621679274057 :: (~>) a b)) (a6989586621679274058 :: a) :: c where ... infixr 9 Source #
data (:@#@$) :: (~>) a ((~>) [a] [a :: Type]) infixr 5 Source #
Instances
SingI ((:@#@$) :: TyFun a ([a] ~> [a]) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
SuppressUnusedWarnings ((:@#@$) :: TyFun a ([a] ~> [a]) -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply ((:@#@$) :: TyFun a ([a] ~> [a]) -> Type) (a6989586621679041825 :: a) Source # | |
data (:@#@$$) (a6989586621679041825 :: a) :: (~>) [a] [a :: Type] infixr 5 Source #
Instances
SingI d => SingI ((:@#@$$) d :: TyFun [a] [a] -> Type) Source # | |
Defined in Data.Singletons.Base.Instances | |
SuppressUnusedWarnings ((:@#@$$) a6989586621679041825 :: TyFun [a] [a] -> Type) Source # | |
Defined in Data.Singletons.Base.Instances suppressUnusedWarnings :: () # | |
type Apply ((:@#@$$) a6989586621679041825 :: TyFun [a] [a] -> Type) (a6989586621679041826 :: [a]) Source # | |
Defined in Data.Singletons.Base.Instances |
type family (a6989586621679041825 :: a) :@#@$$$ (a6989586621679041826 :: [a]) :: [a :: Type] where ... infixr 5 Source #
a6989586621679041825 :@#@$$$ a6989586621679041826 = '(:) a6989586621679041825 a6989586621679041826 |
class SuppressUnusedWarnings (t :: k) where #
This class (which users should never see) is to be instantiated in order to use an otherwise-unused data constructor, such as the "kind-inference" data constructor for defunctionalization symbols.
suppressUnusedWarnings :: () #