name:
vector-builder
version:
0.3.3
synopsis:
Vector builder
description:
An API for efficient and convenient construction of vectors.
It provides the composable `Builder` abstraction, which has instances of the `Monoid` and `Semigroup` classes.
.
[Usage]
.
First you use the `Builder` abstraction to specify the structure of the vector.
Then you execute the builder to actually produce the vector.
.
[Example]
.
The following code shows how you can efficiently concatenate different datastructures into a single immutable vector:
.
>
>import qualified Data.Vector as A
>import qualified VectorBuilder.Builder as B
>import qualified VectorBuilder.Vector as C
>
>
>myVector :: A.Vector a -> [a] -> a -> A.Vector a
>myVector vector list element =
> C.build builder
> where
> builder =
> B.vector vector <>
> foldMap B.singleton list <>
> B.singleton element
category:
Vector
homepage:
https://github.com/nikita-volkov/vector-builder
bug-reports:
https://github.com/nikita-volkov/vector-builder/issues
author:
Nikita Volkov <nikita.y.volkov@mail.ru>
maintainer:
Nikita Volkov <nikita.y.volkov@mail.ru>
copyright:
(c) 2016, Nikita Volkov
license:
MIT
license-file:
LICENSE
build-type:
Simple
cabal-version:
>=1.10
source-repository head
type:
git
location:
git://github.com/nikita-volkov/vector-builder.git
library
hs-source-dirs:
library
default-extensions:
Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples
default-language:
Haskell2010
other-modules:
VectorBuilder.Private.Prelude
VectorBuilder.Private.Update
VectorBuilder.Private.Builder
exposed-modules:
VectorBuilder.Builder
VectorBuilder.MVector
VectorBuilder.Vector
build-depends:
vector >= 0.11 && < 0.13,
semigroups >= 0.16 && < 0.20,
base-prelude < 2,
base >= 4.6 && < 5
test-suite tests
type:
exitcode-stdio-1.0
hs-source-dirs:
tests
main-is:
Main.hs
other-modules:
Main.Sample
default-extensions:
Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples
default-language:
Haskell2010
build-depends:
-- testing:
tasty == 0.11.*,
tasty-quickcheck == 0.8.*,
tasty-hunit == 0.9.*,
quickcheck-instances >= 0.3.11 && < 0.4,
--
vector-builder,
--
rebase
benchmark foldl-benchmark
type:
exitcode-stdio-1.0
hs-source-dirs:
foldl-benchmark
main-is:
Main.hs
ghc-options:
-O2
-threaded
"-with-rtsopts=-N"
-rtsopts
default-extensions:
Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples
default-language:
Haskell2010
build-depends:
vector-builder,
foldl == 1.2.*,
-- benchmarking:
criterion >= 1.1 && < 2,
-- general:
rerebase < 2
test-suite foldl-profiling
type:
exitcode-stdio-1.0
hs-source-dirs:
foldl-profiling
main-is:
Main.hs
ghc-options:
-O2
-threaded
"-with-rtsopts=-N"
-rtsopts
default-extensions:
Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples
default-language:
Haskell2010
build-depends:
vector-builder,
foldl == 1.2.*,
-- benchmarking:
criterion >= 1.1 && < 2,
-- general:
bug == 1.*,
rerebase < 2