cabal-version: 2.2
name:          generic-optics-lite
version:       0.1.1
synopsis:      Monomorphic field opics like with generic-lens
category:      Lens, Optics, Generics
description:
  Derivation of (monomorphic, i.e. not type-changing) lens, like generic-lens.
  .
  The package have minimal dependencies and minimal API:
  .
  @
  class HasField (name :: Symbol) r a | name r -> a
  field :: HasField name r a => Lens' r a
  @

homepage:      https://github.com/phadej/generic-lens-lite
license:       BSD-3-Clause
license-file:  LICENSE
author:        Edward Kmett, Csongor Kiss, Oleg Grenrus
maintainer:    Oleg Grenrus <oleg.grenrus@iki.fi>
copyright:     Copyright (c) 2019 Edward Kmett, 2020 Oleg Grenrus
build-type:    Simple
tested-with:
  GHC ==8.6.5
   || ==8.8.4
   || ==8.10.7
   || ==9.0.2
   || ==9.2.8
   || ==9.4.8
   || ==9.6.3
   || ==9.8.1

source-repository head
  type:     git
  location: https://github.com/phadej/generic-lens-lite
  subdir:   generic-optics-lite

library
  default-language: Haskell2010
  hs-source-dirs:   src
  ghc-options:      -Wall
  exposed-modules:  Data.Generics.Optics.Lite
  build-depends:
    , base               >=4.12.0.0 && <4.21
    , generic-lens-lite  >=0.1.1    && <0.1.2
    , optics-core        >=0.4.1.1  && <0.5

  if impl(ghc >=8.4)
    ghc-options:
      -Wincomplete-uni-patterns -Wincomplete-record-updates
      -Wredundant-constraints -Widentities -Wmissing-export-lists

test-suite example
  type:             exitcode-stdio-1.0
  default-language: Haskell2010
  hs-source-dirs:   example
  main-is:          Example.hs
  ghc-options:      -Wall
  build-depends:
    , base
    , generic-optics-lite
    , optics-core

--  build-depends:    dump-core
--  ghc-options:      -fplugin=DumpCore