syntactic-3.7: Generic representation and manipulation of abstract syntax

Safe HaskellNone
LanguageHaskell2010

Language.Syntactic.Sugar.Tuple

Contents

Description

Syntactic instances for tuples

Documentation

Orphan instances

(Syntactic a, Syntactic b, (:<:) Tuple (Domain a), (~) (* -> *) (Domain a) (Domain b)) => Syntactic (a, b) Source # 

Associated Types

type Domain (a, b) :: * -> * Source #

type Internal (a, b) :: * Source #

Methods

desugar :: (a, b) -> ASTF (Domain (a, b)) (Internal (a, b)) Source #

sugar :: ASTF (Domain (a, b)) (Internal (a, b)) -> (a, b) Source #

(Syntactic a, Syntactic b, Syntactic c, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c)) => Syntactic (a, b, c) Source # 

Associated Types

type Domain (a, b, c) :: * -> * Source #

type Internal (a, b, c) :: * Source #

Methods

desugar :: (a, b, c) -> ASTF (Domain (a, b, c)) (Internal (a, b, c)) Source #

sugar :: ASTF (Domain (a, b, c)) (Internal (a, b, c)) -> (a, b, c) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d)) => Syntactic (a, b, c, d) Source # 

Associated Types

type Domain (a, b, c, d) :: * -> * Source #

type Internal (a, b, c, d) :: * Source #

Methods

desugar :: (a, b, c, d) -> ASTF (Domain (a, b, c, d)) (Internal (a, b, c, d)) Source #

sugar :: ASTF (Domain (a, b, c, d)) (Internal (a, b, c, d)) -> (a, b, c, d) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e)) => Syntactic (a, b, c, d, e) Source # 

Associated Types

type Domain (a, b, c, d, e) :: * -> * Source #

type Internal (a, b, c, d, e) :: * Source #

Methods

desugar :: (a, b, c, d, e) -> ASTF (Domain (a, b, c, d, e)) (Internal (a, b, c, d, e)) Source #

sugar :: ASTF (Domain (a, b, c, d, e)) (Internal (a, b, c, d, e)) -> (a, b, c, d, e) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, Syntactic f, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e), (~) (* -> *) (Domain a) (Domain f)) => Syntactic (a, b, c, d, e, f) Source # 

Associated Types

type Domain (a, b, c, d, e, f) :: * -> * Source #

type Internal (a, b, c, d, e, f) :: * Source #

Methods

desugar :: (a, b, c, d, e, f) -> ASTF (Domain (a, b, c, d, e, f)) (Internal (a, b, c, d, e, f)) Source #

sugar :: ASTF (Domain (a, b, c, d, e, f)) (Internal (a, b, c, d, e, f)) -> (a, b, c, d, e, f) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, Syntactic f, Syntactic g, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e), (~) (* -> *) (Domain a) (Domain f), (~) (* -> *) (Domain a) (Domain g)) => Syntactic (a, b, c, d, e, f, g) Source # 

Associated Types

type Domain (a, b, c, d, e, f, g) :: * -> * Source #

type Internal (a, b, c, d, e, f, g) :: * Source #

Methods

desugar :: (a, b, c, d, e, f, g) -> ASTF (Domain (a, b, c, d, e, f, g)) (Internal (a, b, c, d, e, f, g)) Source #

sugar :: ASTF (Domain (a, b, c, d, e, f, g)) (Internal (a, b, c, d, e, f, g)) -> (a, b, c, d, e, f, g) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, Syntactic f, Syntactic g, Syntactic h, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e), (~) (* -> *) (Domain a) (Domain f), (~) (* -> *) (Domain a) (Domain g), (~) (* -> *) (Domain a) (Domain h)) => Syntactic (a, b, c, d, e, f, g, h) Source # 

Associated Types

type Domain (a, b, c, d, e, f, g, h) :: * -> * Source #

type Internal (a, b, c, d, e, f, g, h) :: * Source #

Methods

desugar :: (a, b, c, d, e, f, g, h) -> ASTF (Domain (a, b, c, d, e, f, g, h)) (Internal (a, b, c, d, e, f, g, h)) Source #

