singletons-2.3.1: A framework for generating singleton types

Copyright(C) 2013 Richard Eisenberg
LicenseBSD-style (see LICENSE)
MaintainerRichard Eisenberg (rae@cs.brynmawr.edu)
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Data.Singletons.Prelude.Tuple

Contents

Description

Defines functions and datatypes relating to the singleton for tuples, including a singletons version of all the definitions in Data.Tuple.

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.Tuple. Also, please excuse the apparent repeated variable names. This is due to an interaction between Template Haskell and Haddock.

Synopsis

Singleton definitions

See Sing for more info.

data family Sing (a :: k) #

The singleton kind-indexed data family.

Instances

data Sing Bool # 
data Sing Bool where
data Sing Ordering # 
data Sing * # 
data Sing * where
data Sing Nat # 
data Sing Nat where
data Sing Symbol # 
data Sing Symbol where
data Sing () # 
data Sing () where
data Sing [a] # 
data Sing [a] where
data Sing (Maybe a) # 
data Sing (Maybe a) where
data Sing (NonEmpty a) # 
data Sing (NonEmpty a) where
data Sing (Either a b) # 
data Sing (Either a b) where
data Sing (a, b) # 
data Sing (a, b) where
data Sing ((~>) k1 k2) # 
data Sing ((~>) k1 k2) = SLambda {}
data Sing (a, b, c) # 
data Sing (a, b, c) where
data Sing (a, b, c, d) # 
data Sing (a, b, c, d) where
data Sing (a, b, c, d, e) # 
data Sing (a, b, c, d, e) where
data Sing (a, b, c, d, e, f) # 
data Sing (a, b, c, d, e, f) where
data Sing (a, b, c, d, e, f, g) # 
data Sing (a, b, c, d, e, f, g) where

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

Singletons from Data.Tuple

type family Fst (a :: (a, b)) :: a where ... #

Equations

Fst '(x, _z_1627819906) = x 

sFst :: forall (t :: (a, b)). Sing t -> Sing (Apply FstSym0 t :: a) #

type family Snd (a :: (a, b)) :: b where ... #

Equations

Snd '(_z_1627819897, y) = y 

sSnd :: forall (t :: (a, b)). Sing t -> Sing (Apply SndSym0 t :: b) #

type family Curry (a :: TyFun (a, b) c -> Type) (a :: a) (a :: b) :: c where ... #

Equations

Curry f x y = Apply f (Apply (Apply Tuple2Sym0 x) y) 

sCurry :: forall (t :: TyFun (a, b) c -> Type) (t :: a) (t :: b). Sing t -> Sing t -> Sing t -> Sing (Apply (Apply (Apply CurrySym0 t) t) t :: c) #

type family Uncurry (a :: TyFun a (TyFun b c -> Type) -> Type) (a :: (a, b)) :: c where ... #

Equations

Uncurry f p = Apply (Apply f (Apply FstSym0 p)) (Apply SndSym0 p) 

sUncurry :: forall (t :: TyFun a (TyFun b c -> Type) -> Type) (t :: (a, b)). Sing t -> Sing t -> Sing (Apply (Apply UncurrySym0 t) t :: c) #

type family Swap (a :: (a, b)) :: (b, a) where ... #

Equations

Swap '(a, b) = Apply (Apply Tuple2Sym0 b) a 

sSwap :: forall (t :: (a, b)). Sing t -> Sing (Apply SwapSym0 t :: (b, a)) #

Defunctionalization symbols

type Tuple0Sym0 = '() #

data Tuple2Sym0 (l :: TyFun a822083585 (TyFun b822083586 (a822083585, b822083586) -> Type)) #

Instances

SuppressUnusedWarnings (TyFun a822083585 (TyFun b822083586 (a822083585, b822083586) -> Type) -> *) (Tuple2Sym0 a822083585 b822083586) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple2Sym0 a822083585 b822083586) t -> () #

