packages feed

generic-case-0.1.0.0: generic-case.cabal

cabal-version:      3.0
name:               generic-case
version:            0.1.0.0
synopsis:           Generic case analysis
description:
  Generic case analysis in the vein of 'maybe', 'either' and 'bool',
  using [generics-sop](https://hackage.haskell.org/package/generics-sop).

  See the module documentation in "Generics.Case".

license:            BSD-3-Clause
license-file:       LICENSE
author:             Frederick Pringle
maintainer:         freddyjepringle@gmail.com
copyright:          Copyright(c) Frederick Pringle 2025
homepage:           https://github.com/fpringle/generic-case
category:           Generics
build-type:         Simple
extra-doc-files:    CHANGELOG.md
tested-with:
  GHC == 9.10.1
  GHC == 9.8.2
  GHC == 9.6.5
  GHC == 9.4.8
  GHC == 9.2.8
  GHC == 9.0.2
  GHC == 8.10.7
  GHC == 8.6.5

source-repository head
  type:     git
  location: https://github.com/fpringle/generic-case.git

common warnings
  ghc-options: -Wall

common deps
  build-depends:
    , base >= 4 && < 5
    , sop-core >= 0.4.0.1 && < 0.6
    , generics-sop >= 0.4 && < 0.6

common extensions
  default-extensions:
    FlexibleContexts
    FlexibleInstances
    LambdaCase
    ScopedTypeVariables
    TypeApplications
    DataKinds
    AllowAmbiguousTypes
    TypeFamilies
    TypeOperators
    UndecidableInstances

library
  import:
      warnings
    , deps
    , extensions
  exposed-modules:
      Generics.Case
      Generics.Chain
  hs-source-dirs:   src
  default-language: Haskell2010

test-suite generic-case-test
  import:
      warnings
    , deps
    , extensions
  default-language: Haskell2010
  type:             exitcode-stdio-1.0
  hs-source-dirs:   test
  main-is:          Spec.hs
  other-modules:
      Util
      Generics.Case.BoolSpec
      Generics.Case.MaybeSpec
      Generics.Case.EitherSpec
      Generics.Case.Custom.NoParamTypeSpec
      Generics.Case.Custom.OneParamTypeSpec
  build-tool-depends:
      hspec-discover:hspec-discover
  ghc-options:      -Wno-orphans
  build-depends:
    , generic-case
    , QuickCheck
    , hspec