-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | a tiny library for using shared lens fields
--
-- A simple single-module library for creating lens field typeclasses in
-- a way that allows them to be shared between modules. By default, lens'
-- makeFields creates a new class if it can't find a matching
-- one in scope. This means that if you try to makeFields
-- records in different modules without importing one module into the
-- other, you'll get conflicting class definitions rather than a single
-- lens which functions with both records.
@package shared-fields
@version 0.2.0.0
module Control.Lens.TH.SharedFields
-- | Generate classes for a field that will be shared between modules
-- without using makeFields (which would create an extra
-- instance at minimum)
generateField :: String -> Q [Dec]
-- | Generate classes for multiple fields. Use this if you want to define a
-- bunch of fields.
generateFields :: [String] -> Q [Dec]