singletons-2.5: A framework for generating singleton types

Copyright(C) 2013 Richard Eisenberg
LicenseBSD-style (see LICENSE)
MaintainerRyan Scott
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Data.Singletons.Prelude

Contents

Description

Mimics the Haskell Prelude, but with singleton types. Includes the basic singleton definitions. Note: This is currently very incomplete!

Because many of these definitions are produced by Template Haskell, it is not possible to create proper Haddock documentation. Also, please excuse the apparent repeated variable names. This is due to an interaction between Template Haskell and Haddock.

Synopsis
  • module Data.Singletons
  • data family Sing :: k -> Type
  • type SBool = (Sing :: Bool -> Type)
  • type SList = (Sing :: [a] -> Type)
  • type SMaybe = (Sing :: Maybe a -> Type)
  • type SEither = (Sing :: Either a b -> Type)
  • type SOrdering = (Sing :: Ordering -> Type)
  • type STuple0 = (Sing :: () -> Type)
  • type STuple2 = (Sing :: (a, b) -> Type)
  • type STuple3 = (Sing :: (a, b, c) -> Type)
  • type STuple4 = (Sing :: (a, b, c, d) -> Type)
  • type STuple5 = (Sing :: (a, b, c, d, e) -> Type)
  • type STuple6 = (Sing :: (a, b, c, d, e, f) -> Type)
  • type STuple7 = (Sing :: (a, b, c, d, e, f, g) -> Type)
  • 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 Not (a :: Bool) = (res :: Bool) | res -> a where ...
  • sNot :: Sing a -> Sing (Not a)
  • type family (a :: Bool) && (b :: Bool) :: Bool where ...
  • type family (a :: Bool) || (b :: Bool) :: Bool where ...
  • (%&&) :: Sing a -> Sing b -> Sing (a && b)
  • (%||) :: Sing a -> Sing b -> Sing (a || b)
  • type family Otherwise :: Bool where ...
  • sOtherwise :: Sing (OtherwiseSym0 :: Bool)
  • type family Error (str :: k0) :: k where ...
  • sError :: HasCallStack => Sing (str :: Symbol) -> a
  • type family ErrorWithoutStackTrace (str :: k0) :: k where ...
  • sErrorWithoutStackTrace :: Sing (str :: Symbol) -> a
  • type family Undefined :: k where ...
  • sUndefined :: HasCallStack => a
  • module Data.Singletons.Prelude.Eq
  • class PEq a => POrd (a :: Type) where
    • type Compare (arg :: a) (arg :: a) :: Ordering
    • type (arg :: a) < (arg :: a) :: Bool
    • type (arg :: a) <= (arg :: a) :: Bool
    • type (arg :: a) > (arg :: a) :: Bool
    • type (arg :: a) >= (arg :: a) :: Bool
    • type Max (arg :: a) (arg :: a) :: a
    • type Min (arg :: a) (arg :: a) :: a
  • class SEq a => SOrd a where
  • class SBounded a where
  • class PBounded (a :: Type) where
  • type MaxBoundSym0 = MaxBound
  • type MinBoundSym0 = MinBound
  • class SEnum a where
  • class PEnum (a :: Type) where
  • data EnumFromThenToSym0 :: forall a6989586621679740077. (~>) a6989586621679740077 ((~>) a6989586621679740077 ((~>) a6989586621679740077 [a6989586621679740077]))
  • data EnumFromThenToSym1 (arg6989586621679740373 :: a6989586621679740077) :: (~>) a6989586621679740077 ((~>) a6989586621679740077 [a6989586621679740077])
  • data EnumFromThenToSym2 (arg6989586621679740373 :: a6989586621679740077) (arg6989586621679740374 :: a6989586621679740077) :: (~>) a6989586621679740077 [a6989586621679740077]
  • type EnumFromThenToSym3 (arg6989586621679740373 :: a6989586621679740077) (arg6989586621679740374 :: a6989586621679740077) (arg6989586621679740375 :: a6989586621679740077) = EnumFromThenTo arg6989586621679740373 arg6989586621679740374 arg6989586621679740375
  • data EnumFromToSym0 :: forall a6989586621679740077. (~>) a6989586621679740077 ((~>) a6989586621679740077 [a6989586621679740077])
  • data EnumFromToSym1 (arg6989586621679740369 :: a6989586621679740077) :: (~>) a6989586621679740077 [a6989586621679740077]
  • type EnumFromToSym2 (arg6989586621679740369 :: a6989586621679740077) (arg6989586621679740370 :: a6989586621679740077) = EnumFromTo arg6989586621679740369 arg6989586621679740370
  • data FromEnumSym0 :: forall a6989586621679740077. (~>) a6989586621679740077 Nat
  • type FromEnumSym1 (arg6989586621679740367 :: a6989586621679740077) = FromEnum arg6989586621679740367
  • data ToEnumSym0 :: forall a6989586621679740077. (~>) Nat a6989586621679740077
  • type ToEnumSym1 (arg6989586621679740365 :: Nat) = ToEnum arg6989586621679740365
  • module Data.Singletons.Prelude.Num
  • type family (a :: Nat) ^ (b :: Nat) :: Nat where ...
  • (%^) :: Sing a -> Sing b -> Sing (a ^ b)
  • class PShow (a :: Type) where
  • class SShow a where
  • type ShowS = String -> String
  • type SChar = Symbol
  • type family Shows (a :: a) (a :: Symbol) :: Symbol where ...
  • sShows :: forall a (t :: a) (t :: Symbol). SShow a => Sing t -> Sing t -> Sing (Apply (Apply ShowsSym0 t) 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 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)
  • class PSemigroup (a :: Type) where
    • type (arg :: a) <> (arg :: a) :: a
  • class SSemigroup a where
  • class PSemigroup a => PMonoid (a :: Type) where
  • class SSemigroup a => SMonoid a where
  • class PFunctor (f :: Type -> Type) where
    • type Fmap (arg :: (~>) a b) (arg :: f a) :: f b
    • type (arg :: a) <$ (arg :: f b) :: f a
  • class SFunctor (f :: Type -> Type) where
  • type family (a :: (~>) a b) <$> (a :: f a) :: f b where ...
  • (%<$>) :: forall f a b (t :: (~>) a b) (t :: f a). SFunctor f => Sing t -> Sing t -> Sing (Apply (Apply (<$>@#@$) t) t :: f b)
  • class PFunctor f => PApplicative (f :: Type -> Type) where
    • type Pure (arg :: a) :: f a
    • type (arg :: f ((~>) a b)) <*> (arg :: f a) :: f b
    • type (arg :: f a) *> (arg :: f b) :: f b
    • type (arg :: f a) <* (arg :: f b) :: f a
  • class SFunctor f => SApplicative (f :: Type -> Type) where
  • class PApplicative m => PMonad (m :: Type -> Type) where
    • type (arg :: m a) >>= (arg :: (~>) a (m b)) :: m b
    • type (arg :: m a) >> (arg :: m b) :: m b
    • type Return (arg :: a) :: m a
    • type Fail (arg :: Symbol) :: m a
  • class SApplicative m => SMonad (m :: Type -> Type) where
  • type family MapM_ (a :: (~>) a (m b)) (a :: t a) :: m () where ...
  • sMapM_ :: forall t m a b (t :: (~>) a (m b)) (t :: t a). (SFoldable t, SMonad m) => Sing t -> Sing t -> Sing (Apply (Apply MapM_Sym0 t) t :: m ())
  • type family Sequence_ (a :: t (m a)) :: m () where ...
  • sSequence_ :: forall t m a (t :: t (m a)). (SFoldable t, SMonad m) => Sing t -> Sing (Apply Sequence_Sym0 t :: m ())
  • type family (a :: (~>) a (m b)) =<< (a :: m a) :: m b where ...
  • (%=<<) :: forall m a b (t :: (~>) a (m b)) (t :: m a). SMonad m => Sing t -> Sing t -> Sing (Apply (Apply (=<<@#@$) t) t :: m b)
  • class PFoldable (t :: Type -> Type) where
  • class SFoldable (t :: Type -> Type) where
  • class (PFunctor t, PFoldable t) => PTraversable (t :: Type -> Type) where
    • type Traverse (arg :: (~>) a (f b)) (arg :: t a) :: f (t b)
    • type SequenceA (arg :: t (f a)) :: f (t a)
    • type MapM (arg :: (~>) a (m b)) (arg :: t a) :: m (t b)
    • type Sequence (arg :: t (m a)) :: m (t a)
  • class (SFunctor t, SFoldable t) => STraversable (t :: Type -> Type) where
  • type family Id (a :: a) :: a where ...
  • sId :: forall a (t :: a). Sing t -> Sing (Apply IdSym0 t :: a)
  • type family Const (a :: a) (a :: b) :: a where ...
  • sConst :: forall a b (t :: a) (t :: b). Sing t -> Sing t -> Sing (Apply (Apply ConstSym0 t) t :: 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 (a :: (~>) a b) $ (a :: a) :: b where ...
  • (%$) :: forall a b (t :: (~>) a b) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply ($@#@$) t) t :: b)
  • type family (a :: (~>) a b) $! (a :: a) :: b where ...
  • (%$!) :: forall a b (t :: (~>) a b) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply ($!@#@$) t) t :: b)
  • type family Flip (a :: (~>) a ((~>) b c)) (a :: b) (a :: a) :: c where ...
  • sFlip :: forall a b c (t :: (~>) a ((~>) b c)) (t :: b) (t :: a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply FlipSym0 t) t) t :: c)
  • type family AsTypeOf (a :: a) (a :: a) :: a where ...
  • sAsTypeOf :: forall a (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply AsTypeOfSym0 t) t :: a)
  • type family Seq (a :: a) (a :: b) :: b where ...
  • sSeq :: forall a b (t :: a) (t :: b). Sing t -> Sing t -> Sing (Apply (Apply SeqSym0 t) t :: b)
  • type family Map (a :: (~>) a b) (a :: [a]) :: [b] where ...
  • sMap :: forall a b (t :: (~>) a b) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply MapSym0 t) t :: [b])
  • type family (a :: [a]) ++ (a :: [a]) :: [a] where ...
  • (%++) :: forall a (t :: [a]) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply (++@#@$) t) t :: [a])
  • type family Filter (a :: (~>) a Bool) (a :: [a]) :: [a] where ...
  • sFilter :: forall a (t :: (~>) a Bool) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply FilterSym0 t) t :: [a])
  • type family Head (a :: [a]) :: a where ...
  • sHead :: forall a (t :: [a]). Sing t -> Sing (Apply HeadSym0 t :: a)
  • type family Last (a :: [a]) :: a where ...
  • sLast :: forall a (t :: [a]). Sing t -> Sing (Apply LastSym0 t :: a)
  • type family Tail (a :: [a]) :: [a] where ...
  • sTail :: forall a (t :: [a]). Sing t -> Sing (Apply TailSym0 t :: [a])
  • type family Init (a :: [a]) :: [a] where ...
  • sInit :: forall a (t :: [a]). Sing t -> Sing (Apply InitSym0 t :: [a])
  • type family Null (arg :: t a) :: Bool
  • sNull :: forall a (t :: t a). SFoldable t => Sing t -> Sing (Apply NullSym0 t :: Bool)
  • type family Reverse (a :: [a]) :: [a] where ...
  • sReverse :: forall a (t :: [a]). Sing t -> Sing (Apply ReverseSym0 t :: [a])
  • type family And (a :: t Bool) :: Bool where ...
  • sAnd :: forall t (t :: t Bool). SFoldable t => Sing t -> Sing (Apply AndSym0 t :: Bool)
  • type family Or (a :: t Bool) :: Bool where ...
  • sOr :: forall t (t :: t Bool). SFoldable t => Sing t -> Sing (Apply OrSym0 t :: Bool)
  • type family Any (a :: (~>) a Bool) (a :: t a) :: Bool where ...
  • sAny :: forall t a (t :: (~>) a Bool) (t :: t a). SFoldable t => Sing t -> Sing t -> Sing (Apply (Apply AnySym0 t) t :: Bool)
  • type family All (a :: (~>) a Bool) (a :: t a) :: Bool where ...
  • sAll :: forall t a (t :: (~>) a Bool) (t :: t a). SFoldable t => Sing t -> Sing t -> Sing (Apply (Apply AllSym0 t) t :: Bool)
  • type family Concat (a :: t [a]) :: [a] where ...
  • sConcat :: forall t a (t :: t [a]). SFoldable t => Sing t -> Sing (Apply ConcatSym0 t :: [a])
  • type family ConcatMap (a :: (~>) a [b]) (a :: t a) :: [b] where ...
  • sConcatMap :: forall t a b (t :: (~>) a [b]) (t :: t a). SFoldable t => Sing t -> Sing t -> Sing (Apply (Apply ConcatMapSym0 t) t :: [b])
  • type family Scanl (a :: (~>) b ((~>) a b)) (a :: b) (a :: [a]) :: [b] where ...
  • sScanl :: forall b a (t :: (~>) b ((~>) a b)) (t :: b) (t :: [a]). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ScanlSym0 t) t) t :: [b])
  • type family Scanl1 (a :: (~>) a ((~>) a a)) (a :: [a]) :: [a] where ...
  • sScanl1 :: forall a (t :: (~>) a ((~>) a a)) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply Scanl1Sym0 t) t :: [a])
  • type family Scanr (a :: (~>) a ((~>) b b)) (a :: b) (a :: [a]) :: [b] where ...
  • sScanr :: forall a b (t :: (~>) a ((~>) b b)) (t :: b) (t :: [a]). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ScanrSym0 t) t) t :: [b])
  • type family Scanr1 (a :: (~>) a ((~>) a a)) (a :: [a]) :: [a] where ...
  • sScanr1 :: forall a (t :: (~>) a ((~>) a a)) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply Scanr1Sym0 t) t :: [a])
  • type family Replicate (a :: Nat) (a :: a) :: [a] where ...
  • sReplicate :: forall a (t :: Nat) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply ReplicateSym0 t) t :: [a])
  • type family Take (a :: Nat) (a :: [a]) :: [a] where ...
  • sTake :: forall a (t :: Nat) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply TakeSym0 t) t :: [a])
  • type family Drop (a :: Nat) (a :: [a]) :: [a] where ...
  • sDrop :: forall a (t :: Nat) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply DropSym0 t) t :: [a])
  • type family SplitAt (a :: Nat) (a :: [a]) :: ([a], [a]) where ...
  • sSplitAt :: forall a (t :: Nat) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply SplitAtSym0 t) t :: ([a], [a]))
  • type family TakeWhile (a :: (~>) a Bool) (a :: [a]) :: [a] where ...
  • sTakeWhile :: forall a (t :: (~>) a Bool) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply TakeWhileSym0 t) t :: [a])
  • type family Span (a :: (~>) a Bool) (a :: [a]) :: ([a], [a]) where ...
  • sSpan :: forall a (t :: (~>) a Bool) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply SpanSym0 t) t :: ([a], [a]))
  • type family Break (a :: (~>) a Bool) (a :: [a]) :: ([a], [a]) where ...
  • sBreak :: forall a (t :: (~>) a Bool) (t :: [a]). Sing t -> Sing t -> Sing (Apply (Apply BreakSym0 t) t :: ([a], [a]))
  • type family NotElem (a :: a) (a :: t a) :: Bool where ...
  • sNotElem :: forall t a (t :: a) (t :: t a). (SFoldable t, SEq a) => Sing t -> Sing t -> Sing (Apply (Apply NotElemSym0 t) t :: Bool)
  • type family Lookup (a :: a) (a :: [(a, b)]) :: Maybe b where ...
  • sLookup :: forall a b (t :: a) (t :: [(a, b)]). SEq a => Sing t -> Sing t -> Sing (Apply (Apply LookupSym0 t) t :: Maybe b)
  • type family Zip (a :: [a]) (a :: [b]) :: [(a, b)] where ...
  • sZip :: forall a b (t :: [a]) (t :: [b]). Sing t -> Sing t -> Sing (Apply (Apply ZipSym0 t) t :: [(a, b)])
  • type family Zip3 (a :: [a]) (a :: [b]) (a :: [c]) :: [(a, b, c)] where ...
  • sZip3 :: forall a b c (t :: [a]) (t :: [b]) (t :: [c]). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Zip3Sym0 t) t) t :: [(a, b, c)])
  • type family ZipWith (a :: (~>) a ((~>) b c)) (a :: [a]) (a :: [b]) :: [c] where ...
  • sZipWith :: forall a b c (t :: (~>) a ((~>) b c)) (t :: [a]) (t :: [b]). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply ZipWithSym0 t) t) t :: [c])
  • type family ZipWith3 (a :: (~>) a ((~>) b ((~>) c d))) (a :: [a]) (a :: [b]) (a :: [c]) :: [d] where ...
  • sZipWith3 :: forall a b c d (t :: (~>) a ((~>) b ((~>) c d))) (t :: [a]) (t :: [b]) (t :: [c]). Sing t -> Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply (Apply ZipWith3Sym0 t) t) t) t :: [d])
  • type family Unzip (a :: [(a, b)]) :: ([a], [b]) where ...
  • sUnzip :: forall a b (t :: [(a, b)]). Sing t -> Sing (Apply UnzipSym0 t :: ([a], [b]))
  • type family Unzip3 (a :: [(a, b, c)]) :: ([a], [b], [c]) where ...
  • sUnzip3 :: forall a b c (t :: [(a, b, c)]). Sing t -> Sing (Apply Unzip3Sym0 t :: ([a], [b], [c]))
  • type family Unlines (a :: [Symbol]) :: Symbol where ...
  • sUnlines :: forall (t :: [Symbol]). Sing t -> Sing (Apply UnlinesSym0 t :: Symbol)
  • type family Unwords (a :: [Symbol]) :: Symbol where ...
  • sUnwords :: forall (t :: [Symbol]). Sing t -> Sing (Apply UnwordsSym0 t :: Symbol)
  • type family Maybe_ (a :: b) (a :: (~>) a b) (a :: Maybe a) :: b where ...
  • sMaybe_ :: forall b a (t :: b) (t :: (~>) a b) (t :: Maybe a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Maybe_Sym0 t) t) t :: b)
  • type family Either_ (a :: (~>) a c) (a :: (~>) b c) (a :: Either a b) :: c where ...
  • sEither_ :: forall a c b (t :: (~>) a c) (t :: (~>) b c) (t :: Either a b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply Either_Sym0 t) t) t :: c)
  • type family Fst (a :: (a, b)) :: a where ...
  • sFst :: forall a b (t :: (a, b)). Sing t -> Sing (Apply FstSym0 t :: a)
  • type family Snd (a :: (a, b)) :: b where ...
  • sSnd :: forall a b (t :: (a, b)). Sing t -> Sing (Apply SndSym0 t :: b)
  • type family Curry (a :: (~>) (a, b) c) (a :: a) (a :: b) :: c where ...
  • sCurry :: forall a b c (t :: (~>) (a, b) c) (t :: a) (t :: b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply CurrySym0 t) t) t :: c)
  • type family Uncurry (a :: (~>) a ((~>) b c)) (a :: (a, b)) :: c where ...
  • sUncurry :: forall a b c (t :: (~>) a ((~>) b c)) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply UncurrySym0 t) t :: c)
  • data Symbol
  • either_ :: (a -> c) -> (b -> c) -> Either a b -> c
  • maybe_ :: b -> (a -> b) -> Maybe a -> b
  • bool_ :: a -> a -> Bool -> a
  • show_ :: Show a => a -> String
  • type FalseSym0 = False
  • type TrueSym0 = True
  • data NotSym0 :: (~>) Bool Bool
  • type NotSym1 (a6989586621679363899 :: Bool) = Not a6989586621679363899
  • data (&&@#@$) :: (~>) Bool ((~>) Bool Bool)
  • data (&&@#@$$) (a6989586621679363358 :: Bool) :: (~>) Bool Bool
  • type (&&@#@$$$) (a6989586621679363358 :: Bool) (b6989586621679363359 :: Bool) = (&&) a6989586621679363358 b6989586621679363359
  • data (||@#@$) :: (~>) Bool ((~>) Bool Bool)
  • data (||@#@$$) (a6989586621679363599 :: Bool) :: (~>) Bool Bool
  • type (||@#@$$$) (a6989586621679363599 :: Bool) (b6989586621679363600 :: Bool) = (||) a6989586621679363599 b6989586621679363600
  • type OtherwiseSym0 = Otherwise
  • type NothingSym0 = Nothing
  • data JustSym0 :: forall (a3530822107858468865 :: Type). (~>) a3530822107858468865 (Maybe (a3530822107858468865 :: Type))
  • type JustSym1 (t6989586621679298894 :: a3530822107858468865) = Just t6989586621679298894
  • data Maybe_Sym0 :: forall a6989586621679494395 b6989586621679494394. (~>) b6989586621679494394 ((~>) ((~>) a6989586621679494395 b6989586621679494394) ((~>) (Maybe a6989586621679494395) b6989586621679494394))
  • data Maybe_Sym1 (a6989586621679494412 :: b6989586621679494394) :: forall a6989586621679494395. (~>) ((~>) a6989586621679494395 b6989586621679494394) ((~>) (Maybe a6989586621679494395) b6989586621679494394)
  • data Maybe_Sym2 (a6989586621679494412 :: b6989586621679494394) (a6989586621679494413 :: (~>) a6989586621679494395 b6989586621679494394) :: (~>) (Maybe a6989586621679494395) b6989586621679494394
  • type Maybe_Sym3 (a6989586621679494412 :: b6989586621679494394) (a6989586621679494413 :: (~>) a6989586621679494395 b6989586621679494394) (a6989586621679494414 :: Maybe a6989586621679494395) = Maybe_ a6989586621679494412 a6989586621679494413 a6989586621679494414
  • data LeftSym0 :: forall (a6989586621679089135 :: Type) (b6989586621679089136 :: Type). (~>) a6989586621679089135 (Either (a6989586621679089135 :: Type) (b6989586621679089136 :: Type))
  • type LeftSym1 (t6989586621679298961 :: a6989586621679089135) = Left t6989586621679298961
  • data RightSym0 :: forall (a6989586621679089135 :: Type) (b6989586621679089136 :: Type). (~>) b6989586621679089136 (Either (a6989586621679089135 :: Type) (b6989586621679089136 :: Type))
  • type RightSym1 (t6989586621679298963 :: b6989586621679089136) = Right t6989586621679298963
  • data Either_Sym0 :: forall a6989586621680432731 b6989586621680432733 c6989586621680432732. (~>) ((~>) a6989586621680432731 c6989586621680432732) ((~>) ((~>) b6989586621680432733 c6989586621680432732) ((~>) (Either a6989586621680432731 b6989586621680432733) c6989586621680432732))
  • data Either_Sym1 (a6989586621680432767 :: (~>) a6989586621680432731 c6989586621680432732) :: forall b6989586621680432733. (~>) ((~>) b6989586621680432733 c6989586621680432732) ((~>) (Either a6989586621680432731 b6989586621680432733) c6989586621680432732)
  • data Either_Sym2 (a6989586621680432767 :: (~>) a6989586621680432731 c6989586621680432732) (a6989586621680432768 :: (~>) b6989586621680432733 c6989586621680432732) :: (~>) (Either a6989586621680432731 b6989586621680432733) c6989586621680432732
  • type Either_Sym3 (a6989586621680432767 :: (~>) a6989586621680432731 c6989586621680432732) (a6989586621680432768 :: (~>) b6989586621680432733 c6989586621680432732) (a6989586621680432769 :: Either a6989586621680432731 b6989586621680432733) = Either_ a6989586621680432767 a6989586621680432768 a6989586621680432769
  • type Tuple0Sym0 = '()
  • data Tuple2Sym0 :: forall (a3530822107858468865 :: Type) (b3530822107858468866 :: Type). (~>) a3530822107858468865 ((~>) b3530822107858468866 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type)))
  • data Tuple2Sym1 (t6989586621679299010 :: (a3530822107858468865 :: Type)) :: forall (b3530822107858468866 :: Type). (~>) b3530822107858468866 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type))
  • type Tuple2Sym2 (t6989586621679299010 :: a3530822107858468865) (t6989586621679299011 :: b3530822107858468866) = '(t6989586621679299010, t6989586621679299011)
  • data Tuple3Sym0 :: forall (a3530822107858468865 :: Type) (b3530822107858468866 :: Type) (c3530822107858468867 :: Type). (~>) a3530822107858468865 ((~>) b3530822107858468866 ((~>) c3530822107858468867 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type))))
  • data Tuple3Sym1 (t6989586621679299041 :: (a3530822107858468865 :: Type)) :: forall (b3530822107858468866 :: Type) (c3530822107858468867 :: Type). (~>) b3530822107858468866 ((~>) c3530822107858468867 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type)))
  • data Tuple3Sym2 (t6989586621679299041 :: (a3530822107858468865 :: Type)) (t6989586621679299042 :: (b3530822107858468866 :: Type)) :: forall (c3530822107858468867 :: Type). (~>) c3530822107858468867 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type))
  • type Tuple3Sym3 (t6989586621679299041 :: a3530822107858468865) (t6989586621679299042 :: b3530822107858468866) (t6989586621679299043 :: c3530822107858468867) = '(t6989586621679299041, t6989586621679299042, t6989586621679299043)
  • data Tuple4Sym0 :: forall (a3530822107858468865 :: Type) (b3530822107858468866 :: Type) (c3530822107858468867 :: Type) (d3530822107858468868 :: Type). (~>) a3530822107858468865 ((~>) b3530822107858468866 ((~>) c3530822107858468867 ((~>) d3530822107858468868 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type)))))
  • data Tuple4Sym1 (t6989586621679299088 :: (a3530822107858468865 :: Type)) :: forall (b3530822107858468866 :: Type) (c3530822107858468867 :: Type) (d3530822107858468868 :: Type). (~>) b3530822107858468866 ((~>) c3530822107858468867 ((~>) d3530822107858468868 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type))))
  • data Tuple4Sym2 (t6989586621679299088 :: (a3530822107858468865 :: Type)) (t6989586621679299089 :: (b3530822107858468866 :: Type)) :: forall (c3530822107858468867 :: Type) (d3530822107858468868 :: Type). (~>) c3530822107858468867 ((~>) d3530822107858468868 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type)))
  • data Tuple4Sym3 (t6989586621679299088 :: (a3530822107858468865 :: Type)) (t6989586621679299089 :: (b3530822107858468866 :: Type)) (t6989586621679299090 :: (c3530822107858468867 :: Type)) :: forall (d3530822107858468868 :: Type). (~>) d3530822107858468868 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type))
  • type Tuple4Sym4 (t6989586621679299088 :: a3530822107858468865) (t6989586621679299089 :: b3530822107858468866) (t6989586621679299090 :: c3530822107858468867) (t6989586621679299091 :: d3530822107858468868) = '(t6989586621679299088, t6989586621679299089, t6989586621679299090, t6989586621679299091)
  • data Tuple5Sym0 :: forall (a3530822107858468865 :: Type) (b3530822107858468866 :: Type) (c3530822107858468867 :: Type) (d3530822107858468868 :: Type) (e3530822107858468869 :: Type). (~>) a3530822107858468865 ((~>) b3530822107858468866 ((~>) c3530822107858468867 ((~>) d3530822107858468868 ((~>) e3530822107858468869 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type))))))
  • data Tuple5Sym1 (t6989586621679299153 :: (a3530822107858468865 :: Type)) :: forall (b3530822107858468866 :: Type) (c3530822107858468867 :: Type) (d3530822107858468868 :: Type) (e3530822107858468869 :: Type). (~>) b3530822107858468866 ((~>) c3530822107858468867 ((~>) d3530822107858468868 ((~>) e3530822107858468869 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type)))))
  • data Tuple5Sym2 (t6989586621679299153 :: (a3530822107858468865 :: Type)) (t6989586621679299154 :: (b3530822107858468866 :: Type)) :: forall (c3530822107858468867 :: Type) (d3530822107858468868 :: Type) (e3530822107858468869 :: Type). (~>) c3530822107858468867 ((~>) d3530822107858468868 ((~>) e3530822107858468869 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type))))
  • data Tuple5Sym3 (t6989586621679299153 :: (a3530822107858468865 :: Type)) (t6989586621679299154 :: (b3530822107858468866 :: Type)) (t6989586621679299155 :: (c3530822107858468867 :: Type)) :: forall (d3530822107858468868 :: Type) (e3530822107858468869 :: Type). (~>) d3530822107858468868 ((~>) e3530822107858468869 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type)))
  • data Tuple5Sym4 (t6989586621679299153 :: (a3530822107858468865 :: Type)) (t6989586621679299154 :: (b3530822107858468866 :: Type)) (t6989586621679299155 :: (c3530822107858468867 :: Type)) (t6989586621679299156 :: (d3530822107858468868 :: Type)) :: forall (e3530822107858468869 :: Type). (~>) e3530822107858468869 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type))
  • type Tuple5Sym5 (t6989586621679299153 :: a3530822107858468865) (t6989586621679299154 :: b3530822107858468866) (t6989586621679299155 :: c3530822107858468867) (t6989586621679299156 :: d3530822107858468868) (t6989586621679299157 :: e3530822107858468869) = '(t6989586621679299153, t6989586621679299154, t6989586621679299155, t6989586621679299156, t6989586621679299157)
  • data Tuple6Sym0 :: forall (a3530822107858468865 :: Type) (b3530822107858468866 :: Type) (c3530822107858468867 :: Type) (d3530822107858468868 :: Type) (e3530822107858468869 :: Type) (f3530822107858468870 :: Type). (~>) a3530822107858468865 ((~>) b3530822107858468866 ((~>) c3530822107858468867 ((~>) d3530822107858468868 ((~>) e3530822107858468869 ((~>) f3530822107858468870 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type)))))))
  • data Tuple6Sym1 (t6989586621679299238 :: (a3530822107858468865 :: Type)) :: forall (b3530822107858468866 :: Type) (c3530822107858468867 :: Type) (d3530822107858468868 :: Type) (e3530822107858468869 :: Type) (f3530822107858468870 :: Type). (~>) b3530822107858468866 ((~>) c3530822107858468867 ((~>) d3530822107858468868 ((~>) e3530822107858468869 ((~>) f3530822107858468870 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type))))))
  • data Tuple6Sym2 (t6989586621679299238 :: (a3530822107858468865 :: Type)) (t6989586621679299239 :: (b3530822107858468866 :: Type)) :: forall (c3530822107858468867 :: Type) (d3530822107858468868 :: Type) (e3530822107858468869 :: Type) (f3530822107858468870 :: Type). (~>) c3530822107858468867 ((~>) d3530822107858468868 ((~>) e3530822107858468869 ((~>) f3530822107858468870 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type)))))
  • data Tuple6Sym3 (t6989586621679299238 :: (a3530822107858468865 :: Type)) (t6989586621679299239 :: (b3530822107858468866 :: Type)) (t6989586621679299240 :: (c3530822107858468867 :: Type)) :: forall (d3530822107858468868 :: Type) (e3530822107858468869 :: Type) (f3530822107858468870 :: Type). (~>) d3530822107858468868 ((~>) e3530822107858468869 ((~>) f3530822107858468870 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type))))
  • data Tuple6Sym4 (t6989586621679299238 :: (a3530822107858468865 :: Type)) (t6989586621679299239 :: (b3530822107858468866 :: Type)) (t6989586621679299240 :: (c3530822107858468867 :: Type)) (t6989586621679299241 :: (d3530822107858468868 :: Type)) :: forall (e3530822107858468869 :: Type) (f3530822107858468870 :: Type). (~>) e3530822107858468869 ((~>) f3530822107858468870 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type)))
  • data Tuple6Sym5 (t6989586621679299238 :: (a3530822107858468865 :: Type)) (t6989586621679299239 :: (b3530822107858468866 :: Type)) (t6989586621679299240 :: (c3530822107858468867 :: Type)) (t6989586621679299241 :: (d3530822107858468868 :: Type)) (t6989586621679299242 :: (e3530822107858468869 :: Type)) :: forall (f3530822107858468870 :: Type). (~>) f3530822107858468870 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type))
  • type Tuple6Sym6 (t6989586621679299238 :: a3530822107858468865) (t6989586621679299239 :: b3530822107858468866) (t6989586621679299240 :: c3530822107858468867) (t6989586621679299241 :: d3530822107858468868) (t6989586621679299242 :: e3530822107858468869) (t6989586621679299243 :: f3530822107858468870) = '(t6989586621679299238, t6989586621679299239, t6989586621679299240, t6989586621679299241, t6989586621679299242, t6989586621679299243)
  • data Tuple7Sym0 :: forall (a3530822107858468865 :: Type) (b3530822107858468866 :: Type) (c3530822107858468867 :: Type) (d3530822107858468868 :: Type) (e3530822107858468869 :: Type) (f3530822107858468870 :: Type) (g3530822107858468871 :: Type). (~>) a3530822107858468865 ((~>) b3530822107858468866 ((~>) c3530822107858468867 ((~>) d3530822107858468868 ((~>) e3530822107858468869 ((~>) f3530822107858468870 ((~>) g3530822107858468871 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type), (g3530822107858468871 :: Type))))))))
  • data Tuple7Sym1 (t6989586621679299345 :: (a3530822107858468865 :: Type)) :: forall (b3530822107858468866 :: Type) (c3530822107858468867 :: Type) (d3530822107858468868 :: Type) (e3530822107858468869 :: Type) (f3530822107858468870 :: Type) (g3530822107858468871 :: Type). (~>) b3530822107858468866 ((~>) c3530822107858468867 ((~>) d3530822107858468868 ((~>) e3530822107858468869 ((~>) f3530822107858468870 ((~>) g3530822107858468871 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type), (g3530822107858468871 :: Type)))))))
  • data Tuple7Sym2 (t6989586621679299345 :: (a3530822107858468865 :: Type)) (t6989586621679299346 :: (b3530822107858468866 :: Type)) :: forall (c3530822107858468867 :: Type) (d3530822107858468868 :: Type) (e3530822107858468869 :: Type) (f3530822107858468870 :: Type) (g3530822107858468871 :: Type). (~>) c3530822107858468867 ((~>) d3530822107858468868 ((~>) e3530822107858468869 ((~>) f3530822107858468870 ((~>) g3530822107858468871 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type), (g3530822107858468871 :: Type))))))
  • data Tuple7Sym3 (t6989586621679299345 :: (a3530822107858468865 :: Type)) (t6989586621679299346 :: (b3530822107858468866 :: Type)) (t6989586621679299347 :: (c3530822107858468867 :: Type)) :: forall (d3530822107858468868 :: Type) (e3530822107858468869 :: Type) (f3530822107858468870 :: Type) (g3530822107858468871 :: Type). (~>) d3530822107858468868 ((~>) e3530822107858468869 ((~>) f3530822107858468870 ((~>) g3530822107858468871 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type), (g3530822107858468871 :: Type)))))
  • data Tuple7Sym4 (t6989586621679299345 :: (a3530822107858468865 :: Type)) (t6989586621679299346 :: (b3530822107858468866 :: Type)) (t6989586621679299347 :: (c3530822107858468867 :: Type)) (t6989586621679299348 :: (d3530822107858468868 :: Type)) :: forall (e3530822107858468869 :: Type) (f3530822107858468870 :: Type) (g3530822107858468871 :: Type). (~>) e3530822107858468869 ((~>) f3530822107858468870 ((~>) g3530822107858468871 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type), (g3530822107858468871 :: Type))))
  • data Tuple7Sym5 (t6989586621679299345 :: (a3530822107858468865 :: Type)) (t6989586621679299346 :: (b3530822107858468866 :: Type)) (t6989586621679299347 :: (c3530822107858468867 :: Type)) (t6989586621679299348 :: (d3530822107858468868 :: Type)) (t6989586621679299349 :: (e3530822107858468869 :: Type)) :: forall (f3530822107858468870 :: Type) (g3530822107858468871 :: Type). (~>) f3530822107858468870 ((~>) g3530822107858468871 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type), (g3530822107858468871 :: Type)))
  • data Tuple7Sym6 (t6989586621679299345 :: (a3530822107858468865 :: Type)) (t6989586621679299346 :: (b3530822107858468866 :: Type)) (t6989586621679299347 :: (c3530822107858468867 :: Type)) (t6989586621679299348 :: (d3530822107858468868 :: Type)) (t6989586621679299349 :: (e3530822107858468869 :: Type)) (t6989586621679299350 :: (f3530822107858468870 :: Type)) :: forall (g3530822107858468871 :: Type). (~>) g3530822107858468871 ((a3530822107858468865 :: Type), (b3530822107858468866 :: Type), (c3530822107858468867 :: Type), (d3530822107858468868 :: Type), (e3530822107858468869 :: Type), (f3530822107858468870 :: Type), (g3530822107858468871 :: Type))
  • type Tuple7Sym7 (t6989586621679299345 :: a3530822107858468865) (t6989586621679299346 :: b3530822107858468866) (t6989586621679299347 :: c3530822107858468867) (t6989586621679299348 :: d3530822107858468868) (t6989586621679299349 :: e3530822107858468869) (t6989586621679299350 :: f3530822107858468870) (t6989586621679299351 :: g3530822107858468871) = '(t6989586621679299345, t6989586621679299346, t6989586621679299347, t6989586621679299348, t6989586621679299349, t6989586621679299350, t6989586621679299351)
  • data FstSym0 :: forall a6989586621679356082 b6989586621679356083. (~>) (a6989586621679356082, b6989586621679356083) a6989586621679356082
  • type FstSym1 (a6989586621679356178 :: (a6989586621679356082, b6989586621679356083)) = Fst a6989586621679356178
  • data SndSym0 :: forall a6989586621679356080 b6989586621679356081. (~>) (a6989586621679356080, b6989586621679356081) b6989586621679356081
  • type SndSym1 (a6989586621679356175 :: (a6989586621679356080, b6989586621679356081)) = Snd a6989586621679356175
  • data CurrySym0 :: forall a6989586621679356077 b6989586621679356078 c6989586621679356079. (~>) ((~>) (a6989586621679356077, b6989586621679356078) c6989586621679356079) ((~>) a6989586621679356077 ((~>) b6989586621679356078 c6989586621679356079))
  • data CurrySym1 (a6989586621679356166 :: (~>) (a6989586621679356077, b6989586621679356078) c6989586621679356079) :: (~>) a6989586621679356077 ((~>) b6989586621679356078 c6989586621679356079)
  • data CurrySym2 (a6989586621679356166 :: (~>) (a6989586621679356077, b6989586621679356078) c6989586621679356079) (a6989586621679356167 :: a6989586621679356077) :: (~>) b6989586621679356078 c6989586621679356079
  • type CurrySym3 (a6989586621679356166 :: (~>) (a6989586621679356077, b6989586621679356078) c6989586621679356079) (a6989586621679356167 :: a6989586621679356077) (a6989586621679356168 :: b6989586621679356078) = Curry a6989586621679356166 a6989586621679356167 a6989586621679356168
  • data UncurrySym0 :: forall a6989586621679356074 b6989586621679356075 c6989586621679356076. (~>) ((~>) a6989586621679356074 ((~>) b6989586621679356075 c6989586621679356076)) ((~>) (a6989586621679356074, b6989586621679356075) c6989586621679356076)
  • data UncurrySym1 (a6989586621679356181 :: (~>) a6989586621679356074 ((~>) b6989586621679356075 c6989586621679356076)) :: (~>) (a6989586621679356074, b6989586621679356075) c6989586621679356076
  • type UncurrySym2 (a6989586621679356181 :: (~>) a6989586621679356074 ((~>) b6989586621679356075 c6989586621679356076)) (a6989586621679356182 :: (a6989586621679356074, b6989586621679356075)) = Uncurry a6989586621679356181 a6989586621679356182
  • data ErrorSym0 :: forall k06989586621679468164 k6989586621679468163. (~>) k06989586621679468164 k6989586621679468163
  • type ErrorSym1 (str6989586621679468165 :: k06989586621679468164) = Error str6989586621679468165
  • data ErrorWithoutStackTraceSym0 :: forall k06989586621679469214 k6989586621679469213. (~>) k06989586621679469214 k6989586621679469213
  • type ErrorWithoutStackTraceSym1 (str6989586621679469215 :: k06989586621679469214) = ErrorWithoutStackTrace str6989586621679469215
  • type UndefinedSym0 = Undefined
  • type LTSym0 = LT
  • type EQSym0 = EQ
  • type GTSym0 = GT
  • data CompareSym0 :: forall a6989586621679380707. (~>) a6989586621679380707 ((~>) a6989586621679380707 Ordering)
  • data CompareSym1 (arg6989586621679380801 :: a6989586621679380707) :: (~>) a6989586621679380707 Ordering
  • type CompareSym2 (arg6989586621679380801 :: a6989586621679380707) (arg6989586621679380802 :: a6989586621679380707) = Compare arg6989586621679380801 arg6989586621679380802
  • data (<@#@$) :: forall a6989586621679380707. (~>) a6989586621679380707 ((~>) a6989586621679380707 Bool)
  • data (<@#@$$) (arg6989586621679380805 :: a6989586621679380707) :: (~>) a6989586621679380707 Bool
  • type (<@#@$$$) (arg6989586621679380805 :: a6989586621679380707) (arg6989586621679380806 :: a6989586621679380707) = (<) arg6989586621679380805 arg6989586621679380806
  • data (<=@#@$) :: forall a6989586621679380707. (~>) a6989586621679380707 ((~>) a6989586621679380707 Bool)
  • data (<=@#@$$) (arg6989586621679380809 :: a6989586621679380707) :: (~>) a6989586621679380707 Bool
  • type (<=@#@$$$) (arg6989586621679380809 :: a6989586621679380707) (arg6989586621679380810 :: a6989586621679380707) = (<=) arg6989586621679380809 arg6989586621679380810
  • data (>@#@$) :: forall a6989586621679380707. (~>) a6989586621679380707 ((~>) a6989586621679380707 Bool)
  • data (>@#@$$) (arg6989586621679380813 :: a6989586621679380707) :: (~>) a6989586621679380707 Bool
  • type (>@#@$$$) (arg6989586621679380813 :: a6989586621679380707) (arg6989586621679380814 :: a6989586621679380707) = (>) arg6989586621679380813 arg6989586621679380814
  • data (>=@#@$) :: forall a6989586621679380707. (~>) a6989586621679380707 ((~>) a6989586621679380707 Bool)
  • data (>=@#@$$) (arg6989586621679380817 :: a6989586621679380707) :: (~>) a6989586621679380707 Bool
  • type (>=@#@$$$) (arg6989586621679380817 :: a6989586621679380707) (arg6989586621679380818 :: a6989586621679380707) = (>=) arg6989586621679380817 arg6989586621679380818
  • data MaxSym0 :: forall a6989586621679380707. (~>) a6989586621679380707 ((~>) a6989586621679380707 a6989586621679380707)
  • data MaxSym1 (arg6989586621679380821 :: a6989586621679380707) :: (~>) a6989586621679380707 a6989586621679380707
  • type MaxSym2 (arg6989586621679380821 :: a6989586621679380707) (arg6989586621679380822 :: a6989586621679380707) = Max arg6989586621679380821 arg6989586621679380822
  • data MinSym0 :: forall a6989586621679380707. (~>) a6989586621679380707 ((~>) a6989586621679380707 a6989586621679380707)
  • data MinSym1 (arg6989586621679380825 :: a6989586621679380707) :: (~>) a6989586621679380707 a6989586621679380707
  • type MinSym2 (arg6989586621679380825 :: a6989586621679380707) (arg6989586621679380826 :: a6989586621679380707) = Min arg6989586621679380825 arg6989586621679380826
  • data (^@#@$) :: (~>) Nat ((~>) Nat Nat)
  • data (^@#@$$) (a3530822107858468865 :: Nat) :: (~>) Nat Nat
  • type (^@#@$$$) (a3530822107858468865 :: Nat) (b3530822107858468866 :: Nat) = (^) a3530822107858468865 b3530822107858468866
  • data ShowsPrecSym0 :: forall a6989586621680260588. (~>) Nat ((~>) a6989586621680260588 ((~>) Symbol Symbol))
  • data ShowsPrecSym1 (arg6989586621680262538 :: Nat) :: forall a6989586621680260588. (~>) a6989586621680260588 ((~>) Symbol Symbol)
  • data ShowsPrecSym2 (arg6989586621680262538 :: Nat) (arg6989586621680262539 :: a6989586621680260588) :: (~>) Symbol Symbol
  • type ShowsPrecSym3 (arg6989586621680262538 :: Nat) (arg6989586621680262539 :: a6989586621680260588) (arg6989586621680262540 :: Symbol) = ShowsPrec arg6989586621680262538 arg6989586621680262539 arg6989586621680262540
  • data Show_Sym0 :: forall a6989586621680260588. (~>) a6989586621680260588 Symbol
  • type Show_Sym1 (arg6989586621680262544 :: a6989586621680260588) = Show_ arg6989586621680262544
  • data ShowListSym0 :: forall a6989586621680260588. (~>) [a6989586621680260588] ((~>) Symbol Symbol)
  • data ShowListSym1 (arg6989586621680262546 :: [a6989586621680260588]) :: (~>) Symbol Symbol
  • type ShowListSym2 (arg6989586621680262546 :: [a6989586621680260588]) (arg6989586621680262547 :: Symbol) = ShowList arg6989586621680262546 arg6989586621680262547
  • data ShowsSym0 :: forall a6989586621680260573. (~>) a6989586621680260573 ((~>) Symbol Symbol)
  • data ShowsSym1 (a6989586621680262530 :: a6989586621680260573) :: (~>) Symbol Symbol
  • type ShowsSym2 (a6989586621680262530 :: a6989586621680260573) (a6989586621680262531 :: Symbol) = Shows a6989586621680262530 a6989586621680262531
  • data ShowCharSym0 :: (~>) Symbol ((~>) Symbol Symbol)
  • data ShowCharSym1 (a6989586621680262472 :: Symbol) :: (~>) Symbol Symbol
  • type ShowCharSym2 (a6989586621680262472 :: Symbol) (a6989586621680262473 :: Symbol) = ShowChar a6989586621680262472 a6989586621680262473
  • data ShowStringSym0 :: (~>) Symbol ((~>) Symbol Symbol)
  • data ShowStringSym1 (a6989586621680262457 :: Symbol) :: (~>) Symbol Symbol
  • type ShowStringSym2 (a6989586621680262457 :: Symbol) (a6989586621680262458 :: Symbol) = ShowString a6989586621680262457 a6989586621680262458
  • data ShowParenSym0 :: (~>) Bool ((~>) ((~>) Symbol Symbol) ((~>) Symbol Symbol))
  • data ShowParenSym1 (a6989586621680262478 :: Bool) :: (~>) ((~>) Symbol Symbol) ((~>) Symbol Symbol)
  • data ShowParenSym2 (a6989586621680262478 :: Bool) (a6989586621680262479 :: (~>) Symbol Symbol) :: (~>) Symbol Symbol
  • data (<>@#@$) :: forall a6989586621679810357. (~>) a6989586621679810357 ((~>) a6989586621679810357 a6989586621679810357)
  • data (<>@#@$$) (arg6989586621679810842 :: a6989586621679810357) :: (~>) a6989586621679810357 a6989586621679810357
  • type (<>@#@$$$) (arg6989586621679810842 :: a6989586621679810357) (arg6989586621679810843 :: a6989586621679810357) = (<>) arg6989586621679810842 arg6989586621679810843
  • type MemptySym0 = Mempty
  • data MappendSym0 :: forall a6989586621680329525. (~>) a6989586621680329525 ((~>) a6989586621680329525 a6989586621680329525)
  • data MappendSym1 (arg6989586621680329910 :: a6989586621680329525) :: (~>) a6989586621680329525 a6989586621680329525
  • type MappendSym2 (arg6989586621680329910 :: a6989586621680329525) (arg6989586621680329911 :: a6989586621680329525) = Mappend arg6989586621680329910 arg6989586621680329911
  • data MconcatSym0 :: forall a6989586621680329525. (~>) [a6989586621680329525] a6989586621680329525
  • type MconcatSym1 (arg6989586621680329914 :: [a6989586621680329525]) = Mconcat arg6989586621680329914
  • data FmapSym0 :: forall a6989586621679545127 b6989586621679545128 f6989586621679545126. (~>) ((~>) a6989586621679545127 b6989586621679545128) ((~>) (f6989586621679545126 a6989586621679545127) (f6989586621679545126 b6989586621679545128))
  • data FmapSym1 (arg6989586621679545520 :: (~>) a6989586621679545127 b6989586621679545128) :: forall f6989586621679545126. (~>) (f6989586621679545126 a6989586621679545127) (f6989586621679545126 b6989586621679545128)
  • type FmapSym2 (arg6989586621679545520 :: (~>) a6989586621679545127 b6989586621679545128) (arg6989586621679545521 :: f6989586621679545126 a6989586621679545127) = Fmap arg6989586621679545520 arg6989586621679545521
  • data (<$@#@$) :: forall a6989586621679545129 b6989586621679545130 f6989586621679545126. (~>) a6989586621679545129 ((~>) (f6989586621679545126 b6989586621679545130) (f6989586621679545126 a6989586621679545129))
  • data (<$@#@$$) (arg6989586621679545524 :: a6989586621679545129) :: forall b6989586621679545130 f6989586621679545126. (~>) (f6989586621679545126 b6989586621679545130) (f6989586621679545126 a6989586621679545129)
  • type (<$@#@$$$) (arg6989586621679545524 :: a6989586621679545129) (arg6989586621679545525 :: f6989586621679545126 b6989586621679545130) = (<$) arg6989586621679545524 arg6989586621679545525
  • data (<$>@#@$) :: forall a6989586621679714518 b6989586621679714519 f6989586621679714517. (~>) ((~>) a6989586621679714518 b6989586621679714519) ((~>) (f6989586621679714517 a6989586621679714518) (f6989586621679714517 b6989586621679714519))
  • data (<$>@#@$$) (a6989586621679714598 :: (~>) a6989586621679714518 b6989586621679714519) :: forall f6989586621679714517. (~>) (f6989586621679714517 a6989586621679714518) (f6989586621679714517 b6989586621679714519)
  • type (<$>@#@$$$) (a6989586621679714598 :: (~>) a6989586621679714518 b6989586621679714519) (a6989586621679714599 :: f6989586621679714517 a6989586621679714518) = (<$>) a6989586621679714598 a6989586621679714599
  • data PureSym0 :: forall a6989586621679545132 f6989586621679545131. (~>) a6989586621679545132 (f6989586621679545131 a6989586621679545132)
  • type PureSym1 (arg6989586621679545544 :: a6989586621679545132) = Pure arg6989586621679545544
  • data (<*>@#@$) :: forall a6989586621679545133 b6989586621679545134 f6989586621679545131. (~>) (f6989586621679545131 ((~>) a6989586621679545133 b6989586621679545134)) ((~>) (f6989586621679545131 a6989586621679545133) (f6989586621679545131 b6989586621679545134))
  • data (<*>@#@$$) (arg6989586621679545546 :: f6989586621679545131 ((~>) a6989586621679545133 b6989586621679545134)) :: (~>) (f6989586621679545131 a6989586621679545133) (f6989586621679545131 b6989586621679545134)
  • type (<*>@#@$$$) (arg6989586621679545546 :: f6989586621679545131 ((~>) a6989586621679545133 b6989586621679545134)) (arg6989586621679545547 :: f6989586621679545131 a6989586621679545133) = (<*>) arg6989586621679545546 arg6989586621679545547
  • data (*>@#@$) :: forall a6989586621679545138 b6989586621679545139 f6989586621679545131. (~>) (f6989586621679545131 a6989586621679545138) ((~>) (f6989586621679545131 b6989586621679545139) (f6989586621679545131 b6989586621679545139))
  • data (*>@#@$$) (arg6989586621679545556 :: f6989586621679545131 a6989586621679545138) :: forall b6989586621679545139. (~>) (f6989586621679545131 b6989586621679545139) (f6989586621679545131 b6989586621679545139)
  • type (*>@#@$$$) (arg6989586621679545556 :: f6989586621679545131 a6989586621679545138) (arg6989586621679545557 :: f6989586621679545131 b6989586621679545139) = (*>) arg6989586621679545556 arg6989586621679545557
  • data (<*@#@$) :: forall a6989586621679545140 b6989586621679545141 f6989586621679545131. (~>) (f6989586621679545131 a6989586621679545140) ((~>) (f6989586621679545131 b6989586621679545141) (f6989586621679545131 a6989586621679545140))
  • data (<*@#@$$) (arg6989586621679545560 :: f6989586621679545131 a6989586621679545140) :: forall b6989586621679545141. (~>) (f6989586621679545131 b6989586621679545141) (f6989586621679545131 a6989586621679545140)
  • type (<*@#@$$$) (arg6989586621679545560 :: f6989586621679545131 a6989586621679545140) (arg6989586621679545561 :: f6989586621679545131 b6989586621679545141) = (<*) arg6989586621679545560 arg6989586621679545561
  • data (>>=@#@$) :: forall a6989586621679545156 b6989586621679545157 m6989586621679545155. (~>) (m6989586621679545155 a6989586621679545156) ((~>) ((~>) a6989586621679545156 (m6989586621679545155 b6989586621679545157)) (m6989586621679545155 b6989586621679545157))
  • data (>>=@#@$$) (arg6989586621679545627 :: m6989586621679545155 a6989586621679545156) :: forall b6989586621679545157. (~>) ((~>) a6989586621679545156 (m6989586621679545155 b6989586621679545157)) (m6989586621679545155 b6989586621679545157)
  • type (>>=@#@$$$) (arg6989586621679545627 :: m6989586621679545155 a6989586621679545156) (arg6989586621679545628 :: (~>) a6989586621679545156 (m6989586621679545155 b6989586621679545157)) = (>>=) arg6989586621679545627 arg6989586621679545628
  • data (>>@#@$) :: forall a6989586621679545158 b6989586621679545159 m6989586621679545155. (~>) (m6989586621679545155 a6989586621679545158) ((~>) (m6989586621679545155 b6989586621679545159) (m6989586621679545155 b6989586621679545159))
  • data (>>@#@$$) (arg6989586621679545631 :: m6989586621679545155 a6989586621679545158) :: forall b6989586621679545159. (~>) (m6989586621679545155 b6989586621679545159) (m6989586621679545155 b6989586621679545159)
  • type (>>@#@$$$) (arg6989586621679545631 :: m6989586621679545155 a6989586621679545158) (arg6989586621679545632 :: m6989586621679545155 b6989586621679545159) = (>>) arg6989586621679545631 arg6989586621679545632
  • data ReturnSym0 :: forall a6989586621679545160 m6989586621679545155. (~>) a6989586621679545160 (m6989586621679545155 a6989586621679545160)
  • type ReturnSym1 (arg6989586621679545635 :: a6989586621679545160) = Return arg6989586621679545635
  • data FailSym0 :: forall a6989586621679545161 m6989586621679545155. (~>) Symbol (m6989586621679545155 a6989586621679545161)
  • type FailSym1 (arg6989586621679545637 :: Symbol) = Fail arg6989586621679545637
  • data MapM_Sym0 :: forall a6989586621680452668 b6989586621680452669 m6989586621680452667 t6989586621680452666. (~>) ((~>) a6989586621680452668 (m6989586621680452667 b6989586621680452669)) ((~>) (t6989586621680452666 a6989586621680452668) (m6989586621680452667 ()))
  • data MapM_Sym1 (a6989586621680453266 :: (~>) a6989586621680452668 (m6989586621680452667 b6989586621680452669)) :: forall t6989586621680452666. (~>) (t6989586621680452666 a6989586621680452668) (m6989586621680452667 ())
  • type MapM_Sym2 (a6989586621680453266 :: (~>) a6989586621680452668 (m6989586621680452667 b6989586621680452669)) (a6989586621680453267 :: t6989586621680452666 a6989586621680452668) = MapM_ a6989586621680453266 a6989586621680453267
  • data Sequence_Sym0 :: forall a6989586621680452658 m6989586621680452657 t6989586621680452656. (~>) (t6989586621680452656 (m6989586621680452657 a6989586621680452658)) (m6989586621680452657 ())
  • type Sequence_Sym1 (a6989586621680453258 :: t6989586621680452656 (m6989586621680452657 a6989586621680452658)) = Sequence_ a6989586621680453258
  • data (=<<@#@$) :: forall a6989586621679545078 b6989586621679545079 m6989586621679545077. (~>) ((~>) a6989586621679545078 (m6989586621679545077 b6989586621679545079)) ((~>) (m6989586621679545077 a6989586621679545078) (m6989586621679545077 b6989586621679545079))
  • data (=<<@#@$$) (a6989586621679545473 :: (~>) a6989586621679545078 (m6989586621679545077 b6989586621679545079)) :: (~>) (m6989586621679545077 a6989586621679545078) (m6989586621679545077 b6989586621679545079)
  • type (=<<@#@$$$) (a6989586621679545473 :: (~>) a6989586621679545078 (m6989586621679545077 b6989586621679545079)) (a6989586621679545474 :: m6989586621679545077 a6989586621679545078) = (=<<) a6989586621679545473 a6989586621679545474
  • data ElemSym0 :: forall a6989586621680452740 t6989586621680452723. (~>) a6989586621680452740 ((~>) (t6989586621680452723 a6989586621680452740) Bool)
  • data ElemSym1 (arg6989586621680453390 :: a6989586621680452740) :: forall t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452740) Bool
  • type ElemSym2 (arg6989586621680453390 :: a6989586621680452740) (arg6989586621680453391 :: t6989586621680452723 a6989586621680452740) = Elem arg6989586621680453390 arg6989586621680453391
  • data FoldMapSym0 :: forall a6989586621680452726 m6989586621680452725 t6989586621680452723. (~>) ((~>) a6989586621680452726 m6989586621680452725) ((~>) (t6989586621680452723 a6989586621680452726) m6989586621680452725)
  • data FoldMapSym1 (arg6989586621680453348 :: (~>) a6989586621680452726 m6989586621680452725) :: forall t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452726) m6989586621680452725
  • type FoldMapSym2 (arg6989586621680453348 :: (~>) a6989586621680452726 m6989586621680452725) (arg6989586621680453349 :: t6989586621680452723 a6989586621680452726) = FoldMap arg6989586621680453348 arg6989586621680453349
  • data FoldrSym0 :: forall a6989586621680452727 b6989586621680452728 t6989586621680452723. (~>) ((~>) a6989586621680452727 ((~>) b6989586621680452728 b6989586621680452728)) ((~>) b6989586621680452728 ((~>) (t6989586621680452723 a6989586621680452727) b6989586621680452728))
  • data FoldrSym1 (arg6989586621680453352 :: (~>) a6989586621680452727 ((~>) b6989586621680452728 b6989586621680452728)) :: forall t6989586621680452723. (~>) b6989586621680452728 ((~>) (t6989586621680452723 a6989586621680452727) b6989586621680452728)
  • data FoldrSym2 (arg6989586621680453352 :: (~>) a6989586621680452727 ((~>) b6989586621680452728 b6989586621680452728)) (arg6989586621680453353 :: b6989586621680452728) :: forall t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452727) b6989586621680452728
  • type FoldrSym3 (arg6989586621680453352 :: (~>) a6989586621680452727 ((~>) b6989586621680452728 b6989586621680452728)) (arg6989586621680453353 :: b6989586621680452728) (arg6989586621680453354 :: t6989586621680452723 a6989586621680452727) = Foldr arg6989586621680453352 arg6989586621680453353 arg6989586621680453354
  • data FoldlSym0 :: forall a6989586621680452732 b6989586621680452731 t6989586621680452723. (~>) ((~>) b6989586621680452731 ((~>) a6989586621680452732 b6989586621680452731)) ((~>) b6989586621680452731 ((~>) (t6989586621680452723 a6989586621680452732) b6989586621680452731))
  • data FoldlSym1 (arg6989586621680453364 :: (~>) b6989586621680452731 ((~>) a6989586621680452732 b6989586621680452731)) :: forall t6989586621680452723. (~>) b6989586621680452731 ((~>) (t6989586621680452723 a6989586621680452732) b6989586621680452731)
  • data FoldlSym2 (arg6989586621680453364 :: (~>) b6989586621680452731 ((~>) a6989586621680452732 b6989586621680452731)) (arg6989586621680453365 :: b6989586621680452731) :: forall t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452732) b6989586621680452731
  • type FoldlSym3 (arg6989586621680453364 :: (~>) b6989586621680452731 ((~>) a6989586621680452732 b6989586621680452731)) (arg6989586621680453365 :: b6989586621680452731) (arg6989586621680453366 :: t6989586621680452723 a6989586621680452732) = Foldl arg6989586621680453364 arg6989586621680453365 arg6989586621680453366
  • data Foldr1Sym0 :: forall a6989586621680452735 t6989586621680452723. (~>) ((~>) a6989586621680452735 ((~>) a6989586621680452735 a6989586621680452735)) ((~>) (t6989586621680452723 a6989586621680452735) a6989586621680452735)
  • data Foldr1Sym1 (arg6989586621680453376 :: (~>) a6989586621680452735 ((~>) a6989586621680452735 a6989586621680452735)) :: forall t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452735) a6989586621680452735
  • type Foldr1Sym2 (arg6989586621680453376 :: (~>) a6989586621680452735 ((~>) a6989586621680452735 a6989586621680452735)) (arg6989586621680453377 :: t6989586621680452723 a6989586621680452735) = Foldr1 arg6989586621680453376 arg6989586621680453377
  • data Foldl1Sym0 :: forall a6989586621680452736 t6989586621680452723. (~>) ((~>) a6989586621680452736 ((~>) a6989586621680452736 a6989586621680452736)) ((~>) (t6989586621680452723 a6989586621680452736) a6989586621680452736)
  • data Foldl1Sym1 (arg6989586621680453380 :: (~>) a6989586621680452736 ((~>) a6989586621680452736 a6989586621680452736)) :: forall t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452736) a6989586621680452736
  • type Foldl1Sym2 (arg6989586621680453380 :: (~>) a6989586621680452736 ((~>) a6989586621680452736 a6989586621680452736)) (arg6989586621680453381 :: t6989586621680452723 a6989586621680452736) = Foldl1 arg6989586621680453380 arg6989586621680453381
  • data MaximumSym0 :: forall a6989586621680452741 t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452741) a6989586621680452741
  • type MaximumSym1 (arg6989586621680453394 :: t6989586621680452723 a6989586621680452741) = Maximum arg6989586621680453394
  • data MinimumSym0 :: forall a6989586621680452742 t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452742) a6989586621680452742
  • type MinimumSym1 (arg6989586621680453396 :: t6989586621680452723 a6989586621680452742) = Minimum arg6989586621680453396
  • data SumSym0 :: forall a6989586621680452743 t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452743) a6989586621680452743
  • type SumSym1 (arg6989586621680453398 :: t6989586621680452723 a6989586621680452743) = Sum arg6989586621680453398
  • data ProductSym0 :: forall a6989586621680452744 t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452744) a6989586621680452744
  • type ProductSym1 (arg6989586621680453400 :: t6989586621680452723 a6989586621680452744) = Product arg6989586621680453400
  • data TraverseSym0 :: forall a6989586621680750996 b6989586621680750997 f6989586621680750995 t6989586621680750994. (~>) ((~>) a6989586621680750996 (f6989586621680750995 b6989586621680750997)) ((~>) (t6989586621680750994 a6989586621680750996) (f6989586621680750995 (t6989586621680750994 b6989586621680750997)))
  • data TraverseSym1 (arg6989586621680751006 :: (~>) a6989586621680750996 (f6989586621680750995 b6989586621680750997)) :: forall t6989586621680750994. (~>) (t6989586621680750994 a6989586621680750996) (f6989586621680750995 (t6989586621680750994 b6989586621680750997))
  • type TraverseSym2 (arg6989586621680751006 :: (~>) a6989586621680750996 (f6989586621680750995 b6989586621680750997)) (arg6989586621680751007 :: t6989586621680750994 a6989586621680750996) = Traverse arg6989586621680751006 arg6989586621680751007
  • data SequenceASym0 :: forall a6989586621680750999 f6989586621680750998 t6989586621680750994. (~>) (t6989586621680750994 (f6989586621680750998 a6989586621680750999)) (f6989586621680750998 (t6989586621680750994 a6989586621680750999))
  • type SequenceASym1 (arg6989586621680751010 :: t6989586621680750994 (f6989586621680750998 a6989586621680750999)) = SequenceA arg6989586621680751010
  • data MapMSym0 :: forall a6989586621680751001 b6989586621680751002 m6989586621680751000 t6989586621680750994. (~>) ((~>) a6989586621680751001 (m6989586621680751000 b6989586621680751002)) ((~>) (t6989586621680750994 a6989586621680751001) (m6989586621680751000 (t6989586621680750994 b6989586621680751002)))
  • data MapMSym1 (arg6989586621680751012 :: (~>) a6989586621680751001 (m6989586621680751000 b6989586621680751002)) :: forall t6989586621680750994. (~>) (t6989586621680750994 a6989586621680751001) (m6989586621680751000 (t6989586621680750994 b6989586621680751002))
  • type MapMSym2 (arg6989586621680751012 :: (~>) a6989586621680751001 (m6989586621680751000 b6989586621680751002)) (arg6989586621680751013 :: t6989586621680750994 a6989586621680751001) = MapM arg6989586621680751012 arg6989586621680751013
  • data SequenceSym0 :: forall a6989586621680751004 m6989586621680751003 t6989586621680750994. (~>) (t6989586621680750994 (m6989586621680751003 a6989586621680751004)) (m6989586621680751003 (t6989586621680750994 a6989586621680751004))
  • type SequenceSym1 (arg6989586621680751016 :: t6989586621680750994 (m6989586621680751003 a6989586621680751004)) = Sequence arg6989586621680751016
  • data IdSym0 :: forall a6989586621679520925. (~>) a6989586621679520925 a6989586621679520925
  • type IdSym1 (a6989586621679521120 :: a6989586621679520925) = Id a6989586621679521120
  • data ConstSym0 :: forall a6989586621679520923 b6989586621679520924. (~>) a6989586621679520923 ((~>) b6989586621679520924 a6989586621679520923)
  • data ConstSym1 (a6989586621679521105 :: a6989586621679520923) :: forall b6989586621679520924. (~>) b6989586621679520924 a6989586621679520923
  • type ConstSym2 (a6989586621679521105 :: a6989586621679520923) (a6989586621679521106 :: b6989586621679520924) = Const a6989586621679521105 a6989586621679521106
  • data (.@#@$) :: forall a6989586621679520922 b6989586621679520920 c6989586621679520921. (~>) ((~>) b6989586621679520920 c6989586621679520921) ((~>) ((~>) a6989586621679520922 b6989586621679520920) ((~>) a6989586621679520922 c6989586621679520921))
  • data (.@#@$$) (a6989586621679521086 :: (~>) b6989586621679520920 c6989586621679520921) :: forall a6989586621679520922. (~>) ((~>) a6989586621679520922 b6989586621679520920) ((~>) a6989586621679520922 c6989586621679520921)
  • data (a6989586621679521086 :: (~>) b6989586621679520920 c6989586621679520921) .@#@$$$ (a6989586621679521087 :: (~>) a6989586621679520922 b6989586621679520920) :: (~>) a6989586621679520922 c6989586621679520921
  • data ($@#@$) :: forall a6989586621679520914 b6989586621679520915. (~>) ((~>) a6989586621679520914 b6989586621679520915) ((~>) a6989586621679520914 b6989586621679520915)
  • data ($@#@$$) (a6989586621679521071 :: (~>) a6989586621679520914 b6989586621679520915) :: (~>) a6989586621679520914 b6989586621679520915
  • type ($@#@$$$) (a6989586621679521071 :: (~>) a6989586621679520914 b6989586621679520915) (a6989586621679521072 :: a6989586621679520914) = ($) a6989586621679521071 a6989586621679521072
  • data ($!@#@$) :: forall a6989586621679520912 b6989586621679520913. (~>) ((~>) a6989586621679520912 b6989586621679520913) ((~>) a6989586621679520912 b6989586621679520913)
  • data ($!@#@$$) (a6989586621679521062 :: (~>) a6989586621679520912 b6989586621679520913) :: (~>) a6989586621679520912 b6989586621679520913
  • type ($!@#@$$$) (a6989586621679521062 :: (~>) a6989586621679520912 b6989586621679520913) (a6989586621679521063 :: a6989586621679520912) = ($!) a6989586621679521062 a6989586621679521063
  • data FlipSym0 :: forall a6989586621679520917 b6989586621679520918 c6989586621679520919. (~>) ((~>) a6989586621679520917 ((~>) b6989586621679520918 c6989586621679520919)) ((~>) b6989586621679520918 ((~>) a6989586621679520917 c6989586621679520919))
  • data FlipSym1 (a6989586621679521077 :: (~>) a6989586621679520917 ((~>) b6989586621679520918 c6989586621679520919)) :: (~>) b6989586621679520918 ((~>) a6989586621679520917 c6989586621679520919)
  • data FlipSym2 (a6989586621679521077 :: (~>) a6989586621679520917 ((~>) b6989586621679520918 c6989586621679520919)) (a6989586621679521078 :: b6989586621679520918) :: (~>) a6989586621679520917 c6989586621679520919
  • data AsTypeOfSym0 :: forall a6989586621679520916. (~>) a6989586621679520916 ((~>) a6989586621679520916 a6989586621679520916)
  • data AsTypeOfSym1 (a6989586621679521114 :: a6989586621679520916) :: (~>) a6989586621679520916 a6989586621679520916
  • type AsTypeOfSym2 (a6989586621679521114 :: a6989586621679520916) (a6989586621679521115 :: a6989586621679520916) = AsTypeOf a6989586621679521114 a6989586621679521115
  • data SeqSym0 :: forall a6989586621679520909 b6989586621679520910. (~>) a6989586621679520909 ((~>) b6989586621679520910 b6989586621679520910)
  • data SeqSym1 (a6989586621679521031 :: a6989586621679520909) :: forall b6989586621679520910. (~>) b6989586621679520910 b6989586621679520910
  • type SeqSym2 (a6989586621679521031 :: a6989586621679520909) (a6989586621679521032 :: b6989586621679520910) = Seq a6989586621679521031 a6989586621679521032
  • data (:@#@$) :: forall (a3530822107858468865 :: Type). (~>) a3530822107858468865 ((~>) [a3530822107858468865] [(a3530822107858468865 :: Type)])
  • data (:@#@$$) (t6989586621679298917 :: (a3530822107858468865 :: Type)) :: (~>) [a3530822107858468865] [(a3530822107858468865 :: Type)]
  • type (:@#@$$$) (t6989586621679298917 :: a3530822107858468865) (t6989586621679298918 :: [a3530822107858468865]) = (:) t6989586621679298917 t6989586621679298918
  • type NilSym0 = '[]
  • data MapSym0 :: forall a6989586621679520927 b6989586621679520928. (~>) ((~>) a6989586621679520927 b6989586621679520928) ((~>) [a6989586621679520927] [b6989586621679520928])
  • data MapSym1 (a6989586621679521131 :: (~>) a6989586621679520927 b6989586621679520928) :: (~>) [a6989586621679520927] [b6989586621679520928]
  • type MapSym2 (a6989586621679521131 :: (~>) a6989586621679520927 b6989586621679520928) (a6989586621679521132 :: [a6989586621679520927]) = Map a6989586621679521131 a6989586621679521132
  • data ReverseSym0 :: forall a6989586621679940137. (~>) [a6989586621679940137] [a6989586621679940137]
  • type ReverseSym1 (a6989586621679950596 :: [a6989586621679940137]) = Reverse a6989586621679950596
  • data (++@#@$$) (a6989586621679521123 :: [a6989586621679520926]) :: (~>) [a6989586621679520926] [a6989586621679520926]
  • data (++@#@$) :: forall a6989586621679520926. (~>) [a6989586621679520926] ((~>) [a6989586621679520926] [a6989586621679520926])
  • data FilterSym0 :: forall a6989586621679940052. (~>) ((~>) a6989586621679940052 Bool) ((~>) [a6989586621679940052] [a6989586621679940052])
  • data FilterSym1 (a6989586621679949593 :: (~>) a6989586621679940052 Bool) :: (~>) [a6989586621679940052] [a6989586621679940052]
  • type FilterSym2 (a6989586621679949593 :: (~>) a6989586621679940052 Bool) (a6989586621679949594 :: [a6989586621679940052]) = Filter a6989586621679949593 a6989586621679949594
  • data HeadSym0 :: forall a6989586621679940142. (~>) [a6989586621679940142] a6989586621679940142
  • type HeadSym1 (a6989586621679950665 :: [a6989586621679940142]) = Head a6989586621679950665
  • data LastSym0 :: forall a6989586621679940141. (~>) [a6989586621679940141] a6989586621679940141
  • type LastSym1 (a6989586621679950660 :: [a6989586621679940141]) = Last a6989586621679950660
  • data TailSym0 :: forall a6989586621679940140. (~>) [a6989586621679940140] [a6989586621679940140]
  • type TailSym1 (a6989586621679950657 :: [a6989586621679940140]) = Tail a6989586621679950657
  • data InitSym0 :: forall a6989586621679940139. (~>) [a6989586621679940139] [a6989586621679940139]
  • type InitSym1 (a6989586621679950643 :: [a6989586621679940139]) = Init a6989586621679950643
  • data NullSym0 :: forall a6989586621680452738 t6989586621680452723. (~>) (t6989586621680452723 a6989586621680452738) Bool
  • type NullSym1 (arg6989586621680453386 :: t6989586621680452723 a6989586621680452738) = Null arg6989586621680453386
  • data ConcatSym0 :: forall a6989586621680452649 t6989586621680452648. (~>) (t6989586621680452648 [a6989586621680452649]) [a6989586621680452649]
  • type ConcatSym1 (a6989586621680453234 :: t6989586621680452648 [a6989586621680452649]) = Concat a6989586621680453234
  • data ConcatMapSym0 :: forall a6989586621680452646 b6989586621680452647 t6989586621680452645. (~>) ((~>) a6989586621680452646 [b6989586621680452647]) ((~>) (t6989586621680452645 a6989586621680452646) [b6989586621680452647])
  • data ConcatMapSym1 (a6989586621680453218 :: (~>) a6989586621680452646 [b6989586621680452647]) :: forall t6989586621680452645. (~>) (t6989586621680452645 a6989586621680452646) [b6989586621680452647]
  • type ConcatMapSym2 (a6989586621680453218 :: (~>) a6989586621680452646 [b6989586621680452647]) (a6989586621680453219 :: t6989586621680452645 a6989586621680452646) = ConcatMap a6989586621680453218 a6989586621680453219
  • data AndSym0 :: forall t6989586621680452644. (~>) (t6989586621680452644 Bool) Bool
  • type AndSym1 (a6989586621680453209 :: t6989586621680452644 Bool) = And a6989586621680453209
  • data OrSym0 :: forall t6989586621680452643. (~>) (t6989586621680452643 Bool) Bool
  • type OrSym1 (a6989586621680453200 :: t6989586621680452643 Bool) = Or a6989586621680453200
  • data AnySym0 :: forall a6989586621680452642 t6989586621680452641. (~>) ((~>) a6989586621680452642 Bool) ((~>) (t6989586621680452641 a6989586621680452642) Bool)
  • data AnySym1 (a6989586621680453187 :: (~>) a6989586621680452642 Bool) :: forall t6989586621680452641. (~>) (t6989586621680452641 a6989586621680452642) Bool
  • type AnySym2 (a6989586621680453187 :: (~>) a6989586621680452642 Bool) (a6989586621680453188 :: t6989586621680452641 a6989586621680452642) = Any a6989586621680453187 a6989586621680453188
  • data AllSym0 :: forall a6989586621680452640 t6989586621680452639. (~>) ((~>) a6989586621680452640 Bool) ((~>) (t6989586621680452639 a6989586621680452640) Bool)
  • data AllSym1 (a6989586621680453174 :: (~>) a6989586621680452640 Bool) :: forall t6989586621680452639. (~>) (t6989586621680452639 a6989586621680452640) Bool
  • type AllSym2 (a6989586621680453174 :: (~>) a6989586621680452640 Bool) (a6989586621680453175 :: t6989586621680452639 a6989586621680452640) = All a6989586621680453174 a6989586621680453175
  • data ScanlSym0 :: forall a6989586621679940120 b6989586621679940119. (~>) ((~>) b6989586621679940119 ((~>) a6989586621679940120 b6989586621679940119)) ((~>) b6989586621679940119 ((~>) [a6989586621679940120] [b6989586621679940119]))
  • data ScanlSym1 (a6989586621679950228 :: (~>) b6989586621679940119 ((~>) a6989586621679940120 b6989586621679940119)) :: (~>) b6989586621679940119 ((~>) [a6989586621679940120] [b6989586621679940119])
  • data ScanlSym2 (a6989586621679950228 :: (~>) b6989586621679940119 ((~>) a6989586621679940120 b6989586621679940119)) (a6989586621679950229 :: b6989586621679940119) :: (~>) [a6989586621679940120] [b6989586621679940119]
  • type ScanlSym3 (a6989586621679950228 :: (~>) b6989586621679940119 ((~>) a6989586621679940120 b6989586621679940119)) (a6989586621679950229 :: b6989586621679940119) (a6989586621679950230 :: [a6989586621679940120]) = Scanl a6989586621679950228 a6989586621679950229 a6989586621679950230
  • data Scanl1Sym0 :: forall a6989586621679940118. (~>) ((~>) a6989586621679940118 ((~>) a6989586621679940118 a6989586621679940118)) ((~>) [a6989586621679940118] [a6989586621679940118])
  • data Scanl1Sym1 (a6989586621679950242 :: (~>) a6989586621679940118 ((~>) a6989586621679940118 a6989586621679940118)) :: (~>) [a6989586621679940118] [a6989586621679940118]
  • type Scanl1Sym2 (a6989586621679950242 :: (~>) a6989586621679940118 ((~>) a6989586621679940118 a6989586621679940118)) (a6989586621679950243 :: [a6989586621679940118]) = Scanl1 a6989586621679950242 a6989586621679950243
  • data ScanrSym0 :: forall a6989586621679940116 b6989586621679940117. (~>) ((~>) a6989586621679940116 ((~>) b6989586621679940117 b6989586621679940117)) ((~>) b6989586621679940117 ((~>) [a6989586621679940116] [b6989586621679940117]))
  • data ScanrSym1 (a6989586621679950207 :: (~>) a6989586621679940116 ((~>) b6989586621679940117 b6989586621679940117)) :: (~>) b6989586621679940117 ((~>) [a6989586621679940116] [b6989586621679940117])
  • data ScanrSym2 (a6989586621679950207 :: (~>) a6989586621679940116 ((~>) b6989586621679940117 b6989586621679940117)) (a6989586621679950208 :: b6989586621679940117) :: (~>) [a6989586621679940116] [b6989586621679940117]
  • type ScanrSym3 (a6989586621679950207 :: (~>) a6989586621679940116 ((~>) b6989586621679940117 b6989586621679940117)) (a6989586621679950208 :: b6989586621679940117) (a6989586621679950209 :: [a6989586621679940116]) = Scanr a6989586621679950207 a6989586621679950208 a6989586621679950209
  • data Scanr1Sym0 :: forall a6989586621679940115. (~>) ((~>) a6989586621679940115 ((~>) a6989586621679940115 a6989586621679940115)) ((~>) [a6989586621679940115] [a6989586621679940115])
  • data Scanr1Sym1 (a6989586621679950183 :: (~>) a6989586621679940115 ((~>) a6989586621679940115 a6989586621679940115)) :: (~>) [a6989586621679940115] [a6989586621679940115]
  • type Scanr1Sym2 (a6989586621679950183 :: (~>) a6989586621679940115 ((~>) a6989586621679940115 a6989586621679940115)) (a6989586621679950184 :: [a6989586621679940115]) = Scanr1 a6989586621679950183 a6989586621679950184
  • data ReplicateSym0 :: forall a6989586621679940023. (~>) Nat ((~>) a6989586621679940023 [a6989586621679940023])
  • data ReplicateSym1 (a6989586621679949325 :: Nat) :: forall a6989586621679940023. (~>) a6989586621679940023 [a6989586621679940023]
  • type ReplicateSym2 (a6989586621679949325 :: Nat) (a6989586621679949326 :: a6989586621679940023) = Replicate a6989586621679949325 a6989586621679949326
  • data TakeSym0 :: forall a6989586621679940039. (~>) Nat ((~>) [a6989586621679940039] [a6989586621679940039])
  • data TakeSym1 (a6989586621679949421 :: Nat) :: forall a6989586621679940039. (~>) [a6989586621679940039] [a6989586621679940039]
  • type TakeSym2 (a6989586621679949421 :: Nat) (a6989586621679949422 :: [a6989586621679940039]) = Take a6989586621679949421 a6989586621679949422
  • data DropSym0 :: forall a6989586621679940038. (~>) Nat ((~>) [a6989586621679940038] [a6989586621679940038])
  • data DropSym1 (a6989586621679949407 :: Nat) :: forall a6989586621679940038. (~>) [a6989586621679940038] [a6989586621679940038]
  • type DropSym2 (a6989586621679949407 :: Nat) (a6989586621679949408 :: [a6989586621679940038]) = Drop a6989586621679949407 a6989586621679949408
  • data SplitAtSym0 :: forall a6989586621679940037. (~>) Nat ((~>) [a6989586621679940037] ([a6989586621679940037], [a6989586621679940037]))
  • data SplitAtSym1 (a6989586621679949435 :: Nat) :: forall a6989586621679940037. (~>) [a6989586621679940037] ([a6989586621679940037], [a6989586621679940037])
  • type SplitAtSym2 (a6989586621679949435 :: Nat) (a6989586621679949436 :: [a6989586621679940037]) = SplitAt a6989586621679949435 a6989586621679949436
  • data TakeWhileSym0 :: forall a6989586621679940044. (~>) ((~>) a6989586621679940044 Bool) ((~>) [a6989586621679940044] [a6989586621679940044])
  • data TakeWhileSym1 (a6989586621679949579 :: (~>) a6989586621679940044 Bool) :: (~>) [a6989586621679940044] [a6989586621679940044]
  • type TakeWhileSym2 (a6989586621679949579 :: (~>) a6989586621679940044 Bool) (a6989586621679949580 :: [a6989586621679940044]) = TakeWhile a6989586621679949579 a6989586621679949580
  • data DropWhileSym0 :: forall a6989586621679940043. (~>) ((~>) a6989586621679940043 Bool) ((~>) [a6989586621679940043] [a6989586621679940043])
  • data DropWhileSym1 (a6989586621679949561 :: (~>) a6989586621679940043 Bool) :: (~>) [a6989586621679940043] [a6989586621679940043]
  • type DropWhileSym2 (a6989586621679949561 :: (~>) a6989586621679940043 Bool) (a6989586621679949562 :: [a6989586621679940043]) = DropWhile a6989586621679949561 a6989586621679949562
  • data DropWhileEndSym0 :: forall a6989586621679940042. (~>) ((~>) a6989586621679940042 Bool) ((~>) [a6989586621679940042] [a6989586621679940042])
  • data DropWhileEndSym1 (a6989586621679950617 :: (~>) a6989586621679940042 Bool) :: (~>) [a6989586621679940042] [a6989586621679940042]
  • type DropWhileEndSym2 (a6989586621679950617 :: (~>) a6989586621679940042 Bool) (a6989586621679950618 :: [a6989586621679940042]) = DropWhileEnd a6989586621679950617 a6989586621679950618
  • data SpanSym0 :: forall a6989586621679940041. (~>) ((~>) a6989586621679940041 Bool) ((~>) [a6989586621679940041] ([a6989586621679940041], [a6989586621679940041]))
  • data SpanSym1 (a6989586621679949484 :: (~>) a6989586621679940041 Bool) :: (~>) [a6989586621679940041] ([a6989586621679940041], [a6989586621679940041])
  • type SpanSym2 (a6989586621679949484 :: (~>) a6989586621679940041 Bool) (a6989586621679949485 :: [a6989586621679940041]) = Span a6989586621679949484 a6989586621679949485
  • data BreakSym0 :: forall a6989586621679940040. (~>) ((~>) a6989586621679940040 Bool) ((~>) [a6989586621679940040] ([a6989586621679940040], [a6989586621679940040]))
  • data BreakSym1 (a6989586621679949441 :: (~>) a6989586621679940040 Bool) :: (~>) [a6989586621679940040] ([a6989586621679940040], [a6989586621679940040])
  • type BreakSym2 (a6989586621679949441 :: (~>) a6989586621679940040 Bool) (a6989586621679949442 :: [a6989586621679940040]) = Break a6989586621679949441 a6989586621679949442
  • data NotElemSym0 :: forall a6989586621680452634 t6989586621680452633. (~>) a6989586621680452634 ((~>) (t6989586621680452633 a6989586621680452634) Bool)
  • data NotElemSym1 (a6989586621680453116 :: a6989586621680452634) :: forall t6989586621680452633. (~>) (t6989586621680452633 a6989586621680452634) Bool
  • type NotElemSym2 (a6989586621680453116 :: a6989586621680452634) (a6989586621680453117 :: t6989586621680452633 a6989586621680452634) = NotElem a6989586621680453116 a6989586621680453117
  • data ZipSym0 :: forall a6989586621679940098 b6989586621679940099. (~>) [a6989586621679940098] ((~>) [b6989586621679940099] [(a6989586621679940098, b6989586621679940099)])
  • data ZipSym1 (a6989586621679949926 :: [a6989586621679940098]) :: forall b6989586621679940099. (~>) [b6989586621679940099] [(a6989586621679940098, b6989586621679940099)]
  • type ZipSym2 (a6989586621679949926 :: [a6989586621679940098]) (a6989586621679949927 :: [b6989586621679940099]) = Zip a6989586621679949926 a6989586621679949927
  • data Zip3Sym0 :: forall a6989586621679940095 b6989586621679940096 c6989586621679940097. (~>) [a6989586621679940095] ((~>) [b6989586621679940096] ((~>) [c6989586621679940097] [(a6989586621679940095, b6989586621679940096, c6989586621679940097)]))
  • data Zip3Sym1 (a6989586621679949914 :: [a6989586621679940095]) :: forall b6989586621679940096 c6989586621679940097. (~>) [b6989586621679940096] ((~>) [c6989586621679940097] [(a6989586621679940095, b6989586621679940096, c6989586621679940097)])
  • data Zip3Sym2 (a6989586621679949914 :: [a6989586621679940095]) (a6989586621679949915 :: [b6989586621679940096]) :: forall c6989586621679940097. (~>) [c6989586621679940097] [(a6989586621679940095, b6989586621679940096, c6989586621679940097)]
  • type Zip3Sym3 (a6989586621679949914 :: [a6989586621679940095]) (a6989586621679949915 :: [b6989586621679940096]) (a6989586621679949916 :: [c6989586621679940097]) = Zip3 a6989586621679949914 a6989586621679949915 a6989586621679949916
  • data ZipWithSym0 :: forall a6989586621679940092 b6989586621679940093 c6989586621679940094. (~>) ((~>) a6989586621679940092 ((~>) b6989586621679940093 c6989586621679940094)) ((~>) [a6989586621679940092] ((~>) [b6989586621679940093] [c6989586621679940094]))
  • data ZipWithSym1 (a6989586621679949903 :: (~>) a6989586621679940092 ((~>) b6989586621679940093 c6989586621679940094)) :: (~>) [a6989586621679940092] ((~>) [b6989586621679940093] [c6989586621679940094])
  • data ZipWithSym2 (a6989586621679949903 :: (~>) a6989586621679940092 ((~>) b6989586621679940093 c6989586621679940094)) (a6989586621679949904 :: [a6989586621679940092]) :: (~>) [b6989586621679940093] [c6989586621679940094]
  • type ZipWithSym3 (a6989586621679949903 :: (~>) a6989586621679940092 ((~>) b6989586621679940093 c6989586621679940094)) (a6989586621679949904 :: [a6989586621679940092]) (a6989586621679949905 :: [b6989586621679940093]) = ZipWith a6989586621679949903 a6989586621679949904 a6989586621679949905
  • data ZipWith3Sym0 :: forall a6989586621679940088 b6989586621679940089 c6989586621679940090 d6989586621679940091. (~>) ((~>) a6989586621679940088 ((~>) b6989586621679940089 ((~>) c6989586621679940090 d6989586621679940091))) ((~>) [a6989586621679940088] ((~>) [b6989586621679940089] ((~>) [c6989586621679940090] [d6989586621679940091])))
  • data ZipWith3Sym1 (a6989586621679949888 :: (~>) a6989586621679940088 ((~>) b6989586621679940089 ((~>) c6989586621679940090 d6989586621679940091))) :: (~>) [a6989586621679940088] ((~>) [b6989586621679940089] ((~>) [c6989586621679940090] [d6989586621679940091]))
  • data ZipWith3Sym2 (a6989586621679949888 :: (~>) a6989586621679940088 ((~>) b6989586621679940089 ((~>) c6989586621679940090 d6989586621679940091))) (a6989586621679949889 :: [a6989586621679940088]) :: (~>) [b6989586621679940089] ((~>) [c6989586621679940090] [d6989586621679940091])
  • data ZipWith3Sym3 (a6989586621679949888 :: (~>) a6989586621679940088 ((~>) b6989586621679940089 ((~>) c6989586621679940090 d6989586621679940091))) (a6989586621679949889 :: [a6989586621679940088]) (a6989586621679949890 :: [b6989586621679940089]) :: (~>) [c6989586621679940090] [d6989586621679940091]
  • data UnzipSym0 :: forall a6989586621679940086 b6989586621679940087. (~>) [(a6989586621679940086, b6989586621679940087)] ([a6989586621679940086], [b6989586621679940087])
  • type UnzipSym1 (a6989586621679949869 :: [(a6989586621679940086, b6989586621679940087)]) = Unzip a6989586621679949869
  • data UnlinesSym0 :: (~>) [Symbol] Symbol
  • type UnlinesSym1 (a6989586621679949740 :: [Symbol]) = Unlines a6989586621679949740
  • data UnwordsSym0 :: (~>) [Symbol] Symbol
  • type UnwordsSym1 (a6989586621679949729 :: [Symbol]) = Unwords a6989586621679949729

Basic singleton definitions

data family Sing :: k -> Type infixr 5 Source #

The singleton kind-indexed data family.

Instances
SDecide k => TestCoercion (Sing :: k -> Type) Source # 
Instance details

Defined in Data.Singletons.Decide

Methods

testCoercion :: Sing a -> Sing b -> Maybe (Coercion a b) #

SDecide k => TestEquality (Sing :: k -> Type) Source # 
Instance details

Defined in Data.Singletons.Decide

Methods

testEquality :: Sing a -> Sing b -> Maybe (a :~: b) #

Show (SSymbol s) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> SSymbol s -> ShowS #

show :: SSymbol s -> String #

showList :: [SSymbol s] -> ShowS #

Show (SNat n) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> SNat n -> ShowS #

show :: SNat n -> String #

showList :: [SNat n] -> ShowS #

Eq (Sing a) Source # 
Instance details

Defined in Data.Singletons.TypeRepTYPE

Methods

(==) :: Sing a -> Sing a -> Bool #

(/=) :: Sing a -> Sing a -> Bool #

Ord (Sing a) Source # 
Instance details

Defined in Data.Singletons.TypeRepTYPE

Methods

compare :: Sing a -> Sing a -> Ordering #

(<) :: Sing a -> Sing a -> Bool #

(<=) :: Sing a -> Sing a -> Bool #

(>) :: Sing a -> Sing a -> Bool #

(>=) :: Sing a -> Sing a -> Bool #

max :: Sing a -> Sing a -> Sing a #

min :: Sing a -> Sing a -> Sing a #

Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

(ShowSing a, ShowSing [a]) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing a => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

(ShowSing a, ShowSing b) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

Show (Sing a) Source # 
Instance details

Defined in Data.Singletons.TypeRepTYPE

Methods

showsPrec :: Int -> Sing a -> ShowS #

show :: Sing a -> String #

showList :: [Sing a] -> ShowS #

Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

(ShowSing a, ShowSing b) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

(ShowSing a, ShowSing b, ShowSing c) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

(ShowSing a, ShowSing b, ShowSing c, ShowSing d) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

(ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

(ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e, ShowSing f) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

(ShowSing a, ShowSing b, ShowSing c, ShowSing d, ShowSing e, ShowSing f, ShowSing g) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing a => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing a => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

(ShowSing a, ShowSing b) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing a => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing a => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing m => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing (Maybe a) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing a => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing (Maybe a) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Monoid

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing (Maybe a) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Monoid

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing a => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing Bool => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing Bool => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing a => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

ShowSing a => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

(ShowSing a, ShowSing [a]) => Show (Sing z) Source # 
Instance details

Defined in Data.Singletons.ShowSing

Methods

showsPrec :: Int -> Sing z -> ShowS #

show :: Sing z -> String #

showList :: [Sing z] -> ShowS #

data Sing (a :: Bool) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (a :: Bool) where
data Sing (a :: Ordering) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (a :: Ordering) where
data Sing (n :: Nat) Source # 
Instance details

Defined in Data.Singletons.TypeLits.Internal

data Sing (n :: Nat) where
data Sing (n :: Symbol) Source # 
Instance details

Defined in Data.Singletons.TypeLits.Internal

data Sing (n :: Symbol) where
data Sing (a :: ()) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (a :: ()) where
data Sing (a :: Void) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (a :: Void)
data Sing (a :: All) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (a :: All) where
data Sing (a :: Any) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (a :: Any) where
data Sing (a :: PErrorMessage) Source # 
Instance details

Defined in Data.Singletons.TypeError

data Sing (a :: PErrorMessage) where
data Sing (b :: [a]) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (b :: [a]) where
  • SNil :: forall k (b :: [k]). Sing ([] :: [k])
  • SCons :: forall a (b :: [a]) (n :: a) (n :: [a]). Sing n -> Sing n -> Sing (n ': n)
data Sing (b :: Maybe a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (b :: Maybe a) where
data Sing (a :: TYPE rep) Source #

A choice of singleton for the kind TYPE rep (for some RuntimeRep rep), an instantiation of which is the famous kind Type.

Conceivably, one could generalize this instance to `Sing :: k -> Type` for any kind k, and remove all other Sing instances. We don't adopt this design, however, since it is far more convenient in practice to work with explicit singleton values than TypeReps (for instance, TypeReps are more difficult to pattern match on, and require extra runtime checks).

We cannot produce explicit singleton values for everything in TYPE rep, however, since it is an open kind, so we reach for TypeRep in this one particular case.

Instance details

Defined in Data.Singletons.TypeRepTYPE

data Sing (a :: TYPE rep) = STypeRep (TypeRep a)
data Sing (b :: Min a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Min a) where
data Sing (b :: Max a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Max a) where
data Sing (b :: First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: First a) where
data Sing (b :: Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Last a) where
data Sing (a :: WrappedMonoid m) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (a :: WrappedMonoid m) where
data Sing (b :: Option a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Option a) where
data Sing (b :: Identity a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (b :: Identity a) where
data Sing (b :: First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Monoid

data Sing (b :: First a) where
data Sing (b :: Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Monoid

data Sing (b :: Last a) where
data Sing (b :: Dual a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Dual a) where
data Sing (b :: Sum a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Sum a) where
data Sing (b :: Product a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

data Sing (b :: Product a) where
data Sing (b :: Down a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

data Sing (b :: Down a) where
data Sing (b :: NonEmpty a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (b :: NonEmpty a) where
data Sing (c :: Either a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (c :: Either a b) where
data Sing (c :: (a, b)) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (c :: (a, b)) where
data Sing (c :: Arg a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

data Sing (c :: Arg a b) where
data Sing (f :: k1 ~> k2) Source # 
Instance details

Defined in Data.Singletons.Internal

data Sing (f :: k1 ~> k2) = SLambda {}
data Sing (d :: (a, b, c)) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (d :: (a, b, c)) where
data Sing (c :: Const a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Const

data Sing (c :: Const a b) where
data Sing (e :: (a, b, c, d)) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (e :: (a, b, c, d)) where
data Sing (f :: (a, b, c, d, e)) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (f :: (a, b, c, d, e)) where
data Sing (g :: (a, b, c, d, e, f)) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (g :: (a, b, c, d, e, f)) where
data Sing (h :: (a, b, c, d, e, f, g)) Source # 
Instance details

Defined in Data.Singletons.Prelude.Instances

data Sing (h :: (a, b, c, d, e, f, g)) where

Singleton type synonyms

These synonyms are all kind-restricted synonyms of Sing. For example SBool requires an argument of kind Bool.

type SBool = (Sing :: Bool -> Type) Source #

type SList = (Sing :: [a] -> Type) Source #

type SMaybe = (Sing :: Maybe a -> Type) Source #

type SEither = (Sing :: Either a b -> Type) Source #

type STuple0 = (Sing :: () -> Type) Source #

type STuple2 = (Sing :: (a, b) -> Type) Source #

type STuple3 = (Sing :: (a, b, c) -> Type) Source #

type STuple4 = (Sing :: (a, b, c, d) -> Type) Source #

type STuple5 = (Sing :: (a, b, c, d, e) -> Type) Source #

type STuple6 = (Sing :: (a, b, c, d, e, f) -> Type) Source #

type STuple7 = (Sing :: (a, b, c, d, e, f, g) -> Type) Source #

Functions working with Bool

type family If (cond :: Bool) (tru :: k) (fls :: k) :: k where ... #

Type-level If. If True a b ==> a; If False a b ==> b

Equations

If True (tru :: k) (fls :: k) = tru 
If False (tru :: k) (fls :: k) = fls 

sIf :: Sing a -> Sing b -> Sing c -> Sing (If a b c) Source #

Conditional over singletons

type family Not (a :: Bool) = (res :: Bool) | res -> a where ... #

Type-level "not". An injective type family since 4.10.0.0.

Since: base-4.7.0.0

Equations

Not False = True 
Not True = False 

sNot :: Sing a -> Sing (Not a) Source #

Negation of a singleton

type family (a :: Bool) && (b :: Bool) :: Bool where ... infixr 3 #

Type-level "and"

Equations

False && a = False 
True && a = a 
a && False = False 
a && True = a 
a && a = a 

type family (a :: Bool) || (b :: Bool) :: Bool where ... infixr 2 #

Type-level "or"

Equations

False || a = a 
True || a = True 
a || False = a 
a || True = True 
a || a = a 

(%&&) :: Sing a -> Sing b -> Sing (a && b) infixr 3 Source #

Conjunction of singletons

(%||) :: Sing a -> Sing b -> Sing (a || b) infixr 2 Source #

Disjunction of singletons

type family Otherwise :: Bool where ... Source #

Equations

Otherwise = TrueSym0 

Error reporting

type family Error (str :: k0) :: k where ... Source #

The promotion of error. This version is more poly-kinded for easier use.

sError :: HasCallStack => Sing (str :: Symbol) -> a Source #

The singleton for error

type family ErrorWithoutStackTrace (str :: k0) :: k where ... Source #

The promotion of errorWithoutStackTrace. This version is more poly-kinded for easier use.

type family Undefined :: k where ... Source #

The promotion of undefined.

sUndefined :: HasCallStack => a Source #

The singleton for undefined.

Singleton equality

Singleton comparisons

class PEq a => POrd (a :: Type) Source #

Associated Types

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 #

type Max (arg :: a) (arg :: a) :: a Source #

type Min (arg :: a) (arg :: a) :: a Source #

Instances
POrd Bool Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd Ordering Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd Nat Source # 
Instance details

Defined in Data.Singletons.TypeLits.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd Symbol Source # 
Instance details

Defined in Data.Singletons.TypeLits.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd () Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd Void Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd All Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd Any Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd [a] Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Maybe a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Min a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Max a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (WrappedMonoid m) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Option a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Identity a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Monoid

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Monoid

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Dual a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Sum a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Product a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Down a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (NonEmpty a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Either a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (a, b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Arg a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (a, b, c) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (Const a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Const

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (a, b, c, d) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (a, b, c, d, e) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (a, b, c, d, e, f) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

POrd (a, b, c, d, e, f, g) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Associated Types

type Compare arg arg :: Ordering Source #

type arg < arg :: Bool Source #

type arg <= arg :: Bool Source #

type arg > arg :: Bool Source #

type arg >= arg :: Bool Source #

type Max arg arg :: a Source #

type Min arg arg :: a Source #

class SEq a => SOrd a where Source #

Minimal complete definition

Nothing

Methods

sCompare :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t :: Ordering) Source #

(%<) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t :: Bool) infix 4 Source #

(%<=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t :: Bool) infix 4 Source #

(%>) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t :: Bool) infix 4 Source #

(%>=) :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t :: Bool) infix 4 Source #

sMax :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t :: a) Source #

sMin :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t :: a) Source #

sCompare :: forall (t :: a) (t :: a). (Apply (Apply CompareSym0 t) t :: Ordering) ~ Apply (Apply Compare_6989586621679380849Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t :: Ordering) Source #

(%<) :: forall (t :: a) (t :: a). (Apply (Apply (<@#@$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679380867Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t :: Bool) infix 4 Source #

(%<=) :: forall (t :: a) (t :: a). (Apply (Apply (<=@#@$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679380885Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t :: Bool) infix 4 Source #

(%>) :: forall (t :: a) (t :: a). (Apply (Apply (>@#@$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679380903Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t :: Bool) infix 4 Source #

(%>=) :: forall (t :: a) (t :: a). (Apply (Apply (>=@#@$) t) t :: Bool) ~ Apply (Apply TFHelper_6989586621679380921Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t :: Bool) infix 4 Source #

sMax :: forall (t :: a) (t :: a). (Apply (Apply MaxSym0 t) t :: a) ~ Apply (Apply Max_6989586621679380939Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t :: a) Source #

sMin :: forall (t :: a) (t :: a). (Apply (Apply MinSym0 t) t :: a) ~ Apply (Apply Min_6989586621679380957Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t :: a) Source #

Instances
SOrd Bool Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd Ordering Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd Nat Source # 
Instance details

Defined in Data.Singletons.TypeLits.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd Symbol Source # 
Instance details

Defined in Data.Singletons.TypeLits.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd () Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd Void Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd Bool => SOrd All Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd Bool => SOrd Any Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

(SOrd a, SOrd [a]) => SOrd [a] Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Maybe a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Min a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Max a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd m => SOrd (WrappedMonoid m) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd (Maybe a) => SOrd (Option a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Identity a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd (Maybe a) => SOrd (First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Monoid

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd (Maybe a) => SOrd (Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Monoid

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Dual a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Sum a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Product a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Down a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

(SOrd a, SOrd [a]) => SOrd (NonEmpty a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

(SOrd a, SOrd b) => SOrd (Either a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

(SOrd a, SOrd b) => SOrd (a, b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Arg a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

(SOrd a, SOrd b, SOrd c) => SOrd (a, b, c) Source # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

SOrd a => SOrd (Const a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Const

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: 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 # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: 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 # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: 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 # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: 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 # 
Instance details

Defined in Data.Singletons.Prelude.Ord

Methods

sCompare :: Sing t -> Sing t -> Sing (Apply (Apply CompareSym0 t) t) Source #

(%<) :: Sing t -> Sing t -> Sing (Apply (Apply (<@#@$) t) t) Source #

(%<=) :: Sing t -> Sing t -> Sing (Apply (Apply (<=@#@$) t) t) Source #

(%>) :: Sing t -> Sing t -> Sing (Apply (Apply (>@#@$) t) t) Source #

(%>=) :: Sing t -> Sing t -> Sing (Apply (Apply (>=@#@$) t) t) Source #

sMax :: Sing t -> Sing t -> Sing (Apply (Apply MaxSym0 t) t) Source #

sMin :: Sing t -> Sing t -> Sing (Apply (Apply MinSym0 t) t) Source #

Singleton Enum and Bounded

As a matter of convenience, the singletons Prelude does not export promoted/singletonized succ and pred, due to likely conflicts with unary numbers. Please import Enum directly if you want these.

class SBounded a where Source #

Instances
SBounded Bool Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SBounded Ordering Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SBounded () Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SBounded Bool => SBounded All Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

SBounded Bool => SBounded Any Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

SBounded a => SBounded (Min a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

SBounded a => SBounded (Max a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

SBounded a => SBounded (First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

SBounded a => SBounded (Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

SBounded m => SBounded (WrappedMonoid m) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

SBounded a => SBounded (Identity a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SBounded a => SBounded (Dual a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

SBounded a => SBounded (Sum a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

SBounded a => SBounded (Product a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

(SBounded a, SBounded b) => SBounded (a, b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

(SBounded a, SBounded b, SBounded c) => SBounded (a, b, c) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SBounded a => SBounded (Const a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Const

(SBounded a, SBounded b, SBounded c, SBounded d) => SBounded (a, b, c, d) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

(SBounded a, SBounded b, SBounded c, SBounded d, SBounded e) => SBounded (a, b, c, d, e) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

(SBounded a, SBounded b, SBounded c, SBounded d, SBounded e, SBounded f) => SBounded (a, b, c, d, e, f) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

(SBounded a, SBounded b, SBounded c, SBounded d, SBounded e, SBounded f, SBounded g) => SBounded (a, b, c, d, e, f, g) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

class PBounded (a :: Type) Source #

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

Instances
PBounded Bool Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded Ordering Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded () Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded All Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded Any Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (Min a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (Max a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (WrappedMonoid m) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (Identity a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (Dual a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (Sum a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (Product a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup.Internal

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (a, b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (a, b, c) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (Const a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Const

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (a, b, c, d) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (a, b, c, d, e) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (a, b, c, d, e, f) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

PBounded (a, b, c, d, e, f, g) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type MinBound :: a Source #

type MaxBound :: a Source #

class SEnum a where Source #

Minimal complete definition

sToEnum, sFromEnum

Methods

sToEnum :: forall (t :: Nat). Sing t -> Sing (Apply ToEnumSym0 t :: a) Source #

sFromEnum :: forall (t :: a). Sing t -> Sing (Apply FromEnumSym0 t :: Nat) Source #

sEnumFromTo :: forall (t :: a) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply EnumFromToSym0 t) t :: [a]) Source #

sEnumFromThenTo :: forall (t :: a) (t :: a) (t :: a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply EnumFromThenToSym0 t) t) t :: [a]) Source #

sEnumFromTo :: forall (t :: a) (t :: a). (Apply (Apply EnumFromToSym0 t) t :: [a]) ~ Apply (Apply EnumFromTo_6989586621679740411Sym0 t) t => Sing t -> Sing t -> Sing (Apply (Apply EnumFromToSym0 t) t :: [a]) Source #

sEnumFromThenTo :: forall (t :: a) (t :: a) (t :: a). (Apply (Apply (Apply EnumFromThenToSym0 t) t) t :: [a]) ~ Apply (Apply (Apply EnumFromThenTo_6989586621679740427Sym0 t) t) t => Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply EnumFromThenToSym0 t) t) t :: [a]) Source #

Instances
SEnum Bool Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SEnum Ordering Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SEnum Nat Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SEnum () Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SEnum a => SEnum (Min a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

SEnum a => SEnum (Max a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

SEnum a => SEnum (First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

SEnum a => SEnum (Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

SEnum a => SEnum (WrappedMonoid a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

SEnum a => SEnum (Identity a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Identity

SEnum a => SEnum (Const a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Const

class PEnum (a :: Type) Source #

Associated Types

type ToEnum (arg :: Nat) :: a Source #

type FromEnum (arg :: a) :: Nat Source #

type EnumFromTo (arg :: a) (arg :: a) :: [a] Source #

type EnumFromThenTo (arg :: a) (arg :: a) (arg :: a) :: [a] Source #

Instances
PEnum Bool Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

PEnum Ordering Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

PEnum Nat Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

PEnum () Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

PEnum (Min a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

PEnum (Max a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

PEnum (First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

PEnum (Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

PEnum (WrappedMonoid a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

PEnum (Identity a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Identity

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

PEnum (Const a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Const

Associated Types

type Succ arg :: a Source #

type Pred arg :: a Source #

type ToEnum arg :: a Source #

type FromEnum arg :: Nat Source #

type EnumFromTo arg arg :: [a] Source #

type EnumFromThenTo arg arg arg :: [a] Source #

data EnumFromThenToSym0 :: forall a6989586621679740077. (~>) a6989586621679740077 ((~>) a6989586621679740077 ((~>) a6989586621679740077 [a6989586621679740077])) Source #

Instances
SEnum a => SingI (EnumFromThenToSym0 :: TyFun a (a ~> (a ~> [a])) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SuppressUnusedWarnings (EnumFromThenToSym0 :: TyFun a6989586621679740077 (a6989586621679740077 ~> (a6989586621679740077 ~> [a6989586621679740077])) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (EnumFromThenToSym0 :: TyFun a6989586621679740077 (a6989586621679740077 ~> (a6989586621679740077 ~> [a6989586621679740077])) -> Type) (arg6989586621679740373 :: a6989586621679740077) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (EnumFromThenToSym0 :: TyFun a6989586621679740077 (a6989586621679740077 ~> (a6989586621679740077 ~> [a6989586621679740077])) -> Type) (arg6989586621679740373 :: a6989586621679740077) = EnumFromThenToSym1 arg6989586621679740373

data EnumFromThenToSym1 (arg6989586621679740373 :: a6989586621679740077) :: (~>) a6989586621679740077 ((~>) a6989586621679740077 [a6989586621679740077]) Source #

Instances
(SEnum a, SingI d) => SingI (EnumFromThenToSym1 d :: TyFun a (a ~> [a]) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SuppressUnusedWarnings (EnumFromThenToSym1 arg6989586621679740373 :: TyFun a6989586621679740077 (a6989586621679740077 ~> [a6989586621679740077]) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (EnumFromThenToSym1 arg6989586621679740373 :: TyFun a6989586621679740077 (a6989586621679740077 ~> [a6989586621679740077]) -> Type) (arg6989586621679740374 :: a6989586621679740077) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (EnumFromThenToSym1 arg6989586621679740373 :: TyFun a6989586621679740077 (a6989586621679740077 ~> [a6989586621679740077]) -> Type) (arg6989586621679740374 :: a6989586621679740077) = EnumFromThenToSym2 arg6989586621679740373 arg6989586621679740374

data EnumFromThenToSym2 (arg6989586621679740373 :: a6989586621679740077) (arg6989586621679740374 :: a6989586621679740077) :: (~>) a6989586621679740077 [a6989586621679740077] Source #

Instances
(SEnum a, SingI d1, SingI d2) => SingI (EnumFromThenToSym2 d1 d2 :: TyFun a [a] -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

Methods

sing :: Sing (EnumFromThenToSym2 d1 d2) Source #

SuppressUnusedWarnings (EnumFromThenToSym2 arg6989586621679740374 arg6989586621679740373 :: TyFun a6989586621679740077 [a6989586621679740077] -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (EnumFromThenToSym2 arg6989586621679740374 arg6989586621679740373 :: TyFun a [a] -> Type) (arg6989586621679740375 :: a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (EnumFromThenToSym2 arg6989586621679740374 arg6989586621679740373 :: TyFun a [a] -> Type) (arg6989586621679740375 :: a) = EnumFromThenTo arg6989586621679740374 arg6989586621679740373 arg6989586621679740375

type EnumFromThenToSym3 (arg6989586621679740373 :: a6989586621679740077) (arg6989586621679740374 :: a6989586621679740077) (arg6989586621679740375 :: a6989586621679740077) = EnumFromThenTo arg6989586621679740373 arg6989586621679740374 arg6989586621679740375 Source #

data EnumFromToSym0 :: forall a6989586621679740077. (~>) a6989586621679740077 ((~>) a6989586621679740077 [a6989586621679740077]) Source #

Instances
SEnum a => SingI (EnumFromToSym0 :: TyFun a (a ~> [a]) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SuppressUnusedWarnings (EnumFromToSym0 :: TyFun a6989586621679740077 (a6989586621679740077 ~> [a6989586621679740077]) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (EnumFromToSym0 :: TyFun a6989586621679740077 (a6989586621679740077 ~> [a6989586621679740077]) -> Type) (arg6989586621679740369 :: a6989586621679740077) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (EnumFromToSym0 :: TyFun a6989586621679740077 (a6989586621679740077 ~> [a6989586621679740077]) -> Type) (arg6989586621679740369 :: a6989586621679740077) = EnumFromToSym1 arg6989586621679740369

data EnumFromToSym1 (arg6989586621679740369 :: a6989586621679740077) :: (~>) a6989586621679740077 [a6989586621679740077] Source #

Instances
(SEnum a, SingI d) => SingI (EnumFromToSym1 d :: TyFun a [a] -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SuppressUnusedWarnings (EnumFromToSym1 arg6989586621679740369 :: TyFun a6989586621679740077 [a6989586621679740077] -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (EnumFromToSym1 arg6989586621679740369 :: TyFun a [a] -> Type) (arg6989586621679740370 :: a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (EnumFromToSym1 arg6989586621679740369 :: TyFun a [a] -> Type) (arg6989586621679740370 :: a) = EnumFromTo arg6989586621679740369 arg6989586621679740370

type EnumFromToSym2 (arg6989586621679740369 :: a6989586621679740077) (arg6989586621679740370 :: a6989586621679740077) = EnumFromTo arg6989586621679740369 arg6989586621679740370 Source #

data FromEnumSym0 :: forall a6989586621679740077. (~>) a6989586621679740077 Nat Source #

Instances
SEnum a => SingI (FromEnumSym0 :: TyFun a Nat -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SuppressUnusedWarnings (FromEnumSym0 :: TyFun a6989586621679740077 Nat -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (FromEnumSym0 :: TyFun a Nat -> Type) (arg6989586621679740367 :: a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (FromEnumSym0 :: TyFun a Nat -> Type) (arg6989586621679740367 :: a) = FromEnum arg6989586621679740367

type FromEnumSym1 (arg6989586621679740367 :: a6989586621679740077) = FromEnum arg6989586621679740367 Source #

data ToEnumSym0 :: forall a6989586621679740077. (~>) Nat a6989586621679740077 Source #

Instances
SEnum a => SingI (ToEnumSym0 :: TyFun Nat a -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

SuppressUnusedWarnings (ToEnumSym0 :: TyFun Nat a6989586621679740077 -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (ToEnumSym0 :: TyFun Nat k2 -> Type) (arg6989586621679740365 :: Nat) Source # 
Instance details

Defined in Data.Singletons.Prelude.Enum

type Apply (ToEnumSym0 :: TyFun Nat k2 -> Type) (arg6989586621679740365 :: Nat) = (ToEnum arg6989586621679740365 :: k2)

type ToEnumSym1 (arg6989586621679740365 :: Nat) = ToEnum arg6989586621679740365 Source #

Singletons numbers

type family (a :: Nat) ^ (b :: Nat) :: Nat where ... infixr 8 #

Exponentiation of type-level naturals.

Since: base-4.7.0.0

(%^) :: Sing a -> Sing b -> Sing (a ^ b) infixr 8 Source #

The singleton analogue of '(TN.^)' for Nats.

Singleton Show

class PShow (a :: Type) Source #

Associated Types

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 # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow Ordering Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow Nat Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow Symbol Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow () Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow Void Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow All Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow Any Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow [a] Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Maybe a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Min a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Max a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (WrappedMonoid m) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Option a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Identity a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Identity

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (First a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Monoid

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Last a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Monoid

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Dual a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Sum a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Product a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (NonEmpty a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Either a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (a, b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Arg a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Semigroup

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (a, b, c) Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (Const a b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Const

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (a, b, c, d) Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (a, b, c, d, e) Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (a, b, c, d, e, f) Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

PShow (a, b, c, d, e, f, g) Source # 
Instance details

Defined in Data.Singletons.Prelude.Show

Associated Types

type ShowsPrec arg arg arg :: Symbol Source #

type Show_ arg :: Symbol Source #

type ShowList arg arg :: Symbol Source #

class SShow a where Source #

Minimal complete definition

Nothing

Methods

sShowsPrec ::