parameterized-0.5.0.0: Parameterized/indexed monoids and monads using only a single parameter type variable.

Safe HaskellSafe
LanguageHaskell2010

Parameterized.TypeLevel

Synopsis

Documentation

type family At0 t where ... Source #

Get the first type of a value level tuple This is useful for defining a newtype wrapper with a single "parameterized" type, around a type with many "parameterized" type variables.

Equations

At0 (x, _) = x 
At0 (x, _, _) = x 
At0 (x, _, _, _) = x 
At0 (x, _, _, _, _) = x 
At0 (x, _, _, _, _, _) = x 
At0 (x, _, _, _, _, _, _) = x 
At0 (x, _, _, _, _, _, _, _) = x 
At0 (x, _, _, _, _, _, _, _, _) = x 
At0 (x, _, _, _, _, _, _, _, _, _) = x 

type family At1 t where ... Source #

Get the second type of a value level tuple

Equations

At1 (_, x) = x 
At1 (_, x, _) = x 
At1 (_, x, _, _) = x 
At1 (_, x, _, _, _) = x 
At1 (_, x, _, _, _, _) = x 
At1 (_, x, _, _, _, _, _) = x 
At1 (_, x, _, _, _, _, _, _) = x 
At1 (_, x, _, _, _, _, _, _, _) = x 
At1 (_, x, _, _, _, _, _, _, _, _) = x 

type family At2 t where ... Source #

Get the third type of a value level tuple

Equations

At2 (_, _, x) = x 
At2 (_, _, x, _) = x 
At2 (_, _, x, _, _) = x 
At2 (_, _, x, _, _, _) = x 
At2 (_, _, x, _, _, _, _) = x 
At2 (_, _, x, _, _, _, _, _) = x 
At2 (_, _, x, _, _, _, _, _, _) = x 
At2 (_, _, x, _, _, _, _, _, _, _) = x 

type family At3 t where ... Source #

Get the fourth type of a value level tuple

Equations

At3 (_, _, _, x) = x 
At3 (_, _, _, x, _) = x 
At3 (_, _, _, x, _, _) = x 
At3 (_, _, _, x, _, _, _) = x 
At3 (_, _, _, x, _, _, _, _) = x 
At3 (_, _, _, x, _, _, _, _, _) = x 
At3 (_, _, _, x, _, _, _, _, _, _) = x 

type family At4 t where ... Source #

Get the fifth type of a value level tuple

Equations

At4 (_, _, _, _, x) = x 
At4 (_, _, _, _, x, _) = x 
At4 (_, _, _, _, x, _, _) = x 
At4 (_, _, _, _, x, _, _, _) = x 
At4 (_, _, _, _, x, _, _, _, _) = x 
At4 (_, _, _, _, x, _, _, _, _, _) = x 

type family At5 t where ... Source #

Get the sixth type of a value level tuple

Equations

At5 (_, _, _, _, _, x) = x 
At5 (_, _, _, _, _, x, _) = x 
At5 (_, _, _, _, _, x, _, _) = x 
At5 (_, _, _, _, _, x, _, _, _) = x 
At5 (_, _, _, _, _, x, _, _, _, _) = x 

type family At6 t where ... Source #

Get the seventh type of a value level tuple

Equations

At6 (_, _, _, _, _, _, x) = x 
At6 (_, _, _, _, _, _, x, _) = x 
At6 (_, _, _, _, _, _, x, _, _) = x 
At6 (_, _, _, _, _, _, x, _, _, _) = x 

type family At7 t where ... Source #

Get the eigth type of a value level tuple

Equations

At7 (_, _, _, _, _, _, _, x) = x 
At7 (_, _, _, _, _, _, _, x, _) = x 
At7 (_, _, _, _, _, _, _, x, _, _) = x 

type family At8 t where ... Source #

Get the nineth type of a value level tuple

Equations

At8 (_, _, _, _, _, _, _, _, x) = x 
At8 (_, _, _, _, _, _, _, _, x, _) = x 

type family At9 t where ... Source #

Get the tenth type of a value level tuple

Equations

At9 (_, _, _, _, _, _, _, _, _, x) = x