Portability | portable |
---|---|
Stability | experimental |
Maintainer | tamar@zhox.com |
Module containing definitions for tuples, since those can't be automatically translated. We This file contains predefined mappings of tuples till 8-tuples. If you need more you need to unfortunately add these yourself
- data Tuple2 a b = Tuple2 a b
- data Tuple3 a b c = Tuple3 a b c
- data Tuple4 a b c d = Tuple4 a b c d
- data Tuple5 a b c d e = Tuple5 a b c d e
- data Tuple6 a b c d e f = Tuple6 a b c d e f
- data Tuple7 a b c d e f g = Tuple7 a b c d e f g
- data Tuple8 a b c d e f g h = Tuple8 a b c d e f g h
- type Tuple2Ptr a b = Ptr (Tuple2 a b)
- type Tuple3Ptr a b c = Ptr (Tuple3 a b c)
- type Tuple4Ptr a b c d = Ptr (Tuple4 a b c d)
- type Tuple5Ptr a b c d e = Ptr (Tuple5 a b c d e)
- type Tuple6Ptr a b c d e f = Ptr (Tuple6 a b c d e f)
- type Tuple7Ptr a b c d e f g = Ptr (Tuple7 a b c d e f g)
- type Tuple8Ptr a b c d e f g h = Ptr (Tuple8 a b c d e f g h)
The datatypes to replace the tupples with
Tuple2 a b |
Tuple3 a b c |
Tuple4 a b c d |
Storable a => Functor (Tuple4 a b c) | |
(Storable a, Storable b, Storable c, Storable d) => Storable (Tuple4 a b c d) | |
(FFIType a b, FFIType c d, FFIType e f, FFIType g h, Storable b, Storable d, Storable f, Storable h) => FFIType (a, c, e, g) (Tuple4Ptr b d f h) | |
(FFIType a b, FFIType c d, FFIType e f, FFIType g h) => FFIType (a, c, e, g) (Tuple4 b d f h) |
Tuple5 a b c d e |
Storable a => Functor (Tuple5 a b c d) | |
(Storable a, Storable b, Storable c, Storable d, Storable e) => Storable (Tuple5 a b c d e) | |
(FFIType a b, FFIType c d, FFIType e f, FFIType g h, FFIType i j, Storable j, Storable b, Storable d, Storable f, Storable h) => FFIType (a, c, e, g, i) (Tuple5Ptr b d f h j) | |
(FFIType a b, FFIType c d, FFIType e f, FFIType g h, FFIType i j) => FFIType (a, c, e, g, i) (Tuple5 b d f h j) |
data Tuple6 a b c d e f Source
Tuple6 a b c d e f |
Storable a => Functor (Tuple6 a b c d e) | |
(Storable a, Storable b, Storable c, Storable d, Storable e, Storable f) => Storable (Tuple6 a b c d e f) | |
(FFIType a b, FFIType c d, FFIType e f, FFIType g h, FFIType i j, FFIType k l, Storable j, Storable l, Storable b, Storable d, Storable f, Storable h) => FFIType (a, c, e, g, i, k) (Tuple6Ptr b d f h j l) | |
(FFIType a b, FFIType c d, FFIType e f, FFIType g h, FFIType i j, FFIType k l) => FFIType (a, c, e, g, i, k) (Tuple6 b d f h j l) |
data Tuple7 a b c d e f g Source
Tuple7 a b c d e f g |
Storable a => Functor (Tuple7 a b c d e f) | |
(Storable a, Storable b, Storable c, Storable d, Storable e, Storable f, Storable g) => Storable (Tuple7 a b c d e f g) | |
(FFIType a b, FFIType c d, FFIType e f, FFIType g h, FFIType i j, FFIType k l, FFIType m n, Storable n, Storable j, Storable l, Storable b, Storable d, Storable f, Storable h) => FFIType (a, c, e, g, i, k, m) (Tuple7Ptr b d f h j l n) | |
(FFIType a b, FFIType c d, FFIType e f, FFIType g h, FFIType i j, FFIType k l, FFIType m n) => FFIType (a, c, e, g, i, k, m) (Tuple7 b d f h j l n) |
data Tuple8 a b c d e f g h Source
Tuple8 a b c d e f g h |
Storable a => Functor (Tuple8 a b c d e f g) | |
(Storable a, Storable b, Storable c, Storable d, Storable e, Storable f, Storable g, Storable h) => Storable (Tuple8 a b c d e f g h) | |
(FFIType a b, FFIType c d, FFIType e f, FFIType g h, FFIType i j, FFIType k l, FFIType m n, FFIType o p, Storable n, Storable p, Storable j, Storable l, Storable b, Storable d, Storable f, Storable h) => FFIType (a, c, e, g, i, k, m, o) (Tuple8Ptr b d f h j l n p) | |
(FFIType a b, FFIType c d, FFIType e f, FFIType g h, FFIType i j, FFIType k l, FFIType m n, FFIType o p) => FFIType (a, c, e, g, i, k, m, o) (Tuple8 b d f h j l n p) |