type Apply a822083585 (TyFun b822083586 (a822083585, b822083586) -> Type) (Tuple2Sym0 a822083585 b822083586) l # 
type Apply a822083585 (TyFun b822083586 (a822083585, b822083586) -> Type) (Tuple2Sym0 a822083585 b822083586) l = Tuple2Sym1 a822083585 b822083586 l

data Tuple2Sym1 (l :: a822083585) (l :: TyFun b822083586 (a822083585, b822083586)) #

Instances

SuppressUnusedWarnings (a822083585 -> TyFun b822083586 (a822083585, b822083586) -> *) (Tuple2Sym1 a822083585 b822083586) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple2Sym1 a822083585 b822083586) t -> () #

type Apply k1 (k2, k1) (Tuple2Sym1 k2 k1 l1) l2 # 
type Apply k1 (k2, k1) (Tuple2Sym1 k2 k1 l1) l2 = (,) k2 k1 l1 l2

type Tuple2Sym2 (t :: a822083585) (t :: b822083586) = '(t, t) #

data Tuple3Sym0 (l :: TyFun a822083585 (TyFun b822083586 (TyFun c822083587 (a822083585, b822083586, c822083587) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (TyFun a822083585 (TyFun b822083586 (TyFun c822083587 (a822083585, b822083586, c822083587) -> Type) -> Type) -> *) (Tuple3Sym0 a822083585 b822083586 c822083587) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple3Sym0 a822083585 b822083586 c822083587) t -> () #

type Apply a822083585 (TyFun b822083586 (TyFun c822083587 (a822083585, b822083586, c822083587) -> Type) -> Type) (Tuple3Sym0 a822083585 b822083586 c822083587) l # 
type Apply a822083585 (TyFun b822083586 (TyFun c822083587 (a822083585, b822083586, c822083587) -> Type) -> Type) (Tuple3Sym0 a822083585 b822083586 c822083587) l = Tuple3Sym1 a822083585 b822083586 c822083587 l

data Tuple3Sym1 (l :: a822083585) (l :: TyFun b822083586 (TyFun c822083587 (a822083585, b822083586, c822083587) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> TyFun b822083586 (TyFun c822083587 (a822083585, b822083586, c822083587) -> Type) -> *) (Tuple3Sym1 a822083585 b822083586 c822083587) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple3Sym1 a822083585 b822083586 c822083587) t -> () #

type Apply b822083586 (TyFun c822083587 (a822083585, b822083586, c822083587) -> Type) (Tuple3Sym1 a822083585 b822083586 c822083587 l1) l2 # 
type Apply b822083586 (TyFun c822083587 (a822083585, b822083586, c822083587) -> Type) (Tuple3Sym1 a822083585 b822083586 c822083587 l1) l2 = Tuple3Sym2 a822083585 b822083586 c822083587 l1 l2

data Tuple3Sym2 (l :: a822083585) (l :: b822083586) (l :: TyFun c822083587 (a822083585, b822083586, c822083587)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> TyFun c822083587 (a822083585, b822083586, c822083587) -> *) (Tuple3Sym2 a822083585 b822083586 c822083587) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple3Sym2 a822083585 b822083586 c822083587) t -> () #

type Apply k3 (k2, k1, k3) (Tuple3Sym2 k2 k1 k3 l1 l2) l3 # 
type Apply k3 (k2, k1, k3) (Tuple3Sym2 k2 k1 k3 l1 l2) l3 = (,,) k2 k1 k3 l1 l2 l3

type Tuple3Sym3 (t :: a822083585) (t :: b822083586) (t :: c822083587) = '(t, t, t) #

data Tuple4Sym0 (l :: TyFun a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (TyFun a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) -> Type) -> Type) -> *) (Tuple4Sym0 a822083585 b822083586 c822083587 d822083588) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple4Sym0 a822083585 b822083586 c822083587 d822083588) t -> () #

