This file is indexed.

/usr/share/doc/libghc-lens-doc/html/Control-Lens-At.html is in libghc-lens-doc 4.13-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
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<!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.At</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Control-Lens-At.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Control-Lens-At.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.13: Lenses, Folds and Traversals</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Copyright</th><td>(C) 2012-15 Edward Kmett</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.At</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">At</a></li><li><a href="#g:2">Ixed</a></li><li><a href="#g:3">Contains</a></li></ul></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">class</span> <a href="Control-Lens-At.html#t:Ixed">Ixed</a> m =&gt; <a href="#t:At">At</a> m <span class="keyword">where</span><ul class="subs"><li><a href="#v:at">at</a> :: <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a> m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> m))</li></ul></li><li class="src short"><a href="#v:sans">sans</a> :: <a href="Control-Lens-At.html#t:At">At</a> m =&gt; <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; m -&gt; m</li><li class="src short"><a href="#v:iat">iat</a> :: <a href="Control-Lens-At.html#t:At">At</a> m =&gt; <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:IndexedLens-39-">IndexedLens'</a> (<a href="Control-Lens-At.html#t:Index">Index</a> m) m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> m))</li><li class="src short"><span class="keyword">type family</span> <a href="#t:Index">Index</a> s :: *</li><li class="src short"><span class="keyword">type family</span> <a href="#t:IxValue">IxValue</a> m :: *</li><li class="src short"><span class="keyword">class</span> <a href="#t:Ixed">Ixed</a> m <span class="keyword">where</span><ul class="subs"><li><a href="#v:ix">ix</a> :: <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a> m (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> m)</li></ul></li><li class="src short"><a href="#v:ixAt">ixAt</a> :: <a href="Control-Lens-At.html#t:At">At</a> m =&gt; <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a> m (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> m)</li><li class="src short"><a href="#v:iix">iix</a> :: <a href="Control-Lens-At.html#t:Ixed">Ixed</a> m =&gt; <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:IndexedTraversal-39-">IndexedTraversal'</a> (<a href="Control-Lens-At.html#t:Index">Index</a> m) m (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> m)</li><li class="src short"><span class="keyword">class</span> <a href="#t:Contains">Contains</a> m <span class="keyword">where</span><ul class="subs"><li><a href="#v:contains">contains</a> :: <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a> m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li></ul></li><li class="src short"><a href="#v:icontains">icontains</a> :: <a href="Control-Lens-At.html#t:Contains">Contains</a> m =&gt; <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:IndexedLens-39-">IndexedLens'</a> (<a href="Control-Lens-At.html#t:Index">Index</a> m) m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li></ul></div><div id="interface"><h1 id="g:1">At</h1><div class="top"><p class="src"><span class="keyword">class</span> <a href="Control-Lens-At.html#t:Ixed">Ixed</a> m =&gt; <a name="t:At" class="def">At</a> m <span class="keyword">where</span> <a href="src/Control-Lens-At.html#At" class="link">Source</a></p><div class="doc"><p><code><a href="Control-Lens-At.html#t:At">At</a></code> provides a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> that can be used to read,
 write or delete the value associated with a key in a <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a></code>-like
 container on an ad hoc basis.</p><p>An instance of <code><a href="Control-Lens-At.html#t:At">At</a></code> should satisfy:</p><pre><code><a href="Control-Lens-At.html#v:ix">ix</a></code> k &#8801; <code><a href="Control-Lens-At.html#v:at">at</a></code> k <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Function.html#v:.">.</a></code> <code><a href="Control-Lens-Traversal.html#v:traverse">traverse</a></code>
