1{-# language ConstrainedClassMethods #-}
2{-# language DataKinds #-}
3{-# language FlexibleContexts #-}
4{-# language FlexibleInstances #-}
5{-# language StandaloneKindSignatures #-}
6{-# language TypeFamilies #-}
8module Rel8.Table.Lifted
9 ( Table1( Columns1, ConstrainContext1, toColumns1, fromColumns1 )
10 , Table2( Columns2, ConstrainContext2, toColumns2, fromColumns2 )
15import Data.Kind ( Constraint, Type )
19import Rel8.Schema.Context ( Interpretation, Col )
20import Rel8.Schema.HTable ( HTable )
21import qualified Rel8.Schema.Kind as K
24type Table1 :: (Type -> Type) -> Constraint
26 type Columns1 f :: K.HTable -> K.HTable
27 type ConstrainContext1 f :: K.Context -> Constraint
28 type ConstrainContext1 _ = Interpretation
30 toColumns1 :: (ConstrainContext1 f context, HTable t)
31 => (a -> t (Col context))
33 -> Columns1 f t (Col context)
35 fromColumns1 :: (ConstrainContext1 f context, HTable t)
36 => (t (Col context) -> a)
37 -> Columns1 f t (Col context)
41type Table2 :: (Type -> Type -> Type) -> Constraint
43 type Columns2 p :: K.HTable -> K.HTable -> K.HTable
44 type ConstrainContext2 p :: K.Context -> Constraint
45 type ConstrainContext2 _ = Interpretation
47 toColumns2 :: (ConstrainContext2 p context, HTable t, HTable u)
48 => (a -> t (Col context))
49 -> (b -> u (Col context))
51 -> Columns2 p t u (Col context)
53 fromColumns2 :: (ConstrainContext2 p context, HTable t, HTable u)
54 => (t (Col context) -> a)
55 -> (u (Col context) -> b)
56 -> Columns2 p t u (Col context)
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list