sugar :: ASTF (Domain (a, b, c, d, e, f, g, h)) (Internal (a, b, c, d, e, f, g, h)) -> (a, b, c, d, e, f, g, h) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, Syntactic f, Syntactic g, Syntactic h, Syntactic i, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e), (~) (* -> *) (Domain a) (Domain f), (~) (* -> *) (Domain a) (Domain g), (~) (* -> *) (Domain a) (Domain h), (~) (* -> *) (Domain a) (Domain i)) => Syntactic (a, b, c, d, e, f, g, h, i) Source # 

Associated Types

type Domain (a, b, c, d, e, f, g, h, i) :: * -> * Source #

type Internal (a, b, c, d, e, f, g, h, i) :: * Source #

Methods

desugar :: (a, b, c, d, e, f, g, h, i) -> ASTF (Domain (a, b, c, d, e, f, g, h, i)) (Internal (a, b, c, d, e, f, g, h, i)) Source #

sugar :: ASTF (Domain (a, b, c, d, e, f, g, h, i)) (Internal (a, b, c, d, e, f, g, h, i)) -> (a, b, c, d, e, f, g, h, i) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, Syntactic f, Syntactic g, Syntactic h, Syntactic i, Syntactic j, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e), (~) (* -> *) (Domain a) (Domain f), (~) (* -> *) (Domain a) (Domain g), (~) (* -> *) (Domain a) (Domain h), (~) (* -> *) (Domain a) (Domain i), (~) (* -> *) (Domain a) (Domain j)) => Syntactic (a, b, c, d, e, f, g, h, i, j) Source # 

Associated Types

type Domain (a, b, c, d, e, f, g, h, i, j) :: * -> * Source #

type Internal (a, b, c, d, e, f, g, h, i, j) :: * Source #

Methods

desugar :: (a, b, c, d, e, f, g, h, i, j) -> ASTF (Domain (a, b, c, d, e, f, g, h, i, j)) (Internal (a, b, c, d, e, f, g, h, i, j)) Source #

sugar :: ASTF (Domain (a, b, c, d, e, f, g, h, i, j)) (Internal (a, b, c, d, e, f, g, h, i, j)) -> (a, b, c, d, e, f, g, h, i, j) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, Syntactic f, Syntactic g, Syntactic h, Syntactic i, Syntactic j, Syntactic k, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e), (~) (* -> *) (Domain a) (Domain f), (~) (* -> *) (Domain a) (Domain g), (~) (* -> *) (Domain a) (Domain h), (~) (* -> *) (Domain a) (Domain i), (~) (* -> *) (Domain a) (Domain j), (~) (* -> *) (Domain a) (Domain k)) => Syntactic (a, b, c, d, e, f, g, h, i, j, k) Source # 

Associated Types

type Domain (a, b, c, d, e, f, g, h, i, j, k) :: * -> * Source #

type Internal (a, b, c, d, e, f, g, h, i, j, k) :: * Source #

Methods

desugar :: (a, b, c, d, e, f, g, h, i, j, k) -> ASTF (Domain (a, b, c, d, e, f, g, h, i, j, k)) (Internal (a, b, c, d, e, f, g, h, i, j, k)) Source #

sugar :: ASTF (Domain (a, b, c, d, e, f, g, h, i, j, k)) (Internal (a, b, c, d, e, f, g, h, i, j, k)) -> (a, b, c, d, e, f, g, h, i, j, k) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, Syntactic f, Syntactic g, Syntactic h, Syntactic i, Syntactic j, Syntactic k, Syntactic l, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e), (~) (* -> *) (Domain a) (Domain f), (~) (* -> *) (Domain a) (Domain g), (~) (* -> *) (Domain a) (Domain h), (~) (* -> *) (Domain a) (Domain i), (~) (* -> *) (Domain a) (Domain j), (~) (* -> *) (Domain a) (Domain k), (~) (* -> *) (Domain a) (Domain l)) => Syntactic (a, b, c, d, e, f, g, h, i, j, k, l) Source # 

Associated Types

type Domain (a, b, c, d, e, f, g, h, i, j, k, l) :: * -> * Source #

type Internal (a, b, c, d, e, f, g, h, i, j, k, l) :: * Source #

Methods

desugar :: (a, b, c, d, e, f, g, h, i, j, k, l) -> ASTF (Domain (a, b, c, d, e, f, g, h, i, j, k, l)) (Internal (a, b, c, d, e, f, g, h, i, j, k, l)) Source #

