packages feed

bytesmith-0.3.11.1: bytesmith.cabal

cabal-version:   3.0
name:            bytesmith
version:         0.3.11.1
synopsis:        Nonresumable byte parser
description:
  Parse bytes as fast as possible. This is a nonresumable parser
  that aggresively uses `UnboxedSums` to avoid performing any
  allocations.

homepage:        https://github.com/byteverse/bytesmith
bug-reports:     https://github.com/byteverse/bytesmith/issues
license:         BSD-3-Clause
license-file:    LICENSE
author:          Andrew Martin
maintainer:      amartin@layer3com.com
copyright:       2019 Andrew Martin
category:        Data
extra-doc-files: CHANGELOG.md
tested-with:     GHC ==9.4.8 || ==9.6.3 || ==9.8.1

common build-settings
  default-language: Haskell2010
  ghc-options:      -Wall -Wunused-packages

library
  import:          build-settings
  exposed-modules:
    Data.Bytes.Parser
    Data.Bytes.Parser.Ascii
    Data.Bytes.Parser.Base128
    Data.Bytes.Parser.BigEndian
    Data.Bytes.Parser.Latin
    Data.Bytes.Parser.Leb128
    Data.Bytes.Parser.LittleEndian
    Data.Bytes.Parser.Rebindable
    Data.Bytes.Parser.Unsafe
    Data.Bytes.Parser.Utf8

  other-modules:
    Data.Bytes.Parser.Internal
    Data.Bytes.Parser.Types

  build-depends:
    , base                >=4.12    && <5
    , byteslice           >=0.2.6   && <0.3
    , bytestring          >=0.10.8  && <0.13
    , contiguous          >=0.6     && <0.7
    , natural-arithmetic  >=0.1.3
    , primitive           >=0.7     && <0.10
    , text-short          >=0.1.3   && <0.2
    , wide-word           >=0.1.0.9 && <0.2

  hs-source-dirs:  src
  ghc-options:     -O2

test-suite test
  import:         build-settings
  type:           exitcode-stdio-1.0
  hs-source-dirs: test
  main-is:        Main.hs
  build-depends:
    , base              >=4.12.0.0 && <5
    , byte-order
    , byteslice
    , bytesmith
    , primitive
    , tasty
    , tasty-hunit
    , tasty-quickcheck
    , text-short
    , wide-word

benchmark bench
  import:         build-settings
  type:           exitcode-stdio-1.0
  build-depends:
    , base
    , bytesmith
    , gauge
    , primitive

  ghc-options:    -O2
  hs-source-dirs: bench
  main-is:        Main.hs

source-repository head
  type:     git
  location: git://github.com/byteverse/bytesmith.git