1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155
|
name: vector-builder
version: 0.3.8.6
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 <>
> B.foldable 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:
NoImplicitPrelude
NoMonomorphismRestriction
Arrows
BangPatterns
ConstraintKinds
DataKinds
DefaultSignatures
DeriveDataTypeable
DeriveFoldable
DeriveFunctor
DeriveGeneric
DeriveTraversable
EmptyDataDecls
FlexibleContexts
FlexibleInstances
FunctionalDependencies
GADTs
GeneralizedNewtypeDeriving
LambdaCase
LiberalTypeSynonyms
MagicHash
MultiParamTypeClasses
MultiWayIf
OverloadedStrings
ParallelListComp
PatternGuards
QuasiQuotes
RankNTypes
RecordWildCards
ScopedTypeVariables
StandaloneDeriving
TemplateHaskell
TupleSections
TypeFamilies
TypeOperators
UnboxedTuples
default-language: Haskell2010
exposed-modules:
VectorBuilder.Alternative
VectorBuilder.Builder
VectorBuilder.MonadPlus
VectorBuilder.MVector
VectorBuilder.Vector
other-modules:
VectorBuilder.Core.Builder
VectorBuilder.Core.Update
VectorBuilder.Prelude
build-depends:
base >=4.10 && <5
, vector >=0.12 && <0.14
test-suite tests
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: Main.hs
other-modules: Main.Sample
default-extensions:
NoImplicitPrelude
NoMonomorphismRestriction
Arrows
BangPatterns
ConstraintKinds
DataKinds
DefaultSignatures
DeriveDataTypeable
DeriveFoldable
DeriveFunctor
DeriveGeneric
DeriveTraversable
EmptyDataDecls
FlexibleContexts
FlexibleInstances
FunctionalDependencies
GADTs
GeneralizedNewtypeDeriving
LambdaCase
LiberalTypeSynonyms
MagicHash
MultiParamTypeClasses
MultiWayIf
OverloadedStrings
ParallelListComp
PatternGuards
QuasiQuotes
RankNTypes
RecordWildCards
ScopedTypeVariables
StandaloneDeriving
TemplateHaskell
TupleSections
TypeFamilies
TypeOperators
UnboxedTuples
default-language: Haskell2010
build-depends:
attoparsec >=0.13 && <0.15
, quickcheck-instances >=0.3.11 && <0.4
, rerebase <2
, tasty >=0.12 && <2
, tasty-hunit >=0.9 && <0.11
, tasty-quickcheck >=0.9 && <0.12
, vector-builder
|