1{-# language DataKinds #-}
2{-# language StandaloneKindSignatures #-}
3{-# language TypeFamilyDependencies #-}
5module Rel8.Column.NonEmpty
11import Data.Kind ( Type )
12import Data.List.NonEmpty ( NonEmpty )
16import Rel8.Aggregate ( Aggregate )
17import Rel8.Expr ( Expr )
18import qualified Rel8.Schema.Kind as K
19import Rel8.Schema.Name ( Name )
20import Rel8.Schema.Result ( Result )
21import Rel8.Table.NonEmpty ( NonEmptyTable )
24-- | Nest a 'NonEmpty' list within a 'Rel8able'. @HNonEmpty f a@ will produce a
25-- 'NonEmptyTable' @a@ in the 'Expr' context, and a 'NonEmpty' @a@ in the
27type HNonEmpty :: K.Context -> Type -> Type
28type family HNonEmpty context = nonEmpty | nonEmpty -> context where
29 HNonEmpty Aggregate = NonEmptyTable Aggregate
30 HNonEmpty Expr = NonEmptyTable Expr
31 HNonEmpty Name = NonEmptyTable Name
32 HNonEmpty Result = NonEmpty
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