</pre></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:at" class="def">at</a> :: <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a> m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> m)) <a href="src/Control-Lens-At.html#at" class="link">Source</a></p><div class="doc"><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Map.fromList [(1,&quot;world&quot;)] ^.at 1
</code></strong>Just &quot;world&quot;
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>at 1 ?~ &quot;hello&quot; $ Map.empty
</code></strong>fromList [(1,&quot;hello&quot;)]
</pre><p><em>Note:</em> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a></code>-like containers form a reasonable instance, but not <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/array-0.5.1.0/Data-Array.html#t:Array">Array</a></code>-like ones, where
 you cannot satisfy the <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> laws.</p></div></div><div class="subs instances"><p id="control.i:At" class="caption collapser" onclick="toggleSection('i:At')">Instances</p><div id="section.i:At" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:At">At</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntSet.html#t:IntSet">IntSet</a></span> <a href="src/Control-Lens-At.html#line-478" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:At">At</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> a)</span> <a href="src/Control-Lens-At.html#line-453" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:At">At</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html#t:IntMap">IntMap</a> a)</span> <a href="src/Control-Lens-At.html#line-457" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> k =&gt; <a href="Control-Lens-At.html#t:At">At</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Set.html#t:Set">Set</a> k)</span> <a href="src/Control-Lens-At.html#line-485" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k, <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> k) =&gt; <a href="Control-Lens-At.html#t:At">At</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> k)</span> <a href="src/Control-Lens-At.html#line-492" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> k =&gt; <a href="Control-Lens-At.html#t:At">At</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a> k a)</span> <a href="src/Control-Lens-At.html#line-464" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k, <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> k) =&gt; <a href="Control-Lens-At.html#t:At">At</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k a)</span> <a href="src/Control-Lens-At.html#line-471" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:sans" class="def">sans</a> :: <a href="Control-Lens-At.html#t:At">At</a> m =&gt; <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; m -&gt; m <a href="src/Control-Lens-At.html#sans" class="link">Source</a></p><div class="doc"><p>Delete the value associated with a key in a <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a></code>-like container</p><pre><code><a href="Control-Lens-At.html#v:sans">sans</a></code> k = <code><a href="Control-Lens-At.html#v:at">at</a></code> k .~ Nothing
