optics-core-0.4.2: optics-core.cabal
cabal-version: 3.0
name: optics-core
version: 0.4.2
license: BSD-3-Clause
license-file: LICENSE
build-type: Simple
maintainer: optics@well-typed.com
author: Adam Gundry, Andres Löh, Andrzej Rybczak, Oleg Grenrus
tested-with: GHC == { 8.2.2, 8.4.4, 8.6.5, 8.8.4, 8.10.7, 9.0.2, 9.2.8
, 9.4.8, 9.6.7, 9.8.4, 9.10.3, 9.12.2, 9.14.1
}
GHCJS == { 8.4 }
synopsis: Optics as an abstract interface: core definitions
category: Data, Optics, Lenses
description:
This package makes it possible to define and use Lenses, Traversals, Prisms
and other optics, using an abstract interface.
.
This variant provides core definitions with a minimal dependency footprint.
See the @<https://hackage.haskell.org/package/optics optics>@ package (and its
dependencies) for documentation and the "batteries-included" variant.
extra-doc-files:
diagrams/*.png
CHANGELOG.md
bug-reports: https://github.com/well-typed/optics/issues
source-repository head
type: git
location: https://github.com/well-typed/optics.git
subdir: optics-core
flag explicit-generic-labels
default: False
manual: True
description: Require explicit GenericLabelOptics instances in order to use generics-based labels
common language
ghc-options: -Wall -Wcompat
if impl(ghc <9.4)
ghc-options: -Wno-unticked-promoted-constructors
default-language: Haskell2010
if impl(ghc < 8.6)
default-extensions: TypeInType
default-extensions: BangPatterns
ConstraintKinds
DataKinds
DefaultSignatures
DeriveFoldable
DeriveFunctor
DeriveGeneric
DeriveTraversable
EmptyCase
FlexibleContexts
FlexibleInstances
FunctionalDependencies
GADTs
GeneralizedNewtypeDeriving
InstanceSigs
KindSignatures
LambdaCase
OverloadedLabels
PatternSynonyms
PolyKinds
RankNTypes
ScopedTypeVariables
TupleSections
TypeApplications
TypeFamilies
TypeOperators
ViewPatterns
library
import: language
hs-source-dirs: src
if flag(explicit-generic-labels)
cpp-options: -DEXPLICIT_GENERIC_LABELS
build-depends: base >= 4.10 && <5
, array >= 0.5.2.0 && <0.6
, containers >= 0.5.10.2 && <0.9
, indexed-profunctors >= 0.1 && <0.2
, transformers >= 0.5 && <0.7
, indexed-traversable >= 0.1 && <0.2
exposed-modules: Optics.Core
-- main optic type
Optics.Optic
-- optic kinds
Optics.AffineFold
Optics.AffineTraversal
Optics.Fold
Optics.Getter
Optics.Iso
Optics.IxAffineFold
Optics.IxAffineTraversal
Optics.IxFold
Optics.IxGetter
Optics.IxLens
Optics.IxSetter
Optics.IxTraversal
Optics.Lens
Optics.Prism
Optics.ReversedLens
Optics.ReversedPrism
Optics.Review
Optics.Setter
Optics.Traversal
-- optic utilities
Optics.Arrow
Optics.At.Core
Optics.Coerce
Optics.Cons.Core
Optics.Each.Core
Optics.Empty.Core
Optics.Generic
Optics.Indexed.Core
Optics.Mapping
Optics.Label
Optics.Operators
Optics.Operators.Unsafe
Optics.Re
Optics.ReadOnly
Optics.Core.Extras
-- optics for data types
Data.Either.Optics
Data.IntMap.Optics
Data.IntSet.Optics
Data.List.Optics
Data.Map.Optics
Data.Maybe.Optics
Data.Sequence.Optics
Data.Set.Optics
Data.Tree.Optics
Data.Tuple.Optics
Data.Typeable.Optics
GHC.Generics.Optics
Numeric.Optics
-- internal modules
Optics.Internal.Bi
Optics.Internal.Fold
Optics.Internal.Generic
Optics.Internal.Generic.TypeLevel
Optics.Internal.Indexed
Optics.Internal.Indexed.Classes
Optics.Internal.IxFold
Optics.Internal.IxSetter
Optics.Internal.IxTraversal
Optics.Internal.Magic
Optics.Internal.Optic
Optics.Internal.Optic.Subtyping
Optics.Internal.Optic.TypeLevel
Optics.Internal.Optic.Types
Optics.Internal.Setter
Optics.Internal.Traversal
Optics.Internal.Utils
x-docspec-options: -XTypeApplications -XTypeOperators -XFlexibleContexts -XStandaloneDeriving -XDeriveGeneric -XDataKinds -XOverloadedLabels -XTupleSections