HORIZON HASKELLDocslts/ghc-9.14.x45dd5372026-10-11Search names, modules, packages, or :: a typeCtrl K

GHC 9.14.1 · lts/ghc-9.14.x · 45dd537 · 2026-10-11

Modulegeneric-lens-lite-0.1.1Haskell2010

Data.Generics.Lens.Lite

Derive record field lenses generically.

  • 1 class
  • 1 value
valuefield :: (HasField name r a, Functor f) => (a -> f a) -> r -> f r
#

A lens that focuses on a field with a given name. Compatible with the lens package's Control.Lens.Lens type.

Note: the lens is simple, i.e. doesn't allow type-changing updates. This keeps the implementation small and quick.

You also may want to specify {-# OPTIONS_GHC -funfolding-keeness-factor=100 #-} (or some other arbitrarily large number) for GHC to inline more aggressively.

classclass HasField (name :: Symbol) r a | name r -> a where
#

Type-class restricting field usage.

Instances2HasField
  • HasFieldInternal name r a => HasField name r aDefined in generic-lens-lite-0.1.1 · Data.Generics.Lens.Lite
  • HasField name (Void1 a) aDefined in generic-lens-lite-0.1.1 · Data.Generics.Lens.Lite