type Apply a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) -> Type) -> Type) (Tuple4Sym0 a822083585 b822083586 c822083587 d822083588) l # 
type Apply a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) -> Type) -> Type) (Tuple4Sym0 a822083585 b822083586 c822083587 d822083588) l = Tuple4Sym1 a822083585 b822083586 c822083587 d822083588 l

data Tuple4Sym1 (l :: a822083585) (l :: TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) -> Type) -> *) (Tuple4Sym1 a822083585 b822083586 c822083587 d822083588) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple4Sym1 a822083585 b822083586 c822083587 d822083588) t -> () #

type Apply b822083586 (TyFun c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) -> Type) (Tuple4Sym1 a822083585 b822083586 c822083587 d822083588 l1) l2 # 
type Apply b822083586 (TyFun c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) -> Type) (Tuple4Sym1 a822083585 b822083586 c822083587 d822083588 l1) l2 = Tuple4Sym2 a822083585 b822083586 c822083587 d822083588 l1 l2

data Tuple4Sym2 (l :: a822083585) (l :: b822083586) (l :: TyFun c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> TyFun c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) -> *) (Tuple4Sym2 a822083585 b822083586 c822083587 d822083588) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple4Sym2 a822083585 b822083586 c822083587 d822083588) t -> () #

type Apply c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) (Tuple4Sym2 a822083585 b822083586 c822083587 d822083588 l1 l2) l3 # 
type Apply c822083587 (TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> Type) (Tuple4Sym2 a822083585 b822083586 c822083587 d822083588 l1 l2) l3 = Tuple4Sym3 a822083585 b822083586 c822083587 d822083588 l1 l2 l3

data Tuple4Sym3 (l :: a822083585) (l :: b822083586) (l :: c822083587) (l :: TyFun d822083588 (a822083585, b822083586, c822083587, d822083588)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> c822083587 -> TyFun d822083588 (a822083585, b822083586, c822083587, d822083588) -> *) (Tuple4Sym3 a822083585 b822083586 c822083587 d822083588) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple4Sym3 a822083585 b822083586 c822083587 d822083588) t -> () #

type Apply k4 (k2, k1, k3, k4) (Tuple4Sym3 k2 k1 k3 k4 l1 l2 l3) l4 # 
type Apply k4 (k2, k1, k3, k4) (Tuple4Sym3 k2 k1 k3 k4 l1 l2 l3) l4 = (,,,) k2 k1 k3 k4 l1 l2 l3 l4

type Tuple4Sym4 (t :: a822083585) (t :: b822083586) (t :: c822083587) (t :: d822083588) = '(t, t, t, t) #

data Tuple5Sym0 (l :: TyFun a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (TyFun a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) -> Type) -> Type) -> *) (Tuple5Sym0 a822083585 b822083586 c822083587 d822083588 e822083589) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple5Sym0 a822083585 b822083586 c822083587 d822083588 e822083589) t -> () #

type Apply a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) -> Type) -> Type) (Tuple5Sym0 a822083585 b822083586 c822083587 d822083588 e822083589) l # 
type Apply a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) -> Type) -> Type) (Tuple5Sym0 a822083585 b822083586 c822083587 d822083588 e822083589) l = Tuple5Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 l

data Tuple5Sym1 (l :: a822083585) (l :: TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) -> Type) -> *) (Tuple5Sym1 a822083585 b822083586 c822083587 d822083588 e822083589) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple5Sym1 a822083585 b822083586 c822083587 d822083588 e822083589) t -> () #

type Apply b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) -> Type) (Tuple5Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 l1) l2 # 
type Apply b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) -> Type) (Tuple5Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 l1) l2 = Tuple5Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 l1 l2

data Tuple5Sym2 (l :: a822083585) (l :: b822083586) (l :: TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) -> *) (Tuple5Sym2 a822083585 b822083586 c822083587 d822083588 e822083589) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple5Sym2 a822083585 b822083586 c822083587 d822083588 e822083589) t -> () #