</pre></div></div><div class="top"><p class="src"><a name="v:iat" class="def">iat</a> :: <a href="Control-Lens-At.html#t:At">At</a> m =&gt; <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:IndexedLens-39-">IndexedLens'</a> (<a href="Control-Lens-At.html#t:Index">Index</a> m) m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> m)) <a href="src/Control-Lens-At.html#iat" class="link">Source</a></p><div class="doc"><p>An indexed version of <code><a href="Control-Lens-At.html#v:at">at</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Map.fromList [(1,&quot;world&quot;)] ^@. iat 1
</code></strong>(1,Just &quot;world&quot;)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>iat 1 %@~ (\i x -&gt; if odd i then Just &quot;hello&quot; else Nothing) $ Map.empty
</code></strong>fromList [(1,&quot;hello&quot;)]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>iat 2 %@~ (\i x -&gt; if odd i then Just &quot;hello&quot; else Nothing) $ Map.empty
</code></strong>fromList []
</pre></div></div><h1 id="g:2">Ixed</h1><div class="top"><p class="src"><span class="keyword">type family</span> <a name="t:Index" class="def">Index</a> s :: * <a href="src/Control-Lens-At.html#Index" class="link">Source</a></p><div class="subs instances"><p id="control.i:Index" class="caption collapser" onclick="toggleSection('i:Index')">Instances</p><div id="section.i:Index" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.6.0/Data-ByteString.html#t:ByteString">ByteString</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-115" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.6.0/Data-ByteString-Lazy.html#t:ByteString">ByteString</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int64">Int64</a></span> <a href="src/Control-Lens-At.html#line-116" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntSet.html#t:IntSet">IntSet</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-86" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text-Lazy.html#t:Text">Text</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int64">Int64</a></span> <a href="src/Control-Lens-At.html#line-114" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-113" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> [a] = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-89" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) = ()</span> <a href="src/Control-Lens-At.html#line-110" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Complex.html#t:Complex">Complex</a> a) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-109" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> a) = ()</span> <a href="src/Control-Lens-At.html#line-111" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html#t:IntMap">IntMap</a> a) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-100" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Set.html#t:Set">Set</a> a) = a</span> <a href="src/Control-Lens-At.html#line-87" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Tree.html#t:Tree">Tree</a> a) = [<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>]</span> <a href="src/Control-Lens-At.html#line-112" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Sequence.html#t:Seq">Seq</a> a) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-91" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/libghc-semigroups-doc/html/Data-List-NonEmpty.html#t:NonEmpty">NonEmpty</a> a) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-90" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> a) = a</span> <a href="src/Control-Lens-At.html#line-88" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector.html#t:Vector">Vector</a> a) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-105" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Unboxed.html#t:Vector">Vector</a> a) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-108" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Storable.html#t:Vector">Vector</a> a) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-107" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Primitive.html#t:Vector">Vector</a> a) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-106" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (e -&gt; a) = e</span> <a href="src/Control-Lens-At.html#line-85" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (a, b) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-92" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/array-0.5.1.0/Data-Array-Unboxed.html#t:UArray">UArray</a> i e) = i</span> <a href="src/Control-Lens-At.html#line-104" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/array-0.5.1.0/Data-Array.html#t:Array">Array</a> i e) = i</span> <a href="src/Control-Lens-At.html#line-103" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a> k a) = k</span> <a href="src/Control-Lens-At.html#line-101" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k a) = k</span> <a href="src/Control-Lens-At.html#line-102" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (a, b, c) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-93" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (a, b, c, d) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-94" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (a, b, c, d, e) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-95" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (a, b, c, d, e, f) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-96" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (a, b, c, d, e, f, g) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-97" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (a, b, c, d, e, f, g, h) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-98" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (a, b, c, d, e, f, g, h, i) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></span> <a href="src/Control-Lens-At.html#line-99" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type family</span> <a name="t:IxValue" class="def">IxValue</a> m :: * <a href="src/Control-Lens-At.html#IxValue" class="link">Source</a></p><div class="doc"><p>This provides a common notion of a value at an index that is shared by both <code><a href="Control-Lens-At.html#t:Ixed">Ixed</a></code> and <code><a href="Control-Lens-At.html#t:At">At</a></code>.</p></div><div class="subs instances"><p id="control.i:IxValue" class="caption collapser" onclick="toggleSection('i:IxValue')">Instances</p><div id="section.i:IxValue" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.6.0/Data-ByteString.html#t:ByteString">ByteString</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Word.html#t:Word8">Word8</a></span> <a href="src/Control-Lens-At.html#line-389" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.6.0/Data-ByteString-Lazy.html#t:ByteString">ByteString</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Word.html#t:Word8">Word8</a></span> <a href="src/Control-Lens-At.html#line-397" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntSet.html#t:IntSet">IntSet</a> = ()</span> <a href="src/Control-Lens-At.html#line-307" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text-Lazy.html#t:Text">Text</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Char.html#t:Char">Char</a></span> <a href="src/Control-Lens-At.html#line-381" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Char.html#t:Char">Char</a></span> <a href="src/Control-Lens-At.html#line-373" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> [a] = a</span> <a href="src/Control-Lens-At.html#line-241" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) = a</span> <a href="src/Control-Lens-At.html#line-258" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> a) = a</span> <a href="src/Control-Lens-At.html#line-235" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html#t:IntMap">IntMap</a> a) = a</span> <a href="src/Control-Lens-At.html#line-279" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Set.html#t:Set">Set</a> k) = ()</span> <a href="src/Control-Lens-At.html#line-300" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Tree.html#t:Tree">Tree</a> a) = a</span> <a href="src/Control-Lens-At.html#line-263" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Sequence.html#t:Seq">Seq</a> a) = a</span> <a href="src/Control-Lens-At.html#line-272" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/libghc-semigroups-doc/html/Data-List-NonEmpty.html#t:NonEmpty">NonEmpty</a> a) = a</span> <a href="src/Control-Lens-At.html#line-250" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> k) = ()</span> <a href="src/Control-Lens-At.html#line-314" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector.html#t:Vector">Vector</a> a) = a</span> <a href="src/Control-Lens-At.html#line-345" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Unboxed.html#t:Vector">Vector</a> a) = a</span> <a href="src/Control-Lens-At.html#line-366" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Storable.html#t:Vector">Vector</a> a) = a</span> <a href="src/Control-Lens-At.html#line-359" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Primitive.html#t:Vector">Vector</a> a) = a</span> <a href="src/Control-Lens-At.html#line-352" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (e -&gt; a) = a</span> <a href="src/Control-Lens-At.html#line-230" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (a, a2) = a</span> <a href="src/Control-Lens-At.html#line-501" class="link">Source</a></td><td class="doc"><pre><code><a href="Control-Lens-At.html#v:ix">ix</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></code> -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> (a,a) a</pre></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/array-0.5.1.0/Data-Array-Unboxed.html#t:UArray">UArray</a> i e) = e</span> <a href="src/Control-Lens-At.html#line-333" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/array-0.5.1.0/Data-Array.html#t:Array">Array</a> i e) = e</span> <a href="src/Control-Lens-At.html#line-321" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a> k a) = a</span> <a href="src/Control-Lens-At.html#line-286" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k a) = a</span> <a href="src/Control-Lens-At.html#line-293" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (a, a2, a3) = a</span> <a href="src/Control-Lens-At.html#line-506" class="link">Source</a></td><td class="doc"><pre><code><a href="Control-Lens-At.html#v:ix">ix</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></code> -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> (a,a,a) a</pre></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (a, a2, a3, a4) = a</span> <a href="src/Control-Lens-At.html#line-511" class="link">Source</a></td><td class="doc"><pre><code><a href="Control-Lens-At.html#v:ix">ix</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></code> -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> (a,a,a,a) a</pre></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (a, a2, a3, a4, a5) = a</span> <a href="src/Control-Lens-At.html#line-516" class="link">Source</a></td><td class="doc"><pre><code><a href="Control-Lens-At.html#v:ix">ix</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></code> -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> (a,a,a,a,a) a</pre></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (a, a2, a3, a4, a5, a6) = a</span> <a href="src/Control-Lens-At.html#line-521" class="link">Source</a></td><td class="doc"><pre><code><a href="Control-Lens-At.html#v:ix">ix</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></code> -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> (a,a,a,a,a,a) a</pre></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (a, a2, a3, a4, a5, a6, a7) = a</span> <a href="src/Control-Lens-At.html#line-526" class="link">Source</a></td><td class="doc"><pre><code><a href="Control-Lens-At.html#v:ix">ix</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></code> -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> (a,a,a,a,a,a,a) a</pre></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (a, a2, a3, a4, a5, a6, a7, a8) = a</span> <a href="src/Control-Lens-At.html#line-531" class="link">Source</a></td><td class="doc"><pre><code><a href="Control-Lens-At.html#v:ix">ix</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></code> -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> (a,a,a,a,a,a,a,a) a</pre></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (a, a2, a3, a4, a5, a6, a7, a8, a9) = a</span> <a href="src/Control-Lens-At.html#line-536" class="link">Source</a></td><td class="doc"><pre><code><a href="Control-Lens-At.html#v:ix">ix</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></code> -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> (a,a,a,a,a,a,a,a,a) a</pre></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:Ixed" class="def">Ixed</a> m <span class="keyword">where</span> <a href="src/Control-Lens-At.html#Ixed" class="link">Source</a></p><div class="doc"><p>This simple <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> lets you <code><a href="Control-Lens-Traversal.html#v:traverse">traverse</a></code> the value at a given
 key in a <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a></code> or element at an ordinal position in a list or <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Sequence.html#t:Seq">Seq</a></code>.</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:ix" class="def">ix</a> :: <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a> m (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> m) <a href="src/Control-Lens-At.html#ix" class="link">Source</a></p><div class="doc"><p>This simple <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> lets you <code><a href="Control-Lens-Traversal.html#v:traverse">traverse</a></code> the value at a given
 key in a <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a></code> or element at an ordinal position in a list or <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Sequence.html#t:Seq">Seq</a></code>.</p><p><em>NB:</em> Setting the value of this <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> will only set the value in
 <code><a href="Control-Lens-At.html#v:at">at</a></code> if it is already present.</p><p>If you want to be able to insert <em>missing</em> values, you want <code><a href="Control-Lens-At.html#v:at">at</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Seq.fromList [a,b,c,d] &amp; ix 2 %~ f
