pipes-key-value-csv-0.4.0.3: Streaming processing of CSV files preceded by key-value pairs.

Copyright(c) Marcin Mrotek 2015
LicenseBSD3
Maintainermarcin.jan.mrotek@gmail.com
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Pipes.KeyValueCsv.Names

Description

Default key name generation by printing the field label type names.

Synopsis

Documentation

names :: forall (rs :: [k]). (FieldAll rs Typeable, Record rs) => Rec (Const Text) rs Source #

type family FieldAll k (rs :: [k]) (c :: k -> Constraint) :: Constraint where ... #

Assert that all field labels in a given type list satisfy a given constraint.

Equations

FieldAll k ([] k) c = () 
FieldAll k ((:) k r rs) c = (c r, FieldAll k rs c) 

class Record k (rs :: [k]) #

Create a dummy record parametrized by Proxy. The class is named Record to signify that every possible type list is its instance.

Minimal complete definition

proxyRecord

Instances

Record k ([] k) 

Methods

proxyRecord :: Rec [k] (Proxy [k]) rs #

Record k rs => Record k ((:) k r rs) 

Methods

proxyRecord :: Rec ((k ': r) rs) (Proxy ((k ': r) rs)) rs #