type Apply c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) (Tuple5Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 l1 l2) l3 # 
type Apply c822083587 (TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> Type) (Tuple5Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 l1 l2) l3 = Tuple5Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 l1 l2 l3

data Tuple5Sym3 (l :: a822083585) (l :: b822083586) (l :: c822083587) (l :: TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> c822083587 -> TyFun d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) -> *) (Tuple5Sym3 a822083585 b822083586 c822083587 d822083588 e822083589) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple5Sym3 a822083585 b822083586 c822083587 d822083588 e822083589) t -> () #

type Apply d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) (Tuple5Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 l1 l2 l3) l4 # 
type Apply d822083588 (TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> Type) (Tuple5Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 l1 l2 l3) l4 = Tuple5Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 l1 l2 l3 l4

data Tuple5Sym4 (l :: a822083585) (l :: b822083586) (l :: c822083587) (l :: d822083588) (l :: TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> c822083587 -> d822083588 -> TyFun e822083589 (a822083585, b822083586, c822083587, d822083588, e822083589) -> *) (Tuple5Sym4 a822083585 b822083586 c822083587 d822083588 e822083589) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple5Sym4 a822083585 b822083586 c822083587 d822083588 e822083589) t -> () #

type Apply k5 (k2, k1, k3, k4, k5) (Tuple5Sym4 k2 k1 k3 k4 k5 l1 l2 l3 l4) l5 # 
type Apply k5 (k2, k1, k3, k4, k5) (Tuple5Sym4 k2 k1 k3 k4 k5 l1 l2 l3 l4) l5 = (,,,,) k2 k1 k3 k4 k5 l1 l2 l3 l4 l5

type Tuple5Sym5 (t :: a822083585) (t :: b822083586) (t :: c822083587) (t :: d822083588) (t :: e822083589) = '(t, t, t, t, t) #

data Tuple6Sym0 (l :: TyFun a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (TyFun a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) -> Type) -> Type) -> *) (Tuple6Sym0 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple6Sym0 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) t -> () #

type Apply a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) -> Type) -> Type) (Tuple6Sym0 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) l # 
type Apply a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) -> Type) -> Type) (Tuple6Sym0 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) l = Tuple6Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l

data Tuple6Sym1 (l :: a822083585) (l :: TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) -> Type) -> *) (Tuple6Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple6Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) t -> () #

type Apply b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) -> Type) (Tuple6Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1) l2 # 
type Apply b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) -> Type) (Tuple6Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1) l2 = Tuple6Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1 l2

data Tuple6Sym2 (l :: a822083585) (l :: b822083586) (l :: TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) -> *) (Tuple6Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple6Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) t -> () #

type Apply c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) (Tuple6Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1 l2) l3 # 
type Apply c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> Type) (Tuple6Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1 l2) l3 = Tuple6Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1 l2 l3

data Tuple6Sym3 (l :: a822083585) (l :: b822083586) (l :: c822083587) (l :: TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> c822083587 -> TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) -> *) (Tuple6Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple6Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) t -> () #

type Apply d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) (Tuple6Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1 l2 l3) l4 # 
type Apply d822083588 (TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> Type) (Tuple6Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1 l2 l3) l4 = Tuple6Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1 l2 l3 l4

data Tuple6Sym4 (l :: a822083585) (l :: b822083586) (l :: c822083587) (l :: d822083588) (l :: TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> c822083587 -> d822083588 -> TyFun e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) -> *) (Tuple6Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple6Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) t -> () #

type Apply e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) (Tuple6Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1 l2 l3 l4) l5 # 
type Apply e822083589 (TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> Type) (Tuple6Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1 l2 l3 l4) l5 = Tuple6Sym5 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 l1 l2 l3 l4 l5

data Tuple6Sym5 (l :: a822083585) (l :: b822083586) (l :: c822083587) (l :: d822083588) (l :: e822083589) (l :: TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> c822083587 -> d822083588 -> e822083589 -> TyFun f822083590 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590) -> *) (Tuple6Sym5 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple6Sym5 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590) t -> () #