</code></strong>fromList [a,b,f c,d]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Seq.fromList [a,b,c,d] &amp; ix 2 .~ e
</code></strong>fromList [a,b,e,d]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Seq.fromList [a,b,c,d] ^? ix 2
</code></strong>Just c
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Seq.fromList [] ^? ix 2
</code></strong>Nothing
</pre></div></div><div class="subs instances"><p id="control.i:Ixed" class="caption collapser" onclick="toggleSection('i:Ixed')">Instances</p><div id="section.i:Ixed" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.6.0/Data-ByteString.html#t:ByteString">ByteString</a></span> <a href="src/Control-Lens-At.html#line-390" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.6.0/Data-ByteString-Lazy.html#t:ByteString">ByteString</a></span> <a href="src/Control-Lens-At.html#line-398" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntSet.html#t:IntSet">IntSet</a></span> <a href="src/Control-Lens-At.html#line-308" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text-Lazy.html#t:Text">Text</a></span> <a href="src/Control-Lens-At.html#line-382" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></span> <a href="src/Control-Lens-At.html#line-374" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> [a]</span> <a href="src/Control-Lens-At.html#line-242" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span> <a href="src/Control-Lens-At.html#line-259" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> a)</span> <a href="src/Control-Lens-At.html#line-236" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html#t:IntMap">IntMap</a> a)</span> <a href="src/Control-Lens-At.html#line-280" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> k =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Set.html#t:Set">Set</a> k)</span> <a href="src/Control-Lens-At.html#line-301" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Tree.html#t:Tree">Tree</a> a)</span> <a href="src/Control-Lens-At.html#line-264" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Sequence.html#t:Seq">Seq</a> a)</span> <a href="src/Control-Lens-At.html#line-273" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/libghc-semigroups-doc/html/Data-List-NonEmpty.html#t:NonEmpty">NonEmpty</a> a)</span> <a href="src/Control-Lens-At.html#line-251" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k, <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> k) =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> k)</span> <a href="src/Control-Lens-At.html#line-315" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector.html#t:Vector">Vector</a> a)</span> <a href="src/Control-Lens-At.html#line-346" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Unboxed.html#t:Unbox">Unbox</a> a =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Unboxed.html#t:Vector">Vector</a> a)</span> <a href="src/Control-Lens-At.html#line-367" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Foreign-Storable.html#t:Storable">Storable</a> a =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Storable.html#t:Vector">Vector</a> a)</span> <a href="src/Control-Lens-At.html#line-360" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Primitive-Mutable.html#t:Prim">Prim</a> a =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector-Primitive.html#t:Vector">Vector</a> a)</span> <a href="src/Control-Lens-At.html#line-353" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> e =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (e -&gt; a)</span> <a href="src/Control-Lens-At.html#line-231" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(~) * a a2 =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (a, a2)</span> <a href="src/Control-Lens-At.html#line-502" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/array-0.5.1.0/Data-Array-IArray.html#t:IArray">IArray</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/array-0.5.1.0/Data-Array-Unboxed.html#t:UArray">UArray</a> e, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ix.html#t:Ix">Ix</a> i) =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/array-0.5.1.0/Data-Array-Unboxed.html#t:UArray">UArray</a> i e)</span> <a href="src/Control-Lens-At.html#line-339" class="link">Source</a></td><td class="doc"><pre>arr <code><a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#v:-33-">!</a></code> i &#8801; arr <code><a href="Control-Lens-Getter.html#v:-94-.">^.</a></code> <code><a href="Control-Lens-At.html#v:ix">ix</a></code> i
arr <code><a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector.html#v:-47--47-">//</a></code> [(i,e)] &#8801; <code><a href="Control-Lens-At.html#v:ix">ix</a></code> i <code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code> e <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Function.html#v:-36-">$</a></code> arr
</pre></td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ix.html#t:Ix">Ix</a> i =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/array-0.5.1.0/Data-Array.html#t:Array">Array</a> i e)</span> <a href="src/Control-Lens-At.html#line-327" class="link">Source</a></td><td class="doc"><pre>arr <code><a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#v:-33-">!</a></code> i &#8801; arr <code><a href="Control-Lens-Getter.html#v:-94-.">^.</a></code> <code><a href="Control-Lens-At.html#v:ix">ix</a></code> i
arr <code><a href="file:///usr/share/doc/libghc-vector-doc/html/Data-Vector.html#v:-47--47-">//</a></code> [(i,e)] &#8801; <code><a href="Control-Lens-At.html#v:ix">ix</a></code> i <code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code> e <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Function.html#v:-36-">$</a></code> arr
</pre></td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> k =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a> k a)</span> <a href="src/Control-Lens-At.html#line-287" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k, <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> k) =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k a)</span> <a href="src/Control-Lens-At.html#line-294" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">((~) * a a2, (~) * a a3) =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (a, a2, a3)</span> <a href="src/Control-Lens-At.html#line-507" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">((~) * a a2, (~) * a a3, (~) * a a4) =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (a, a2, a3, a4)</span> <a href="src/Control-Lens-At.html#line-512" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">((~) * a a2, (~) * a a3, (~) * a a4, (~) * a a5) =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (a, a2, a3, a4, a5)</span> <a href="src/Control-Lens-At.html#line-517" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">((~) * a a2, (~) * a a3, (~) * a a4, (~) * a a5, (~) * a a6) =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (a, a2, a3, a4, a5, a6)</span> <a href="src/Control-Lens-At.html#line-522" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">((~) * a a2, (~) * a a3, (~) * a a4, (~) * a a5, (~) * a a6, (~) * a a7) =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (a, a2, a3, a4, a5, a6, a7)</span> <a href="src/Control-Lens-At.html#line-527" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">((~) * a a2, (~) * a a3, (~) * a a4, (~) * a a5, (~) * a a6, (~) * a a7, (~) * a a8) =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (a, a2, a3, a4, a5, a6, a7, a8)</span> <a href="src/Control-Lens-At.html#line-532" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">((~) * a a2, (~) * a a3, (~) * a a4, (~) * a a5, (~) * a a6, (~) * a a7, (~) * a a8, (~) * a a9) =&gt; <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (a, a2, a3, a4, a5, a6, a7, a8, a9)</span> <a href="src/Control-Lens-At.html#line-537" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:ixAt" class="def">ixAt</a> :: <a href="Control-Lens-At.html#t:At">At</a> m =&gt; <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a> m (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> m) <a href="src/Control-Lens-At.html#ixAt" class="link">Source</a></p><div class="doc"><p>A definition of <code><a href="Control-Lens-At.html#v:ix">ix</a></code> for types with an <code><a href="Control-Lens-At.html#t:At">At</a></code> instance. This is the default
 if you don't specify a definition for <code><a href="Control-Lens-At.html#v:ix">ix</a></code>.</p></div></div><div class="top"><p class="src"><a name="v:iix" class="def">iix</a> :: <a href="Control-Lens-At.html#t:Ixed">Ixed</a> m =&gt; <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:IndexedTraversal-39-">IndexedTraversal'</a> (<a href="Control-Lens-At.html#t:Index">Index</a> m) m (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> m) <a href="src/Control-Lens-At.html#iix" class="link">Source</a></p><div class="doc"><p>An indexed version of <code><a href="Control-Lens-At.html#v:ix">ix</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Seq.fromList [a,b,c,d] &amp; iix 2 %@~ f'