sugar :: ASTF (Domain (a, b, c, d, e, f, g, h, i, j, k, l)) (Internal (a, b, c, d, e, f, g, h, i, j, k, l)) -> (a, b, c, d, e, f, g, h, i, j, k, l) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, Syntactic f, Syntactic g, Syntactic h, Syntactic i, Syntactic j, Syntactic k, Syntactic l, Syntactic m, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e), (~) (* -> *) (Domain a) (Domain f), (~) (* -> *) (Domain a) (Domain g), (~) (* -> *) (Domain a) (Domain h), (~) (* -> *) (Domain a) (Domain i), (~) (* -> *) (Domain a) (Domain j), (~) (* -> *) (Domain a) (Domain k), (~) (* -> *) (Domain a) (Domain l), (~) (* -> *) (Domain a) (Domain m)) => Syntactic (a, b, c, d, e, f, g, h, i, j, k, l, m) Source # 

Associated Types

type Domain (a, b, c, d, e, f, g, h, i, j, k, l, m) :: * -> * Source #

type Internal (a, b, c, d, e, f, g, h, i, j, k, l, m) :: * Source #

Methods

desugar :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> ASTF (Domain (a, b, c, d, e, f, g, h, i, j, k, l, m)) (Internal (a, b, c, d, e, f, g, h, i, j, k, l, m)) Source #

sugar :: ASTF (Domain (a, b, c, d, e, f, g, h, i, j, k, l, m)) (Internal (a, b, c, d, e, f, g, h, i, j, k, l, m)) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, Syntactic f, Syntactic g, Syntactic h, Syntactic i, Syntactic j, Syntactic k, Syntactic l, Syntactic m, Syntactic n, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e), (~) (* -> *) (Domain a) (Domain f), (~) (* -> *) (Domain a) (Domain g), (~) (* -> *) (Domain a) (Domain h), (~) (* -> *) (Domain a) (Domain i), (~) (* -> *) (Domain a) (Domain j), (~) (* -> *) (Domain a) (Domain k), (~) (* -> *) (Domain a) (Domain l), (~) (* -> *) (Domain a) (Domain m), (~) (* -> *) (Domain a) (Domain n)) => Syntactic (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source # 

Associated Types

type Domain (a, b, c, d, e, f, g, h, i, j, k, l, m, n) :: * -> * Source #

type Internal (a, b, c, d, e, f, g, h, i, j, k, l, m, n) :: * Source #

Methods

desugar :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> ASTF (Domain (a, b, c, d, e, f, g, h, i, j, k, l, m, n)) (Internal (a, b, c, d, e, f, g, h, i, j, k, l, m, n)) Source #

sugar :: ASTF (Domain (a, b, c, d, e, f, g, h, i, j, k, l, m, n)) (Internal (a, b, c, d, e, f, g, h, i, j, k, l, m, n)) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source #

(Syntactic a, Syntactic b, Syntactic c, Syntactic d, Syntactic e, Syntactic f, Syntactic g, Syntactic h, Syntactic i, Syntactic j, Syntactic k, Syntactic l, Syntactic m, Syntactic n, Syntactic o, (:<:) Tuple sym, (~) (* -> *) (Domain a) sym, (~) (* -> *) (Domain a) (Domain b), (~) (* -> *) (Domain a) (Domain c), (~) (* -> *) (Domain a) (Domain d), (~) (* -> *) (Domain a) (Domain e), (~) (* -> *) (Domain a) (Domain f), (~) (* -> *) (Domain a) (Domain g), (~) (* -> *) (Domain a) (Domain h), (~) (* -> *) (Domain a) (Domain i), (~) (* -> *) (Domain a) (Domain j), (~) (* -> *) (Domain a) (Domain k), (~) (* -> *) (Domain a) (Domain l), (~) (* -> *) (Domain a) (Domain m), (~) (* -> *) (Domain a) (Domain n), (~) (* -> *) (Domain a) (Domain o)) => Syntactic (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source # 

Associated Types

type Domain (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) :: * -> * Source #

type Internal (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) :: * Source #

Methods

desugar :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> ASTF (Domain (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)) (Internal (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)) Source #

sugar :: ASTF (Domain (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)) (Internal (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source #