cabal-version: 3.0 version: 2.0.0.0 x-revision: 1 name: xcodec build-type: Simple author: Zoey McBride maintainer: zoeymcbride@mailbox.org license: BSD-3-Clause license-file: LICENSE.txt extra-doc-files: README.md, CHANGELOG.md category: Numeric, Data, Serialization synopsis: Type-class for working with generically typed codecs. description: This module provides a generic interface for working with binary codecs. It provides a type-class for manipulating bit data and instances for the bytestring package types (ByteString, ShortByteString, and LazyByteString). tested-with: GHC == 9.6.7 source-repository head { type: git location: https://git.sr.ht/~z0/xcodec } -- | Sets flag for CI build toggle flag CI { Description: CI Build options Default: False Manual: True } common HaskellConfig { hs-source-dirs: xcodec default-extensions: StrictData default-language: GHC2021 } common Depends { build-depends: base >= 4.18 && < 5, array ^>= 0.5, bytestring >= 0.12 && < 0.13, containers >= 0.7 && < 8, text >=2.1 && < 2.2 } common BuildUser { import: Depends ghc-options: -Wall -Wextra -Wno-unused-top-binds } common BuildCI { import: Depends ghc-options: -Wall -Wextra -Werror -Wno-unused-top-binds } library { import: HaskellConfig if flag(CI) { import: BuildCI } else { import: BuildUser } exposed-modules: -- * Type-class for transcoding binary data. XCodec.Transcoder }