This file is indexed.

/usr/share/doc/libghc-lens-doc/html/Control-Lens-Internal-FieldTH.html is in libghc-lens-doc 4.15.4-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

1
2
3
4
5
6
7
8
9
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Control.Lens.Internal.FieldTH</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script src="file:///usr/share/javascript/mathjax/MathJax.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Control-Lens-Internal-FieldTH.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Control-Lens-Internal-FieldTH.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">lens-4.15.4: Lenses, Folds and Traversals</p></div><div id="content"><div id="module-header"><table class="info"><tr><th valign="top">Copyright</th><td>(C) 2014-2016 Edward Kmett (C) 2014 Eric Mertens</td></tr><tr><th>License</th><td>BSD-style (see the file LICENSE)</td></tr><tr><th>Maintainer</th><td>Edward Kmett &lt;ekmett@gmail.com&gt;</td></tr><tr><th>Stability</th><td>experimental</td></tr><tr><th>Portability</th><td>non-portable</td></tr><tr><th>Safe Haskell</th><td>Trustworthy</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Control.Lens.Internal.FieldTH</p></div><div id="description"><p class="caption">Description</p><div class="doc empty">&nbsp;</div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">data</span> <a href="#t:LensRules">LensRules</a> = <a href="#v:LensRules">LensRules</a> {<ul class="subs"><li><a href="#v:_simpleLenses">_simpleLenses</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li><a href="#v:_generateSigs">_generateSigs</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li><a href="#v:_generateClasses">_generateClasses</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li><a href="#v:_allowIsos">_allowIsos</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li><a href="#v:_allowUpdates">_allowUpdates</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li><a href="#v:_lazyPatterns">_lazyPatterns</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li><a href="#v:_fieldToDef">_fieldToDef</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:FieldNamer">FieldNamer</a></li><li><a href="#v:_classyLenses">_classyLenses</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:ClassyNamer">ClassyNamer</a></li></ul>}</li><li class="src short"><span class="keyword">type</span> <a href="#t:FieldNamer">FieldNamer</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a> -&gt; [<a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a> -&gt; [<a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a>]</li><li class="src short"><span class="keyword">data</span> <a href="#t:DefName">DefName</a><ul class="subs"><li>= <a href="#v:TopName">TopName</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a></li><li>| <a href="#v:MethodName">MethodName</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a></li></ul></li><li class="src short"><span class="keyword">type</span> <a href="#t:ClassyNamer">ClassyNamer</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a>, <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a>)</li><li class="src short"><a href="#v:makeFieldOptics">makeFieldOptics</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:LensRules">LensRules</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Lib.html#t:DecsQ">DecsQ</a></li><li class="src short"><a href="#v:makeFieldOpticsForDec">makeFieldOpticsForDec</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:LensRules">LensRules</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Dec">Dec</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Lib.html#t:DecsQ">DecsQ</a></li><li class="src short"><a href="#v:makeFieldOpticsForDec-39-">makeFieldOpticsForDec'</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:LensRules">LensRules</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Dec">Dec</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:HasFieldClasses">HasFieldClasses</a> [<a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Dec">Dec</a>]</li><li class="src short"><span class="keyword">type</span> <a href="#t:HasFieldClasses">HasFieldClasses</a> = <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Lazy.html#t:StateT">StateT</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.7.1/Data-Set.html#t:Set">Set</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a>) <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Q">Q</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:LensRules" class="def">LensRules</a> <a href="src/Control-Lens-Internal-FieldTH.html#LensRules" class="link">Source</a> <a href="#t:LensRules" class="selflink">#</a></p><div class="doc"><p>Rules to construct lenses for data fields.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:LensRules" class="def">LensRules</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:_simpleLenses" class="def">_simpleLenses</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:_generateSigs" class="def">_generateSigs</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:_generateClasses" class="def">_generateClasses</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:_allowIsos" class="def">_allowIsos</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:_allowUpdates" class="def">_allowUpdates</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></dfn><div class="doc"><p>Allow Lens<em>Traversal (otherwise Getter</em>Fold)</p></div></li><li><dfn class="src"><a id="v:_lazyPatterns" class="def">_lazyPatterns</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:_fieldToDef" class="def">_fieldToDef</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:FieldNamer">FieldNamer</a></dfn><div class="doc"><p>Type Name -&gt; Field Names -&gt; Target Field Name -&gt; Definition Names</p></div></li><li><dfn class="src"><a id="v:_classyLenses" class="def">_classyLenses</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:ClassyNamer">ClassyNamer</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:FieldNamer" class="def">FieldNamer</a> <a href="src/Control-Lens-Internal-FieldTH.html#FieldNamer" class="link">Source</a> <a href="#t:FieldNamer" class="selflink">#</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&nbsp;= <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a></td><td class="doc"><p>Name of the data type that lenses are being generated for.</p></td></tr><tr><td class="src">-&gt; [<a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a>]</td><td class="doc"><p>Names of all fields (including the field being named) in the data type.</p></td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a></td><td class="doc"><p>Name of the field being named.</p></td></tr><tr><td class="src">-&gt; [<a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a>]</td><td class="doc"><p>Name(s) of the lens functions. If empty, no lens is created for that field.</p></td></tr></table></div><div class="doc"><p>The rule to create function names of lenses for data fields.</p><p>Although it's sometimes useful, you won't need the first two
 arguments most of the time.</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:DefName" class="def">DefName</a> <a href="src/Control-Lens-Internal-FieldTH.html#DefName" class="link">Source</a> <a href="#t:DefName" class="selflink">#</a></p><div class="doc"><p>Name to give to generated field optics.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:TopName" class="def">TopName</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a></td><td class="doc"><p>Simple top-level definiton name</p></td></tr><tr><td class="src"><a id="v:MethodName" class="def">MethodName</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a></td><td class="doc"><p>makeFields-style class name and method name</p></td></tr></table></div><div class="subs instances"><p id="control.i:DefName" class="caption collapser" onclick="toggleSection('i:DefName')">Instances</p><div id="section.i:DefName" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:DefName:Eq:1" class="instance expander" onclick="toggleSection('i:id:DefName:Eq:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a></span> <a href="src/Control-Lens-Internal-FieldTH.html#line-600" class="link">Source</a> <a href="#t:DefName" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:DefName:Eq:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:DefName:Ord:2" class="instance expander" onclick="toggleSection('i:id:DefName:Ord:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ord">Ord</a> <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a></span> <a href="src/Control-Lens-Internal-FieldTH.html#line-600" class="link">Source</a> <a href="#t:DefName" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:DefName:Ord:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:compare">compare</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ordering">Ordering</a> <a href="#v:compare" class="selflink">#</a></p><p class="src"><a href="#v:-60-">(&lt;)</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-60-" class="selflink">#</a></p><p class="src"><a href="#v:-60--61-">(&lt;=)</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-60--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62-">(&gt;)</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-62-" class="selflink">#</a></p><p class="src"><a href="#v:-62--61-">(&gt;=)</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-62--61-" class="selflink">#</a></p><p class="src"><a href="#v:max">max</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> <a href="#v:max" class="selflink">#</a></p><p class="src"><a href="#v:min">min</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> <a href="#v:min" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:DefName:Show:3" class="instance expander" onclick="toggleSection('i:id:DefName:Show:3')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a></span> <a href="src/Control-Lens-Internal-FieldTH.html#line-600" class="link">Source</a> <a href="#t:DefName" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:DefName:Show:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Control-Lens-Internal-FieldTH.html#t:DefName">DefName</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ClassyNamer" class="def">ClassyNamer</a> <a href="src/Control-Lens-Internal-FieldTH.html#ClassyNamer" class="link">Source</a> <a href="#t:ClassyNamer" class="selflink">#</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&nbsp;= <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a></td><td class="doc"><p>Name of the data type that lenses are being generated for.</p></td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a>, <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a>)</td><td class="doc"><p>Names of the class and the main method it generates, respectively.</p></td></tr></table></div><div class="doc"><p>The optional rule to create a class and method around a
 monomorphic data type. If this naming convention is provided, it
 generates a &quot;classy&quot; lens.</p></div></div><div class="top"><p class="src"><a id="v:makeFieldOptics" class="def">makeFieldOptics</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:LensRules">LensRules</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Lib.html#t:DecsQ">DecsQ</a> <a href="src/Control-Lens-Internal-FieldTH.html#makeFieldOptics" class="link">Source</a> <a href="#v:makeFieldOptics" class="selflink">#</a></p><div class="doc"><p>Compute the field optics for the type identified by the given type name.
 Lenses will be computed when possible, Traversals otherwise.</p></div></div><div class="top"><p class="src"><a id="v:makeFieldOpticsForDec" class="def">makeFieldOpticsForDec</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:LensRules">LensRules</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Dec">Dec</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Lib.html#t:DecsQ">DecsQ</a> <a href="src/Control-Lens-Internal-FieldTH.html#makeFieldOpticsForDec" class="link">Source</a> <a href="#v:makeFieldOpticsForDec" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:makeFieldOpticsForDec-39-" class="def">makeFieldOpticsForDec'</a> :: <a href="Control-Lens-Internal-FieldTH.html#t:LensRules">LensRules</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Dec">Dec</a> -&gt; <a href="Control-Lens-Internal-FieldTH.html#t:HasFieldClasses">HasFieldClasses</a> [<a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Dec">Dec</a>] <a href="src/Control-Lens-Internal-FieldTH.html#makeFieldOpticsForDec%27" class="link">Source</a> <a href="#v:makeFieldOpticsForDec-39-" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:HasFieldClasses" class="def">HasFieldClasses</a> = <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Lazy.html#t:StateT">StateT</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.7.1/Data-Set.html#t:Set">Set</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a>) <a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Q">Q</a> <a href="src/Control-Lens-Internal-FieldTH.html#HasFieldClasses" class="link">Source</a> <a href="#t:HasFieldClasses" class="selflink">#</a></p><div class="doc"><p>Tracks the field class <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/template-haskell-2.11.1.0/Language-Haskell-TH-Syntax.html#t:Name">Name</a></code>s that have been created so far. We consult
 these so that we may avoid creating duplicate classes.</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.3</p></div></body></html>