singletons-2.5.1: A framework for generating singleton types

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

Data.Singletons.Prelude.Function

Contents

Description

Defines singleton versions of the definitions in Data.Function.

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

Synopsis
  • 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 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 (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) & (a :: (~>) a b) :: b where ...
  • (%&) :: forall a b (t :: a) (t :: (~>) a b). Sing t -> Sing t -> Sing (Apply (Apply (&@#@$) t) t :: b)
  • type family On (a :: (~>) b ((~>) b c)) (a :: (~>) a b) (a :: a) (a :: a) :: c where ...
  • sOn :: forall b c a (t :: (~>) b ((~>) b c)) (t :: (~>) a b) (t :: a) (t :: a). Sing t -> Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply (Apply OnSym0 t) t) t) t :: c)
  • data IdSym0 :: forall a6989586621679521714. (~>) a6989586621679521714 a6989586621679521714
  • type IdSym1 (a6989586621679521909 :: a6989586621679521714) = Id a6989586621679521909
  • data ConstSym0 :: forall a6989586621679521712 b6989586621679521713. (~>) a6989586621679521712 ((~>) b6989586621679521713 a6989586621679521712)
  • data ConstSym1 (a6989586621679521894 :: a6989586621679521712) :: forall b6989586621679521713. (~>) b6989586621679521713 a6989586621679521712
  • type ConstSym2 (a6989586621679521894 :: a6989586621679521712) (a6989586621679521895 :: b6989586621679521713) = Const a6989586621679521894 a6989586621679521895
  • data (.@#@$) :: forall a6989586621679521711 b6989586621679521709 c6989586621679521710. (~>) ((~>) b6989586621679521709 c6989586621679521710) ((~>) ((~>) a6989586621679521711 b6989586621679521709) ((~>) a6989586621679521711 c6989586621679521710))
  • data (.@#@$$) (a6989586621679521875 :: (~>) b6989586621679521709 c6989586621679521710) :: forall a6989586621679521711. (~>) ((~>) a6989586621679521711 b6989586621679521709) ((~>) a6989586621679521711 c6989586621679521710)
  • data (a6989586621679521875 :: (~>) b6989586621679521709 c6989586621679521710) .@#@$$$ (a6989586621679521876 :: (~>) a6989586621679521711 b6989586621679521709) :: (~>) a6989586621679521711 c6989586621679521710
  • type (.@#@$$$$) (a6989586621679521875 :: (~>) b6989586621679521709 c6989586621679521710) (a6989586621679521876 :: (~>) a6989586621679521711 b6989586621679521709) (a6989586621679521877 :: a6989586621679521711) = (:.) a6989586621679521875 a6989586621679521876 a6989586621679521877
  • data FlipSym0 :: forall a6989586621679521706 b6989586621679521707 c6989586621679521708. (~>) ((~>) a6989586621679521706 ((~>) b6989586621679521707 c6989586621679521708)) ((~>) b6989586621679521707 ((~>) a6989586621679521706 c6989586621679521708))
  • data FlipSym1 (a6989586621679521866 :: (~>) a6989586621679521706 ((~>) b6989586621679521707 c6989586621679521708)) :: (~>) b6989586621679521707 ((~>) a6989586621679521706 c6989586621679521708)
  • data FlipSym2 (a6989586621679521866 :: (~>) a6989586621679521706 ((~>) b6989586621679521707 c6989586621679521708)) (a6989586621679521867 :: b6989586621679521707) :: (~>) a6989586621679521706 c6989586621679521708
  • type FlipSym3 (a6989586621679521866 :: (~>) a6989586621679521706 ((~>) b6989586621679521707 c6989586621679521708)) (a6989586621679521867 :: b6989586621679521707) (a6989586621679521868 :: a6989586621679521706) = Flip a6989586621679521866 a6989586621679521867 a6989586621679521868
  • data ($@#@$) :: forall a6989586621679521703 b6989586621679521704. (~>) ((~>) a6989586621679521703 b6989586621679521704) ((~>) a6989586621679521703 b6989586621679521704)
  • data ($@#@$$) (a6989586621679521860 :: (~>) a6989586621679521703 b6989586621679521704) :: (~>) a6989586621679521703 b6989586621679521704
  • type ($@#@$$$) (a6989586621679521860 :: (~>) a6989586621679521703 b6989586621679521704) (a6989586621679521861 :: a6989586621679521703) = ($) a6989586621679521860 a6989586621679521861
  • data (&@#@$) :: forall a6989586621679730240 b6989586621679730241. (~>) a6989586621679730240 ((~>) ((~>) a6989586621679730240 b6989586621679730241) b6989586621679730241)
  • data (&@#@$$) (a6989586621679730253 :: a6989586621679730240) :: forall b6989586621679730241. (~>) ((~>) a6989586621679730240 b6989586621679730241) b6989586621679730241
  • type (&@#@$$$) (a6989586621679730253 :: a6989586621679730240) (a6989586621679730254 :: (~>) a6989586621679730240 b6989586621679730241) = (&) a6989586621679730253 a6989586621679730254
  • data OnSym0 :: forall a6989586621679730244 b6989586621679730242 c6989586621679730243. (~>) ((~>) b6989586621679730242 ((~>) b6989586621679730242 c6989586621679730243)) ((~>) ((~>) a6989586621679730244 b6989586621679730242) ((~>) a6989586621679730244 ((~>) a6989586621679730244 c6989586621679730243)))
  • data OnSym1 (a6989586621679730259 :: (~>) b6989586621679730242 ((~>) b6989586621679730242 c6989586621679730243)) :: forall a6989586621679730244. (~>) ((~>) a6989586621679730244 b6989586621679730242) ((~>) a6989586621679730244 ((~>) a6989586621679730244 c6989586621679730243))
  • data OnSym2 (a6989586621679730259 :: (~>) b6989586621679730242 ((~>) b6989586621679730242 c6989586621679730243)) (a6989586621679730260 :: (~>) a6989586621679730244 b6989586621679730242) :: (~>) a6989586621679730244 ((~>) a6989586621679730244 c6989586621679730243)
  • data OnSym3 (a6989586621679730259 :: (~>) b6989586621679730242 ((~>) b6989586621679730242 c6989586621679730243)) (a6989586621679730260 :: (~>) a6989586621679730244 b6989586621679730242) (a6989586621679730261 :: a6989586621679730244) :: (~>) a6989586621679730244 c6989586621679730243
  • type OnSym4 (a6989586621679730259 :: (~>) b6989586621679730242 ((~>) b6989586621679730242 c6989586621679730243)) (a6989586621679730260 :: (~>) a6989586621679730244 b6989586621679730242) (a6989586621679730261 :: a6989586621679730244) (a6989586621679730262 :: a6989586621679730244) = On a6989586621679730259 a6989586621679730260 a6989586621679730261 a6989586621679730262

Prelude re-exports

type family Id (a :: a) :: a where ... Source #

Equations

Id x = x 

sId :: forall a (t :: a). Sing t -> Sing (Apply IdSym0 t :: a) Source #

type family Const (a :: a) (a :: b) :: a where ... Source #

Equations

Const x _ = x 

sConst :: forall a b (t :: a) (t :: b). Sing t -> Sing t -> Sing (Apply (Apply ConstSym0 t) t :: a) Source #

type family ((a :: (~>) b c) :. (a :: (~>) a b)) (a :: a) :: c where ... infixr 9 Source #

Equations

(f :. g) a_6989586621679521881 = Apply (Apply (Apply (Apply Lambda_6989586621679521886Sym0 f) g) a_6989586621679521881) a_6989586621679521881 

(%.) :: forall b c a (t :: (~>) b c) (t :: (~>) a b) (t :: a). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply (.@#@$) t) t) t :: c) infixr 9 Source #

type family Flip (a :: (~>) a ((~>) b c)) (a :: b) (a :: a) :: c where ... Source #

Equations

Flip f x y = Apply (Apply f y) x 

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) Source #

type family (a :: (~>) a b) $ (a :: a) :: b where ... infixr 0 Source #

Equations

f $ x = Apply f x 

(%$) :: forall a b (t :: (~>) a b) (t :: a). Sing t -> Sing t -> Sing (Apply (Apply ($@#@$) t) t :: b) infixr 0 Source #

Other combinators

type family (a :: a) & (a :: (~>) a b) :: b where ... infixl 1 Source #

Equations

x & f = Apply f x 

(%&) :: forall a b (t :: a) (t :: (~>) a b). Sing t -> Sing t -> Sing (Apply (Apply (&@#@$) t) t :: b) infixl 1 Source #

type family On (a :: (~>) b ((~>) b c)) (a :: (~>) a b) (a :: a) (a :: a) :: c where ... infixl 0 Source #

Equations

On ty f a_6989586621679730267 a_6989586621679730269 = Apply (Apply (Apply (Apply (Apply (Apply Lambda_6989586621679730275Sym0 ty) f) a_6989586621679730267) a_6989586621679730269) a_6989586621679730267) a_6989586621679730269 

sOn :: forall b c a (t :: (~>) b ((~>) b c)) (t :: (~>) a b) (t :: a) (t :: a). Sing t -> Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply (Apply OnSym0 t) t) t) t :: c) infixl 0 Source #

Defunctionalization symbols

data IdSym0 :: forall a6989586621679521714. (~>) a6989586621679521714 a6989586621679521714 Source #

Instances
SingI (IdSym0 :: TyFun a a -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

Methods

sing :: Sing IdSym0 Source #

SuppressUnusedWarnings (IdSym0 :: TyFun a6989586621679521714 a6989586621679521714 -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (IdSym0 :: TyFun a a -> Type) (a6989586621679521909 :: a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (IdSym0 :: TyFun a a -> Type) (a6989586621679521909 :: a) = Id a6989586621679521909

type IdSym1 (a6989586621679521909 :: a6989586621679521714) = Id a6989586621679521909 Source #

data ConstSym0 :: forall a6989586621679521712 b6989586621679521713. (~>) a6989586621679521712 ((~>) b6989586621679521713 a6989586621679521712) Source #

Instances
SingI (ConstSym0 :: TyFun a (b ~> a) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

SuppressUnusedWarnings (ConstSym0 :: TyFun a6989586621679521712 (b6989586621679521713 ~> a6989586621679521712) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (ConstSym0 :: TyFun a6989586621679521712 (b6989586621679521713 ~> a6989586621679521712) -> Type) (a6989586621679521894 :: a6989586621679521712) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (ConstSym0 :: TyFun a6989586621679521712 (b6989586621679521713 ~> a6989586621679521712) -> Type) (a6989586621679521894 :: a6989586621679521712) = (ConstSym1 a6989586621679521894 b6989586621679521713 :: TyFun b6989586621679521713 a6989586621679521712 -> Type)

data ConstSym1 (a6989586621679521894 :: a6989586621679521712) :: forall b6989586621679521713. (~>) b6989586621679521713 a6989586621679521712 Source #

Instances
SingI d => SingI (ConstSym1 d b :: TyFun b a -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

Methods

sing :: Sing (ConstSym1 d b) Source #

SuppressUnusedWarnings (ConstSym1 a6989586621679521894 b6989586621679521713 :: TyFun b6989586621679521713 a6989586621679521712 -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (ConstSym1 a6989586621679521894 b :: TyFun b a -> Type) (a6989586621679521895 :: b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (ConstSym1 a6989586621679521894 b :: TyFun b a -> Type) (a6989586621679521895 :: b) = Const a6989586621679521894 a6989586621679521895

type ConstSym2 (a6989586621679521894 :: a6989586621679521712) (a6989586621679521895 :: b6989586621679521713) = Const a6989586621679521894 a6989586621679521895 Source #

data (.@#@$) :: forall a6989586621679521711 b6989586621679521709 c6989586621679521710. (~>) ((~>) b6989586621679521709 c6989586621679521710) ((~>) ((~>) a6989586621679521711 b6989586621679521709) ((~>) a6989586621679521711 c6989586621679521710)) infixr 9 Source #

Instances
SingI ((.@#@$) :: TyFun (b ~> c) ((a ~> b) ~> (a ~> c)) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

SuppressUnusedWarnings ((.@#@$) :: TyFun (b6989586621679521709 ~> c6989586621679521710) ((a6989586621679521711 ~> b6989586621679521709) ~> (a6989586621679521711 ~> c6989586621679521710)) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply ((.@#@$) :: TyFun (b6989586621679521709 ~> c6989586621679521710) ((a6989586621679521711 ~> b6989586621679521709) ~> (a6989586621679521711 ~> c6989586621679521710)) -> Type) (a6989586621679521875 :: b6989586621679521709 ~> c6989586621679521710) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply ((.@#@$) :: TyFun (b6989586621679521709 ~> c6989586621679521710) ((a6989586621679521711 ~> b6989586621679521709) ~> (a6989586621679521711 ~> c6989586621679521710)) -> Type) (a6989586621679521875 :: b6989586621679521709 ~> c6989586621679521710) = (a6989586621679521875 .@#@$$ a6989586621679521711 :: TyFun (a6989586621679521711 ~> b6989586621679521709) (a6989586621679521711 ~> c6989586621679521710) -> Type)

data (.@#@$$) (a6989586621679521875 :: (~>) b6989586621679521709 c6989586621679521710) :: forall a6989586621679521711. (~>) ((~>) a6989586621679521711 b6989586621679521709) ((~>) a6989586621679521711 c6989586621679521710) infixr 9 Source #

Instances
SingI d => SingI (d .@#@$$ a :: TyFun (a ~> b) (a ~> c) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

Methods

sing :: Sing (d .@#@$$ a) Source #

SuppressUnusedWarnings (a6989586621679521875 .@#@$$ a6989586621679521711 :: TyFun (a6989586621679521711 ~> b6989586621679521709) (a6989586621679521711 ~> c6989586621679521710) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (a6989586621679521875 .@#@$$ a6989586621679521711 :: TyFun (a6989586621679521711 ~> b6989586621679521709) (a6989586621679521711 ~> c6989586621679521710) -> Type) (a6989586621679521876 :: a6989586621679521711 ~> b6989586621679521709) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (a6989586621679521875 .@#@$$ a6989586621679521711 :: TyFun (a6989586621679521711 ~> b6989586621679521709) (a6989586621679521711 ~> c6989586621679521710) -> Type) (a6989586621679521876 :: a6989586621679521711 ~> b6989586621679521709) = a6989586621679521875 .@#@$$$ a6989586621679521876

data (a6989586621679521875 :: (~>) b6989586621679521709 c6989586621679521710) .@#@$$$ (a6989586621679521876 :: (~>) a6989586621679521711 b6989586621679521709) :: (~>) a6989586621679521711 c6989586621679521710 infixr 9 Source #

Instances
(SingI d1, SingI d2) => SingI (d1 .@#@$$$ d2 :: TyFun a c -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

Methods

sing :: Sing (d1 .@#@$$$ d2) Source #

SuppressUnusedWarnings (a6989586621679521876 .@#@$$$ a6989586621679521875 :: TyFun a6989586621679521711 c6989586621679521710 -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (a6989586621679521876 .@#@$$$ a6989586621679521875 :: TyFun a c -> Type) (a6989586621679521877 :: a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (a6989586621679521876 .@#@$$$ a6989586621679521875 :: TyFun a c -> Type) (a6989586621679521877 :: a) = (a6989586621679521876 :. a6989586621679521875) a6989586621679521877

type (.@#@$$$$) (a6989586621679521875 :: (~>) b6989586621679521709 c6989586621679521710) (a6989586621679521876 :: (~>) a6989586621679521711 b6989586621679521709) (a6989586621679521877 :: a6989586621679521711) = (:.) a6989586621679521875 a6989586621679521876 a6989586621679521877 Source #

data FlipSym0 :: forall a6989586621679521706 b6989586621679521707 c6989586621679521708. (~>) ((~>) a6989586621679521706 ((~>) b6989586621679521707 c6989586621679521708)) ((~>) b6989586621679521707 ((~>) a6989586621679521706 c6989586621679521708)) Source #

Instances
SingI (FlipSym0 :: TyFun (a ~> (b ~> c)) (b ~> (a ~> c)) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

SuppressUnusedWarnings (FlipSym0 :: TyFun (a6989586621679521706 ~> (b6989586621679521707 ~> c6989586621679521708)) (b6989586621679521707 ~> (a6989586621679521706 ~> c6989586621679521708)) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (FlipSym0 :: TyFun (a6989586621679521706 ~> (b6989586621679521707 ~> c6989586621679521708)) (b6989586621679521707 ~> (a6989586621679521706 ~> c6989586621679521708)) -> Type) (a6989586621679521866 :: a6989586621679521706 ~> (b6989586621679521707 ~> c6989586621679521708)) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (FlipSym0 :: TyFun (a6989586621679521706 ~> (b6989586621679521707 ~> c6989586621679521708)) (b6989586621679521707 ~> (a6989586621679521706 ~> c6989586621679521708)) -> Type) (a6989586621679521866 :: a6989586621679521706 ~> (b6989586621679521707 ~> c6989586621679521708)) = FlipSym1 a6989586621679521866

data FlipSym1 (a6989586621679521866 :: (~>) a6989586621679521706 ((~>) b6989586621679521707 c6989586621679521708)) :: (~>) b6989586621679521707 ((~>) a6989586621679521706 c6989586621679521708) Source #

Instances
SingI d => SingI (FlipSym1 d :: TyFun b (a ~> c) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

Methods

sing :: Sing (FlipSym1 d) Source #

SuppressUnusedWarnings (FlipSym1 a6989586621679521866 :: TyFun b6989586621679521707 (a6989586621679521706 ~> c6989586621679521708) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (FlipSym1 a6989586621679521866 :: TyFun b6989586621679521707 (a6989586621679521706 ~> c6989586621679521708) -> Type) (a6989586621679521867 :: b6989586621679521707) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (FlipSym1 a6989586621679521866 :: TyFun b6989586621679521707 (a6989586621679521706 ~> c6989586621679521708) -> Type) (a6989586621679521867 :: b6989586621679521707) = FlipSym2 a6989586621679521866 a6989586621679521867

data FlipSym2 (a6989586621679521866 :: (~>) a6989586621679521706 ((~>) b6989586621679521707 c6989586621679521708)) (a6989586621679521867 :: b6989586621679521707) :: (~>) a6989586621679521706 c6989586621679521708 Source #

Instances
(SingI d1, SingI d2) => SingI (FlipSym2 d1 d2 :: TyFun a c -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

Methods

sing :: Sing (FlipSym2 d1 d2) Source #

SuppressUnusedWarnings (FlipSym2 a6989586621679521867 a6989586621679521866 :: TyFun a6989586621679521706 c6989586621679521708 -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (FlipSym2 a6989586621679521867 a6989586621679521866 :: TyFun a c -> Type) (a6989586621679521868 :: a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (FlipSym2 a6989586621679521867 a6989586621679521866 :: TyFun a c -> Type) (a6989586621679521868 :: a) = Flip a6989586621679521867 a6989586621679521866 a6989586621679521868

type FlipSym3 (a6989586621679521866 :: (~>) a6989586621679521706 ((~>) b6989586621679521707 c6989586621679521708)) (a6989586621679521867 :: b6989586621679521707) (a6989586621679521868 :: a6989586621679521706) = Flip a6989586621679521866 a6989586621679521867 a6989586621679521868 Source #

data ($@#@$) :: forall a6989586621679521703 b6989586621679521704. (~>) ((~>) a6989586621679521703 b6989586621679521704) ((~>) a6989586621679521703 b6989586621679521704) infixr 0 Source #

Instances
SingI (($@#@$) :: TyFun (a ~> b) (a ~> b) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

SuppressUnusedWarnings (($@#@$) :: TyFun (a6989586621679521703 ~> b6989586621679521704) (a6989586621679521703 ~> b6989586621679521704) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (($@#@$) :: TyFun (a6989586621679521703 ~> b6989586621679521704) (a6989586621679521703 ~> b6989586621679521704) -> Type) (a6989586621679521860 :: a6989586621679521703 ~> b6989586621679521704) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (($@#@$) :: TyFun (a6989586621679521703 ~> b6989586621679521704) (a6989586621679521703 ~> b6989586621679521704) -> Type) (a6989586621679521860 :: a6989586621679521703 ~> b6989586621679521704) = ($@#@$$) a6989586621679521860

data ($@#@$$) (a6989586621679521860 :: (~>) a6989586621679521703 b6989586621679521704) :: (~>) a6989586621679521703 b6989586621679521704 infixr 0 Source #

Instances
SingI d => SingI (($@#@$$) d :: TyFun a b -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

Methods

sing :: Sing (($@#@$$) d) Source #

SuppressUnusedWarnings (($@#@$$) a6989586621679521860 :: TyFun a6989586621679521703 b6989586621679521704 -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (($@#@$$) a6989586621679521860 :: TyFun a b -> Type) (a6989586621679521861 :: a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Base

type Apply (($@#@$$) a6989586621679521860 :: TyFun a b -> Type) (a6989586621679521861 :: a) = a6989586621679521860 $ a6989586621679521861

type ($@#@$$$) (a6989586621679521860 :: (~>) a6989586621679521703 b6989586621679521704) (a6989586621679521861 :: a6989586621679521703) = ($) a6989586621679521860 a6989586621679521861 Source #

data (&@#@$) :: forall a6989586621679730240 b6989586621679730241. (~>) a6989586621679730240 ((~>) ((~>) a6989586621679730240 b6989586621679730241) b6989586621679730241) infixl 1 Source #

Instances
SingI ((&@#@$) :: TyFun a ((a ~> b) ~> b) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

SuppressUnusedWarnings ((&@#@$) :: TyFun a6989586621679730240 ((a6989586621679730240 ~> b6989586621679730241) ~> b6989586621679730241) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply ((&@#@$) :: TyFun a6989586621679730240 ((a6989586621679730240 ~> b6989586621679730241) ~> b6989586621679730241) -> Type) (a6989586621679730253 :: a6989586621679730240) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply ((&@#@$) :: TyFun a6989586621679730240 ((a6989586621679730240 ~> b6989586621679730241) ~> b6989586621679730241) -> Type) (a6989586621679730253 :: a6989586621679730240) = (a6989586621679730253 &@#@$$ b6989586621679730241 :: TyFun (a6989586621679730240 ~> b6989586621679730241) b6989586621679730241 -> Type)

data (&@#@$$) (a6989586621679730253 :: a6989586621679730240) :: forall b6989586621679730241. (~>) ((~>) a6989586621679730240 b6989586621679730241) b6989586621679730241 infixl 1 Source #

Instances
SingI d => SingI (d &@#@$$ b :: TyFun (a ~> b) b -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

Methods

sing :: Sing (d &@#@$$ b) Source #

SuppressUnusedWarnings (a6989586621679730253 &@#@$$ b6989586621679730241 :: TyFun (a6989586621679730240 ~> b6989586621679730241) b6989586621679730241 -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply (a6989586621679730253 &@#@$$ b :: TyFun (a ~> b) b -> Type) (a6989586621679730254 :: a ~> b) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply (a6989586621679730253 &@#@$$ b :: TyFun (a ~> b) b -> Type) (a6989586621679730254 :: a ~> b) = a6989586621679730253 & a6989586621679730254

type (&@#@$$$) (a6989586621679730253 :: a6989586621679730240) (a6989586621679730254 :: (~>) a6989586621679730240 b6989586621679730241) = (&) a6989586621679730253 a6989586621679730254 Source #

data OnSym0 :: forall a6989586621679730244 b6989586621679730242 c6989586621679730243. (~>) ((~>) b6989586621679730242 ((~>) b6989586621679730242 c6989586621679730243)) ((~>) ((~>) a6989586621679730244 b6989586621679730242) ((~>) a6989586621679730244 ((~>) a6989586621679730244 c6989586621679730243))) infixl 0 Source #

Instances
SingI (OnSym0 :: TyFun (b ~> (b ~> c)) ((a ~> b) ~> (a ~> (a ~> c))) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

Methods

sing :: Sing OnSym0 Source #

SuppressUnusedWarnings (OnSym0 :: TyFun (b6989586621679730242 ~> (b6989586621679730242 ~> c6989586621679730243)) ((a6989586621679730244 ~> b6989586621679730242) ~> (a6989586621679730244 ~> (a6989586621679730244 ~> c6989586621679730243))) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply (OnSym0 :: TyFun (b6989586621679730242 ~> (b6989586621679730242 ~> c6989586621679730243)) ((a6989586621679730244 ~> b6989586621679730242) ~> (a6989586621679730244 ~> (a6989586621679730244 ~> c6989586621679730243))) -> Type) (a6989586621679730259 :: b6989586621679730242 ~> (b6989586621679730242 ~> c6989586621679730243)) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply (OnSym0 :: TyFun (b6989586621679730242 ~> (b6989586621679730242 ~> c6989586621679730243)) ((a6989586621679730244 ~> b6989586621679730242) ~> (a6989586621679730244 ~> (a6989586621679730244 ~> c6989586621679730243))) -> Type) (a6989586621679730259 :: b6989586621679730242 ~> (b6989586621679730242 ~> c6989586621679730243)) = (OnSym1 a6989586621679730259 a6989586621679730244 :: TyFun (a6989586621679730244 ~> b6989586621679730242) (a6989586621679730244 ~> (a6989586621679730244 ~> c6989586621679730243)) -> Type)

data OnSym1 (a6989586621679730259 :: (~>) b6989586621679730242 ((~>) b6989586621679730242 c6989586621679730243)) :: forall a6989586621679730244. (~>) ((~>) a6989586621679730244 b6989586621679730242) ((~>) a6989586621679730244 ((~>) a6989586621679730244 c6989586621679730243)) infixl 0 Source #

Instances
SingI d => SingI (OnSym1 d a :: TyFun (a ~> b) (a ~> (a ~> c)) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

Methods

sing :: Sing (OnSym1 d a) Source #

SuppressUnusedWarnings (OnSym1 a6989586621679730259 a6989586621679730244 :: TyFun (a6989586621679730244 ~> b6989586621679730242) (a6989586621679730244 ~> (a6989586621679730244 ~> c6989586621679730243)) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply (OnSym1 a6989586621679730259 a6989586621679730244 :: TyFun (a6989586621679730244 ~> b6989586621679730242) (a6989586621679730244 ~> (a6989586621679730244 ~> c6989586621679730243)) -> Type) (a6989586621679730260 :: a6989586621679730244 ~> b6989586621679730242) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply (OnSym1 a6989586621679730259 a6989586621679730244 :: TyFun (a6989586621679730244 ~> b6989586621679730242) (a6989586621679730244 ~> (a6989586621679730244 ~> c6989586621679730243)) -> Type) (a6989586621679730260 :: a6989586621679730244 ~> b6989586621679730242) = OnSym2 a6989586621679730259 a6989586621679730260

data OnSym2 (a6989586621679730259 :: (~>) b6989586621679730242 ((~>) b6989586621679730242 c6989586621679730243)) (a6989586621679730260 :: (~>) a6989586621679730244 b6989586621679730242) :: (~>) a6989586621679730244 ((~>) a6989586621679730244 c6989586621679730243) infixl 0 Source #

Instances
(SingI d1, SingI d2) => SingI (OnSym2 d1 d2 :: TyFun a (a ~> c) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

Methods

sing :: Sing (OnSym2 d1 d2) Source #

SuppressUnusedWarnings (OnSym2 a6989586621679730260 a6989586621679730259 :: TyFun a6989586621679730244 (a6989586621679730244 ~> c6989586621679730243) -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply (OnSym2 a6989586621679730260 a6989586621679730259 :: TyFun a6989586621679730244 (a6989586621679730244 ~> c6989586621679730243) -> Type) (a6989586621679730261 :: a6989586621679730244) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply (OnSym2 a6989586621679730260 a6989586621679730259 :: TyFun a6989586621679730244 (a6989586621679730244 ~> c6989586621679730243) -> Type) (a6989586621679730261 :: a6989586621679730244) = OnSym3 a6989586621679730260 a6989586621679730259 a6989586621679730261

data OnSym3 (a6989586621679730259 :: (~>) b6989586621679730242 ((~>) b6989586621679730242 c6989586621679730243)) (a6989586621679730260 :: (~>) a6989586621679730244 b6989586621679730242) (a6989586621679730261 :: a6989586621679730244) :: (~>) a6989586621679730244 c6989586621679730243 infixl 0 Source #

Instances
(SingI d1, SingI d2, SingI d3) => SingI (OnSym3 d1 d2 d3 :: TyFun a c -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

Methods

sing :: Sing (OnSym3 d1 d2 d3) Source #

SuppressUnusedWarnings (OnSym3 a6989586621679730261 a6989586621679730260 a6989586621679730259 :: TyFun a6989586621679730244 c6989586621679730243 -> Type) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply (OnSym3 a6989586621679730261 a6989586621679730260 a6989586621679730259 :: TyFun a c -> Type) (a6989586621679730262 :: a) Source # 
Instance details

Defined in Data.Singletons.Prelude.Function

type Apply (OnSym3 a6989586621679730261 a6989586621679730260 a6989586621679730259 :: TyFun a c -> Type) (a6989586621679730262 :: a) = On a6989586621679730261 a6989586621679730260 a6989586621679730259 a6989586621679730262

type OnSym4 (a6989586621679730259 :: (~>) b6989586621679730242 ((~>) b6989586621679730242 c6989586621679730243)) (a6989586621679730260 :: (~>) a6989586621679730244 b6989586621679730242) (a6989586621679730261 :: a6989586621679730244) (a6989586621679730262 :: a6989586621679730244) = On a6989586621679730259 a6989586621679730260 a6989586621679730261 a6989586621679730262 Source #