syntactic-3.0: Generic representation and manipulation of abstract syntax

Safe HaskellNone
LanguageHaskell2010

Language.Syntactic.Functional.Tuple

Contents

Description

Construction and elimination of tuples

Synopsis

Generic tuple projection

class Select1 tup where Source

Associated Types

type Sel1 tup Source

Methods

select1 :: tup -> Sel1 tup Source

Instances

Select1 (a, b) Source 
Select1 (a, b, c) Source 
Select1 (a, b, c, d) Source 

class Select2 tup where Source

Associated Types

type Sel2 tup Source

Methods

select2 :: tup -> Sel2 tup Source

Instances

Select2 (a, b) Source 
Select2 (a, b, c) Source 
Select2 (a, b, c, d) Source 

class Select3 tup where Source

Associated Types

type Sel3 tup Source

Methods

select3 :: tup -> Sel3 tup Source

Instances

Select3 (a, b, c) Source 
Select3 (a, b, c, d) Source 

class Select4 tup where Source

Associated Types

type Sel4 tup Source

Methods

select4 :: tup -> Sel4 tup Source

Instances

Select4 (a, b, c, d) Source 

Symbols

data Tuple sig where Source

Construction and elimination of tuples

Constructors

Tup2 :: Tuple (a :-> (b :-> Full (a, b))) 
Tup3 :: Tuple (a :-> (b :-> (c :-> Full (a, b, c)))) 
Tup4 :: Tuple (a :-> (b :-> (c :-> (d :-> Full (a, b, c, d))))) 
Sel1 :: Select1 tup => Tuple (tup :-> Full (Sel1 tup)) 
Sel2 :: Select2 tup => Tuple (tup :-> Full (Sel2 tup)) 
Sel3 :: Select3 tup => Tuple (tup :-> Full (Sel3 tup)) 
Sel4 :: Select4 tup => Tuple (tup :-> Full (Sel4 tup))