type Apply k6 (k2, k1, k3, k4, k5, k6) (Tuple6Sym5 k2 k1 k3 k4 k5 k6 l1 l2 l3 l4 l5) l6 # 
type Apply k6 (k2, k1, k3, k4, k5, k6) (Tuple6Sym5 k2 k1 k3 k4 k5 k6 l1 l2 l3 l4 l5) l6 = (,,,,,) k2 k1 k3 k4 k5 k6 l1 l2 l3 l4 l5 l6

type Tuple6Sym6 (t :: a822083585) (t :: b822083586) (t :: c822083587) (t :: d822083588) (t :: e822083589) (t :: f822083590) = '(t, t, t, t, t, t) #

data Tuple7Sym0 (l :: TyFun a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (TyFun a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> *) (Tuple7Sym0 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple7Sym0 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) t -> () #

type Apply a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (Tuple7Sym0 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) l # 
type Apply a822083585 (TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (Tuple7Sym0 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) l = Tuple7Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l

data Tuple7Sym1 (l :: a822083585) (l :: TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> TyFun b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) -> Type) -> *) (Tuple7Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple7Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) t -> () #

type Apply b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) -> Type) (Tuple7Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1) l2 # 
type Apply b822083586 (TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) -> Type) (Tuple7Sym1 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1) l2 = Tuple7Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2

data Tuple7Sym2 (l :: a822083585) (l :: b822083586) (l :: TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> TyFun c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) -> *) (Tuple7Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple7Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) t -> () #

type Apply c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) (Tuple7Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2) l3 # 
type Apply c822083587 (TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> Type) (Tuple7Sym2 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2) l3 = Tuple7Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2 l3

data Tuple7Sym3 (l :: a822083585) (l :: b822083586) (l :: c822083587) (l :: TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> c822083587 -> TyFun d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) -> *) (Tuple7Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple7Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) t -> () #

type Apply d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) (Tuple7Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2 l3) l4 # 
type Apply d822083588 (TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> Type) (Tuple7Sym3 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2 l3) l4 = Tuple7Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2 l3 l4

data Tuple7Sym4 (l :: a822083585) (l :: b822083586) (l :: c822083587) (l :: d822083588) (l :: TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> c822083587 -> d822083588 -> TyFun e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) -> *) (Tuple7Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple7Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) t -> () #

type Apply e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) (Tuple7Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2 l3 l4) l5 # 
type Apply e822083589 (TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> Type) (Tuple7Sym4 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2 l3 l4) l5 = Tuple7Sym5 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2 l3 l4 l5

data Tuple7Sym5 (l :: a822083585) (l :: b822083586) (l :: c822083587) (l :: d822083588) (l :: e822083589) (l :: TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> c822083587 -> d822083588 -> e822083589 -> TyFun f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) -> *) (Tuple7Sym5 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple7Sym5 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) t -> () #

type Apply f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) (Tuple7Sym5 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2 l3 l4 l5) l6 # 
type Apply f822083590 (TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> Type) (Tuple7Sym5 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2 l3 l4 l5) l6 = Tuple7Sym6 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591 l1 l2 l3 l4 l5 l6

data Tuple7Sym6 (l :: a822083585) (l :: b822083586) (l :: c822083587) (l :: d822083588) (l :: e822083589) (l :: f822083590) (l :: TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591)) #

Instances

SuppressUnusedWarnings (a822083585 -> b822083586 -> c822083587 -> d822083588 -> e822083589 -> f822083590 -> TyFun g822083591 (a822083585, b822083586, c822083587, d822083588, e822083589, f822083590, g822083591) -> *) (Tuple7Sym6 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) # 

Methods

suppressUnusedWarnings :: Proxy (Tuple7Sym6 a822083585 b822083586 c822083587 d822083588 e822083589 f822083590 g822083591) t -> () #

