flat-0.4.2: flat.cabal
cabal-version: >=1.10
name: flat
version: 0.4.2
license: BSD3
license-file: LICENSE
copyright: Copyright: (c) 2016-2020 Pasqualino `Titto` Assini
maintainer: tittoassini@gmail.com
author: Pasqualino `Titto` Assini
tested-with:
GHC ==7.10.3 || ==8.0.2 || ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.3
homepage: http://quid2.org
synopsis: Principled and efficient bit-oriented binary serialization.
description:
Reference implementation of `flat`, a principled and efficient binary serialization format.
category: Data,Parsing,Serialization
build-type: Simple
extra-source-files:
stack.yaml
stack-6.35.yaml
stack-9.21.yaml
README.md
CHANGELOG
source-repository head
type: git
location: https://github.com/Quid2/flat
library
exposed-modules:
Data.ByteString.Convert
Data.FloatCast
Data.ZigZag
Flat
Flat.Bits
Flat.Class
Flat.Decoder
Flat.Decoder.Prim
Flat.Decoder.Strict
Flat.Decoder.Types
Flat.Encoder
Flat.Encoder.Prim
Flat.Encoder.Size
Flat.Encoder.Strict
Flat.Encoder.Types
Flat.Endian
Flat.Filler
Flat.Instances
Flat.Instances.Array
Flat.Instances.Base
Flat.Instances.ByteString
Flat.Instances.Containers
Flat.Instances.DList
Flat.Instances.Mono
Flat.Instances.Test
Flat.Instances.Text
Flat.Instances.Unordered
Flat.Instances.Util
Flat.Instances.Vector
Flat.Memory
Flat.Run
Flat.Tutorial
Flat.Types
hs-source-dirs: src
default-language: Haskell2010
other-extensions:
NoMonomorphismRestriction
DataKinds
DefaultSignatures
DeriveAnyClass
DeriveFoldable
DeriveFunctor
DeriveGeneric
DeriveTraversable
FlexibleContexts
FlexibleInstances
OverloadedStrings
PolyKinds
ScopedTypeVariables
TupleSections
TypeFamilies
TypeOperators
UndecidableInstances
ghc-options:
-Wall -O2 -funbox-strict-fields -fno-warn-orphans
-fno-warn-name-shadowing
-- -Werror
if impl(eta -any)
build-depends:
array ==0.5.2.0
, base
, bytestring ==0.10.8.2
, containers ==0.5.9.1
, deepseq ==1.4.3.0
, dlist
, filepath ==1.4.1.1
, ghc-prim ==0.4.0.0
, hashable >=1.2.4.0 && <=1.2.7.0
, HUnit ==1.6.0.0
, memory >=0.14.10 && <=0.14.14
, mono-traversable ==1.0.1
, pretty >=1.1.3.4 && <=1.1.3.6
, primitive >=0.6.1.0 && <=0.6.4.0
, QuickCheck ==2.10
, tasty ==1.1.0.3
, text ==1.2.3.0
, unordered-containers >=0.2.7.1 && <=0.2.9.0
, vector >=0.11.0.0 && <=0.12.0.1
else
build-depends:
array >=0.5.1.0
, base >=4.8 && <5
, bytestring >=0.10.6
, containers
, deepseq >=1.4
, dlist >=0.6
, ghc-prim
, hashable
, mono-traversable
, pretty >=1.1.2
, primitive
, semigroups
, text
, unordered-containers
, vector
-- , base >=4.8.2.0 && <5
-- if impl(ghc <8.2)
-- build-depends: semigroups >=0.8.4 && <0.17
test-suite spec
type: exitcode-stdio-1.0
main-is: Spec.hs
cpp-options: -DLIST_BIT -DTEST_DECBITS
if impl(ghc <8.6)
cpp-options: -DENUM_LARGE
-- -DETA_VERSION -Dghcjs_HOST_OS
-- ghc-options: -O1
if impl(ghc >8)
ghc-options:
-Wno-unused-top-binds -Wno-type-defaults -Wno-missing-signatures
hs-source-dirs: test
other-modules:
Test.Data
Test.Data.Arbitrary
Test.Data.Flat
Test.Data.Values
Test.Data2
Test.Data2.Flat
Test.E
Test.E.Arbitrary
Test.E.Flat
default-language: Haskell2010
build-depends:
base
, flat
, ghc-prim
, quickcheck-text
, tasty-hunit
, tasty-quickcheck
, text
if impl(ghc <8)
build-depends: semigroups
if impl(eta -any)
build-depends:
array ==0.5.2.0
, bytestring ==0.10.8.2
, containers ==0.5.9.1
, deepseq ==1.4.3.0
, filepath ==1.4.1.1
, HUnit ==1.6.0.0
, mono-traversable ==1.0.1
, QuickCheck ==2.10
, tasty ==1.1.0.3
, text ==1.2.3.0
else
build-depends:
array
, bytestring
, containers
, deepseq
, filepath
, mono-traversable
, QuickCheck
, tasty
, text
-- dynamic doctests and generation of static doctests
-- Usable only with recent versions of ghc (no ghcjs or eta)
-- test-suite doc
-- type: exitcode-stdio-1.0
-- main-is: DocSpec.hs
-- hs-source-dirs: test
-- default-language: Haskell2010
-- build-depends:
-- base
-- , directory
-- , doctest ==0.16.3.1
-- , filemanip >=0.3.6.3
-- , text
-- static doctests (faster, useful for test coverage and to test ghcjs and eta)
test-suite doc-static
type: exitcode-stdio-1.0
main-is: DocTests.hs
hs-source-dirs: test
other-modules:
DocTest
DocTest.Data.FloatCast
DocTest.Data.ZigZag
DocTest.Flat.Bits
DocTest.Flat.Decoder.Prim
DocTest.Flat.Endian
DocTest.Flat.Instances.Array
DocTest.Flat.Instances.Base
DocTest.Flat.Instances.ByteString
DocTest.Flat.Instances.Containers
DocTest.Flat.Instances.DList
DocTest.Flat.Instances.Mono
DocTest.Flat.Instances.Text
DocTest.Flat.Instances.Unordered
DocTest.Flat.Instances.Vector
DocTest.Flat.Tutorial
default-language: Haskell2010
build-depends:
array
, base
, bytestring
, containers
, dlist
, flat
, pretty
, quickcheck-instances
, tasty
, tasty-hunit
, tasty-quickcheck
, text
, unordered-containers
, vector
-- >=0.3.22
--, QuickCheck >= 2.13.2 && < 3
--, hashable >= 1.2.6.1 && < 1.4
if impl(ghc <8)
build-depends: semigroups
--ghc-options: -Wno-unused-top-binds -Wno-type-defaults
-- Additional development time tests and benchmarks
-- test-suite core
-- type: exitcode-stdio-1.0
-- main-is: Core.hs
-- hs-source-dirs: test
-- default-language: Haskell2010
-- ghc-options: -O2
-- other-modules:
-- other-modules:
-- Test.Data
-- Test.Data.Values
-- Test.Data2
-- Test.Data2.Flat
-- Test.E
-- Test.E.Flat
-- Test.Data.Flat
-- build-depends:
-- base
-- , benchpress
-- , bytestring
-- , containers
-- , deepseq
-- , flat
-- , text
-- ,inspection-testing
-- executable listTest
-- main-is: ListTest.hs
-- hs-source-dirs: test
-- default-language: Haskell2010
-- build-depends:
-- base
-- , flat
-- , text
-- , time
-- benchmark microBench
-- type: exitcode-stdio-1.0
-- main-is: Micro.hs
-- hs-source-dirs: benchmarks test
-- other-modules:
-- Common
-- Test.Data
-- Test.Data.Values
-- Test.Data2
-- Test.Data2.Flat
-- Test.E
-- Test.E.Flat
-- Test.Data.Flat
-- default-language: Haskell2010
-- build-depends:
-- base
-- , benchpress
-- , bytestring
-- , containers
-- , deepseq
-- , flat
-- , text
-- benchmark miniBench
-- type: exitcode-stdio-1.0
-- main-is: Mini.hs
-- hs-source-dirs: benchmarks test
-- other-modules:
-- Report
-- Test.Data
-- Test.Data.Values
-- Test.Data2
-- Test.Data2.Flat
-- Test.E
-- Test.E.Flat
-- Test.Data.Flat
-- default-language: Haskell2010
-- ghc-options: -O2
-- build-depends:
-- base
-- , flat
-- , text
-- if impl(eta -any)
-- build-depends:
-- bytestring ==0.10.8.2
-- , containers ==0.5.9.1
-- , criterion ==1.5.1.0
-- , deepseq ==1.4.3.0
-- , directory ==1.3.1.0
-- , filepath ==1.4.1.1
-- , mono-traversable ==1.0.1
-- , process ==1.6.2.0
-- , statistics ==0.14.0.2
-- , text ==1.2.3.0
-- , vector-algorithms ==0.7.0.1
-- else
-- build-depends:
-- bytestring
-- , containers
-- , criterion
-- , deepseq
-- , directory
-- , filepath
-- , mono-traversable
-- , process
-- , statistics
-- , text