</code></strong>fromList [a,b,f' 2 c,d]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Seq.fromList [a,b,c,d] &amp; iix 2 .@~ h
</code></strong>fromList [a,b,h 2,d]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Seq.fromList [a,b,c,d] ^@? iix 2
</code></strong>Just (2,c)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Seq.fromList [] ^@? iix 2
</code></strong>Nothing
</pre></div></div><h1 id="g:3">Contains</h1><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:Contains" class="def">Contains</a> m <span class="keyword">where</span> <a href="src/Control-Lens-At.html#Contains" class="link">Source</a></p><div class="doc"><p>This class provides a simple <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> that lets you view (and modify)
 information about whether or not a container contains a given <code><a href="Control-Lens-At.html#t:Index">Index</a></code>.</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:contains" class="def">contains</a> :: <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a> m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Control-Lens-At.html#contains" class="link">Source</a></p><div class="doc"><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>IntSet.fromList [1,2,3,4] ^. contains 3
</code></strong>True
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>IntSet.fromList [1,2,3,4] ^. contains 5
</code></strong>False
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>IntSet.fromList [1,2,3,4] &amp; contains 3 .~ False
</code></strong>fromList [1,2,4]
</pre></div></div><div class="subs instances"><p id="control.i:Contains" class="caption collapser" onclick="toggleSection('i:Contains')">Instances</p><div id="section.i:Contains" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Lens-At.html#t:Contains">Contains</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntSet.html#t:IntSet">IntSet</a></span> <a href="src/Control-Lens-At.html#line-160" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> a =&gt; <a href="Control-Lens-At.html#t:Contains">Contains</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Set.html#t:Set">Set</a> a)</span> <a href="src/Control-Lens-At.html#line-165" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> a, <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> a) =&gt; <a href="Control-Lens-At.html#t:Contains">Contains</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> a)</span> <a href="src/Control-Lens-At.html#line-170" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:icontains" class="def">icontains</a> :: <a href="Control-Lens-At.html#t:Contains">Contains</a> m =&gt; <a href="Control-Lens-At.html#t:Index">Index</a> m -&gt; <a href="Control-Lens-Type.html#t:IndexedLens-39-">IndexedLens'</a> (<a href="Control-Lens-At.html#t:Index">Index</a> m) m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Control-Lens-At.html#icontains" class="link">Source</a></p><div class="doc"><p>An indexed version of <code><a href="Control-Lens-At.html#v:contains">contains</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>IntSet.fromList [1,2,3,4] ^@. icontains 3
</code></strong>(3,True)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>IntSet.fromList [1,2,3,4] ^@. icontains 5
</code></strong>(5,False)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>IntSet.fromList [1,2,3,4] &amp; icontains 3 %@~ \i x -&gt; if odd i then not x else x
</code></strong>fromList [1,2,4]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>IntSet.fromList [1,2,3,4] &amp; icontains 3 %@~ \i x -&gt; if even i then not x else x
</code></strong>fromList [1,2,3,4]
</pre></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.1</p></div></body></html>