type Apply k7 (k2, k1, k3, k4, k5, k6, k7) (Tuple7Sym6 k2 k1 k3 k4 k5 k6 k7 l1 l2 l3 l4 l5 l6) l7 # 
type Apply k7 (k2, k1, k3, k4, k5, k6, k7) (Tuple7Sym6 k2 k1 k3 k4 k5 k6 k7 l1 l2 l3 l4 l5 l6) l7 = (,,,,,,) k2 k1 k3 k4 k5 k6 k7 l1 l2 l3 l4 l5 l6 l7

type Tuple7Sym7 (t :: a822083585) (t :: b822083586) (t :: c822083587) (t :: d822083588) (t :: e822083589) (t :: f822083590) (t :: g822083591) = '(t, t, t, t, t, t, t) #

data FstSym0 (l :: TyFun (a1627819853, b1627819854) a1627819853) #

Instances

SuppressUnusedWarnings (TyFun (a1627819853, b1627819854) a1627819853 -> *) (FstSym0 b1627819854 a1627819853) # 

Methods

suppressUnusedWarnings :: Proxy (FstSym0 b1627819854 a1627819853) t -> () #

type Apply (a, b) a (FstSym0 b a) l # 
type Apply (a, b) a (FstSym0 b a) l = Fst b a l

type FstSym1 (t :: (a1627819853, b1627819854)) = Fst t #

data SndSym0 (l :: TyFun (a1627819851, b1627819852) b1627819852) #

Instances

SuppressUnusedWarnings (TyFun (a1627819851, b1627819852) b1627819852 -> *) (SndSym0 a1627819851 b1627819852) # 

Methods

suppressUnusedWarnings :: Proxy (SndSym0 a1627819851 b1627819852) t -> () #

type Apply (a, b) b (SndSym0 a b) l # 
type Apply (a, b) b (SndSym0 a b) l = Snd a b l

type SndSym1 (t :: (a1627819851, b1627819852)) = Snd t #

data CurrySym0 (l :: TyFun (TyFun (a1627819848, b1627819849) c1627819850 -> Type) (TyFun a1627819848 (TyFun b1627819849 c1627819850 -> Type) -> Type)) #

Instances

SuppressUnusedWarnings (TyFun (TyFun (a1627819848, b1627819849) c1627819850 -> Type) (TyFun a1627819848 (TyFun b1627819849 c1627819850 -> Type) -> Type) -> *) (CurrySym0 a1627819848 b1627819849 c1627819850) # 

Methods

suppressUnusedWarnings :: Proxy (CurrySym0 a1627819848 b1627819849 c1627819850) t -> () #

type Apply (TyFun (a1627819848, b1627819849) c1627819850 -> Type) (TyFun a1627819848 (TyFun b1627819849 c1627819850 -> Type) -> Type) (CurrySym0 a1627819848 b1627819849 c1627819850) l # 
type Apply (TyFun (a1627819848, b1627819849) c1627819850 -> Type) (TyFun a1627819848 (TyFun b1627819849 c1627819850 -> Type) -> Type) (CurrySym0 a1627819848 b1627819849 c1627819850) l = CurrySym1 a1627819848 b1627819849 c1627819850 l

data CurrySym1 (l :: TyFun (a1627819848, b1627819849) c1627819850 -> Type) (l :: TyFun a1627819848 (TyFun b1627819849 c1627819850 -> Type)) #

Instances

SuppressUnusedWarnings ((TyFun (a1627819848, b1627819849) c1627819850 -> Type) -> TyFun a1627819848 (TyFun b1627819849 c1627819850 -> Type) -> *) (CurrySym1 a1627819848 b1627819849 c1627819850) # 

Methods

suppressUnusedWarnings :: Proxy (CurrySym1 a1627819848 b1627819849 c1627819850) t -> () #

type Apply a1627819848 (TyFun b1627819849 c1627819850 -> Type) (CurrySym1 a1627819848 b1627819849 c1627819850 l1) l2 # 
type Apply a1627819848 (TyFun b1627819849 c1627819850 -> Type) (CurrySym1 a1627819848 b1627819849 c1627819850 l1) l2 = CurrySym2 a1627819848 b1627819849 c1627819850 l1 l2

