rowrecord-0.1: rowrecord.cabal
name: rowrecord
version: 0.1
license: BSD3
license-file: LICENSE
synopsis: Build records from lists of strings, as from CSV files.
category: Data, Text
author: Keegan McAllister <mcallister.keegan@gmail.com>
maintainer: Keegan McAllister <mcallister.keegan@gmail.com>
build-type: Simple
cabal-version: >=1.2
description:
Given rows of @String@ data with column headings, this library will create
values of user-defined record types. Records can contain mandatory or
optional fields of any type, subject to a class constraint.
Heading names and and record construction code are derived using
Template Haskell.
.
One use case for this library is parsing records from a CSV file. A
parser from CSV to @[[String]]@ is not included, but there are several
suitable packages on Hackage.
.
The emphasis of this library is on simplicity of use rather than performance.
It is likely to be suitable for a hundred thousand rows, but not many
millions. A future version may support packed input formats like
@ByteString@ or @Text@. Suggestions and patches are welcome.
library
exposed-modules:
Text.RowRecord
, Text.RowRecord.TH
ghc-options: -Wall
build-depends:
base >= 3 && < 5
, template-haskell >= 2.4
, containers >= 0.3