1{-# language DataKinds #-}
2{-# language FlexibleInstances #-}
3{-# language MultiParamTypeClasses #-}
4{-# language StandaloneKindSignatures #-}
5{-# language TypeFamilies #-}
6{-# language UndecidableInstances #-}
16import Data.Kind ( Type )
20import qualified Rel8.Schema.Kind as K
21import Rel8.Schema.HTable ( HTable )
22import Rel8.Schema.Result ( Result )
23import Rel8.Table ( Table(..) )
24import Rel8.Table.Recontextualize ( Recontextualize )
27type Cols :: K.Context -> K.HTable -> Type
28newtype Cols context columns = Cols (columns context)
31instance (HTable columns, context ~ context') =>
32 Table context' (Cols context columns)
34 type Columns (Cols context columns) = columns
35 type Context (Cols context columns) = context
36 type FromExprs (Cols context columns) = Cols Result columns
38 toColumns (Cols a) = a
45instance HTable t => Recontextualize from to (Cols from t) (Cols to t)
48fromCols :: Table context a => Cols context (Columns a) -> a
49fromCols (Cols a) = fromColumns a
52toCols :: Table context a => a -> Cols context (Columns a)
53toCols = Cols . toColumns
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