data CurrySym2 (l :: TyFun (a1627819848, b1627819849) c1627819850 -> Type) (l :: a1627819848) (l :: TyFun b1627819849 c1627819850) #

Instances

SuppressUnusedWarnings ((TyFun (a1627819848, b1627819849) c1627819850 -> Type) -> a1627819848 -> TyFun b1627819849 c1627819850 -> *) (CurrySym2 a1627819848 b1627819849 c1627819850) # 

Methods

suppressUnusedWarnings :: Proxy (CurrySym2 a1627819848 b1627819849 c1627819850) t -> () #

type Apply b c (CurrySym2 a b c l1 l2) l3 # 
type Apply b c (CurrySym2 a b c l1 l2) l3 = Curry a b c l1 l2 l3

type CurrySym3 (t :: TyFun (a1627819848, b1627819849) c1627819850 -> Type) (t :: a1627819848) (t :: b1627819849) = Curry t t t #

data UncurrySym0 (l :: TyFun (TyFun a1627819845 (TyFun b1627819846 c1627819847 -> Type) -> Type) (TyFun (a1627819845, b1627819846) c1627819847 -> Type)) #

Instances

SuppressUnusedWarnings (TyFun (TyFun a1627819845 (TyFun b1627819846 c1627819847 -> Type) -> Type) (TyFun (a1627819845, b1627819846) c1627819847 -> Type) -> *) (UncurrySym0 a1627819845 b1627819846 c1627819847) # 

Methods

suppressUnusedWarnings :: Proxy (UncurrySym0 a1627819845 b1627819846 c1627819847) t -> () #

type Apply (TyFun a1627819845 (TyFun b1627819846 c1627819847 -> Type) -> Type) (TyFun (a1627819845, b1627819846) c1627819847 -> Type) (UncurrySym0 a1627819845 b1627819846 c1627819847) l # 
type Apply (TyFun a1627819845 (TyFun b1627819846 c1627819847 -> Type) -> Type) (TyFun (a1627819845, b1627819846) c1627819847 -> Type) (UncurrySym0 a1627819845 b1627819846 c1627819847) l = UncurrySym1 a1627819845 b1627819846 c1627819847 l

data UncurrySym1 (l :: TyFun a1627819845 (TyFun b1627819846 c1627819847 -> Type) -> Type) (l :: TyFun (a1627819845, b1627819846) c1627819847) #

Instances

SuppressUnusedWarnings ((TyFun a1627819845 (TyFun b1627819846 c1627819847 -> Type) -> Type) -> TyFun (a1627819845, b1627819846) c1627819847 -> *) (UncurrySym1 a1627819845 b1627819846 c1627819847) # 

Methods

suppressUnusedWarnings :: Proxy (UncurrySym1 a1627819845 b1627819846 c1627819847) t -> () #

type Apply (a, b) c (UncurrySym1 a b c l1) l2 # 
type Apply (a, b) c (UncurrySym1 a b c l1) l2 = Uncurry a b c l1 l2

type UncurrySym2 (t :: TyFun a1627819845 (TyFun b1627819846 c1627819847 -> Type) -> Type) (t :: (a1627819845, b1627819846)) = Uncurry t t #

data SwapSym0 (l :: TyFun (a1627819843, b1627819844) (b1627819844, a1627819843)) #

Instances

SuppressUnusedWarnings (TyFun (a1627819843, b1627819844) (b1627819844, a1627819843) -> *) (SwapSym0 b1627819844 a1627819843) # 

Methods

suppressUnusedWarnings :: Proxy (SwapSym0 b1627819844 a1627819843) t -> () #

type Apply (a, b) (b, a) (SwapSym0 b a) l # 
type Apply (a, b) (b, a) (SwapSym0 b a) l = Swap b a l

type SwapSym1 (t :: (a1627819843, b1627819844)) = Swap t #