This file is indexed.

/usr/share/doc/libghc-lens-doc/html/Control-Lens-Internal-Context.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
10
11
12
13
14
15
16
17
18
19
20
21
22
<!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.Context</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-Context.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Control-Lens-Internal-Context.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) 2012-2016 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>Safe</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Control.Lens.Internal.Context</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">class</span> <a href="#t:IndexedFunctor">IndexedFunctor</a> w <span class="keyword">where</span><ul class="subs"></ul></li><li class="src short"><span class="keyword">class</span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> w =&gt; <a href="#t:IndexedComonad">IndexedComonad</a> w <span class="keyword">where</span><ul class="subs"></ul></li><li class="src short"><span class="keyword">class</span> <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> w =&gt; <a href="#t:IndexedComonadStore">IndexedComonadStore</a> w <span class="keyword">where</span><ul class="subs"></ul></li><li class="src short"><span class="keyword">class</span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Rep.html#t:Corepresentable">Corepresentable</a> p =&gt; <a href="#t:Sellable">Sellable</a> p w | w -&gt; p <span class="keyword">where</span><ul class="subs"></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:Context">Context</a> a b t = <a href="#v:Context">Context</a> (b -&gt; t) a</li><li class="src short"><span class="keyword">type</span> <a href="#t:Context-39-">Context'</a> a = <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a a</li><li class="src short"><span class="keyword">newtype</span> <a href="#t:Pretext">Pretext</a> p a b t = <a href="#v:Pretext">Pretext</a> {<ul class="subs"><li><a href="#v:runPretext">runPretext</a> :: <span class="keyword">forall</span> f. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; p a (f b) -&gt; f t</li></ul>}</li><li class="src short"><span class="keyword">type</span> <a href="#t:Pretext-39-">Pretext'</a> p a = <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a a</li><li class="src short"><span class="keyword">newtype</span> <a href="#t:PretextT">PretextT</a> p g a b t = <a href="#v:PretextT">PretextT</a> {<ul class="subs"><li><a href="#v:runPretextT">runPretextT</a> :: <span class="keyword">forall</span> f. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; p a (f b) -&gt; f t</li></ul>}</li><li class="src short"><span class="keyword">type</span> <a href="#t:PretextT-39-">PretextT'</a> p g a = <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a a</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">class</span> <a id="t:IndexedFunctor" class="def">IndexedFunctor</a> w <span class="keyword">where</span> <a href="src/Control-Lens-Internal-Context.html#IndexedFunctor" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></p><div class="doc"><p>This is a Bob Atkey -style 2-argument indexed functor.</p><p>It exists as a superclass for <code><a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a></code> and expresses the functoriality
 of an <code><a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a></code> in its third argument.</p></div><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Control-Lens-Internal-Context.html#v:ifmap">ifmap</a></p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a id="v:ifmap" class="def">ifmap</a> :: (s -&gt; t) -&gt; w a b s -&gt; w a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div><div class="subs instances"><p id="control.i:IndexedFunctor" class="caption collapser" onclick="toggleSection('i:IndexedFunctor')">Instances</p><div id="section.i:IndexedFunctor" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedFunctor:IndexedFunctor:1" class="instance expander" onclick="toggleSection('i:ic:IndexedFunctor:IndexedFunctor:1')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> <a href="Control-Lens-Internal-Context.html#t:Context">Context</a></span> <a href="src/Control-Lens-Internal-Context.html#line-146" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedFunctor:IndexedFunctor:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b s -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedFunctor:IndexedFunctor:2" class="instance expander" onclick="toggleSection('i:ic:IndexedFunctor:IndexedFunctor:2')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> <a href="Control-Lens-Internal-Magma.html#t:Mafic">Mafic</a></span> <a href="src/Control-Lens-Internal-Context.html#line-206" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedFunctor:IndexedFunctor:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Magma.html#t:Mafic">Mafic</a> a b s -&gt; <a href="Control-Lens-Internal-Magma.html#t:Mafic">Mafic</a> a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedFunctor:IndexedFunctor:3" class="instance expander" onclick="toggleSection('i:ic:IndexedFunctor:IndexedFunctor:3')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-220" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedFunctor:IndexedFunctor:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b s -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedFunctor:IndexedFunctor:4" class="instance expander" onclick="toggleSection('i:ic:IndexedFunctor:IndexedFunctor:4')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-244" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedFunctor:IndexedFunctor:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p a b s -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedFunctor:IndexedFunctor:5" class="instance expander" onclick="toggleSection('i:ic:IndexedFunctor:IndexedFunctor:5')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-88" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedFunctor:IndexedFunctor:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p a b s -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedFunctor:IndexedFunctor:6" class="instance expander" onclick="toggleSection('i:ic:IndexedFunctor:IndexedFunctor:6')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> (<a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i)</span> <a href="src/Control-Lens-Internal-Context.html#line-138" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedFunctor:IndexedFunctor:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i a b s -&gt; <a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedFunctor:IndexedFunctor:7" class="instance expander" onclick="toggleSection('i:ic:IndexedFunctor:IndexedFunctor:7')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-300" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedFunctor:IndexedFunctor:7" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b s -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedFunctor:IndexedFunctor:8" class="instance expander" onclick="toggleSection('i:ic:IndexedFunctor:IndexedFunctor:8')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-301" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedFunctor:IndexedFunctor:8" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g a b s -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedFunctor:IndexedFunctor:9" class="instance expander" onclick="toggleSection('i:ic:IndexedFunctor:IndexedFunctor:9')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-151" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedFunctor:IndexedFunctor:9" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g a b s -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedFunctor:IndexedFunctor:10" class="instance expander" onclick="toggleSection('i:ic:IndexedFunctor:IndexedFunctor:10')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> (<a href="Control-Lens-Internal-Magma.html#t:TakingWhile">TakingWhile</a> p f)</span> <a href="src/Control-Lens-Internal-Context.html#line-259" class="link">Source</a> <a href="#t:IndexedFunctor" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedFunctor:IndexedFunctor:10" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Magma.html#t:TakingWhile">TakingWhile</a> p f a b s -&gt; <a href="Control-Lens-Internal-Magma.html#t:TakingWhile">TakingWhile</a> p f a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> w =&gt; <a id="t:IndexedComonad" class="def">IndexedComonad</a> w <span class="keyword">where</span> <a href="src/Control-Lens-Internal-Context.html#IndexedComonad" class="link">Source</a> <a href="#t:IndexedComonad" class="selflink">#</a></p><div class="doc"><p>This is a Bob Atkey -style 2-argument indexed comonad.</p><p>It exists as a superclass for <code><a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a></code> and expresses the functoriality
 of an <code><a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a></code> in its third argument.</p><p>The notion of indexed monads is covered in more depth in Bob Atkey's
 &quot;Parameterized Notions of Computation&quot; <a href="http://bentnib.org/paramnotions-jfp.pdf">http://bentnib.org/paramnotions-jfp.pdf</a>
 and that construction is dualized here.</p></div><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Control-Lens-Internal-Context.html#v:iextract">iextract</a></p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a id="v:iextract" class="def">iextract</a> :: w a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><div class="doc"><p>extract from an indexed comonadic value when the indices match.</p></div><p class="src"><a id="v:iduplicate" class="def">iduplicate</a> :: w a c t -&gt; w a b (w b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><div class="doc"><p>duplicate an indexed comonadic value splitting the index.</p></div><p class="src"><a id="v:iextend" class="def">iextend</a> :: (w b c t -&gt; r) -&gt; w a c t -&gt; w a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p><div class="doc"><p>extend a indexed comonadic computation splitting the index.</p></div></div><div class="subs instances"><p id="control.i:IndexedComonad" class="caption collapser" onclick="toggleSection('i:IndexedComonad')">Instances</p><div id="section.i:IndexedComonad" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonad:IndexedComonad:1" class="instance expander" onclick="toggleSection('i:ic:IndexedComonad:IndexedComonad:1')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> <a href="Control-Lens-Internal-Context.html#t:Context">Context</a></span> <a href="src/Control-Lens-Internal-Context.html#line-150" class="link">Source</a> <a href="#t:IndexedComonad" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonad:IndexedComonad:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b (<a href="Control-Lens-Internal-Context.html#t:Context">Context</a> b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Context.html#t:Context">Context</a> b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonad:IndexedComonad:2" class="instance expander" onclick="toggleSection('i:ic:IndexedComonad:IndexedComonad:2')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-228" class="link">Source</a> <a href="#t:IndexedComonad" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonad:IndexedComonad:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonad:IndexedComonad:3" class="instance expander" onclick="toggleSection('i:ic:IndexedComonad:IndexedComonad:3')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-248" class="link">Source</a> <a href="#t:IndexedComonad" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonad:IndexedComonad:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p a c t -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p a b (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p a c t -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonad:IndexedComonad:4" class="instance expander" onclick="toggleSection('i:ic:IndexedComonad:IndexedComonad:4')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-92" class="link">Source</a> <a href="#t:IndexedComonad" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonad:IndexedComonad:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p a c t -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p a b (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p a c t -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonad:IndexedComonad:5" class="instance expander" onclick="toggleSection('i:ic:IndexedComonad:IndexedComonad:5')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> (<a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i)</span> <a href="src/Control-Lens-Internal-Context.html#line-142" class="link">Source</a> <a href="#t:IndexedComonad" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonad:IndexedComonad:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i a c t -&gt; <a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i a b (<a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i a c t -&gt; <a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonad:IndexedComonad:6" class="instance expander" onclick="toggleSection('i:ic:IndexedComonad:IndexedComonad:6')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-308" class="link">Source</a> <a href="#t:IndexedComonad" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonad:IndexedComonad:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonad:IndexedComonad:7" class="instance expander" onclick="toggleSection('i:ic:IndexedComonad:IndexedComonad:7')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-305" class="link">Source</a> <a href="#t:IndexedComonad" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonad:IndexedComonad:7" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g a c t -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g a b (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g a c t -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonad:IndexedComonad:8" class="instance expander" onclick="toggleSection('i:ic:IndexedComonad:IndexedComonad:8')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-155" class="link">Source</a> <a href="#t:IndexedComonad" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonad:IndexedComonad:8" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g a c t -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g a b (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g a c t -&gt; <a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> w =&gt; <a id="t:IndexedComonadStore" class="def">IndexedComonadStore</a> w <span class="keyword">where</span> <a href="src/Control-Lens-Internal-Context.html#IndexedComonadStore" class="link">Source</a> <a href="#t:IndexedComonadStore" class="selflink">#</a></p><div class="doc"><p>This is an indexed analogue to <code><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#t:ComonadStore">ComonadStore</a></code> for when you are working with an
 <code><a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a></code>.</p></div><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Control-Lens-Internal-Context.html#v:ipos">ipos</a>, <a href="Control-Lens-Internal-Context.html#v:iseek">iseek</a>, <a href="Control-Lens-Internal-Context.html#v:iseeks">iseeks</a></p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a id="v:ipos" class="def">ipos</a> :: w a c t -&gt; a <a href="src/Control-Lens-Internal-Context.html#ipos" class="link">Source</a> <a href="#v:ipos" class="selflink">#</a></p><div class="doc"><p>This is the generalization of <code><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#v:pos">pos</a></code> to an indexed comonad store.</p></div><p class="src"><a id="v:ipeek" class="def">ipeek</a> :: c -&gt; w a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeek" class="link">Source</a> <a href="#v:ipeek" class="selflink">#</a></p><div class="doc"><p>This is the generalization of <code><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#v:peek">peek</a></code> to an indexed comonad store.</p></div><p class="src"><a id="v:ipeeks" class="def">ipeeks</a> :: (a -&gt; c) -&gt; w a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeeks" class="link">Source</a> <a href="#v:ipeeks" class="selflink">#</a></p><div class="doc"><p>This is the generalization of <code><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#v:peeks">peeks</a></code> to an indexed comonad store.</p></div><p class="src"><a id="v:iseek" class="def">iseek</a> :: b -&gt; w a c t -&gt; w b c t <a href="src/Control-Lens-Internal-Context.html#iseek" class="link">Source</a> <a href="#v:iseek" class="selflink">#</a></p><div class="doc"><p>This is the generalization of <code><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#v:seek">seek</a></code> to an indexed comonad store.</p></div><p class="src"><a id="v:iseeks" class="def">iseeks</a> :: (a -&gt; b) -&gt; w a c t -&gt; w b c t <a href="src/Control-Lens-Internal-Context.html#iseeks" class="link">Source</a> <a href="#v:iseeks" class="selflink">#</a></p><div class="doc"><p>This is the generalization of <code><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#v:seeks">seeks</a></code> to an indexed comonad store.</p></div><p class="src"><a id="v:iexperiment" class="def">iexperiment</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; (b -&gt; f c) -&gt; w b c t -&gt; f t <a href="src/Control-Lens-Internal-Context.html#iexperiment" class="link">Source</a> <a href="#v:iexperiment" class="selflink">#</a></p><div class="doc"><p>This is the generalization of <code><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#v:experiment">experiment</a></code> to an indexed comonad store.</p></div><p class="src"><a id="v:context" class="def">context</a> :: w a b t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t <a href="src/Control-Lens-Internal-Context.html#context" class="link">Source</a> <a href="#v:context" class="selflink">#</a></p><div class="doc"><p>We can always forget the rest of the structure of <code>w</code> and obtain a simpler
 indexed comonad store model called <code><a href="Control-Lens-Internal-Context.html#t:Context">Context</a></code>.</p></div></div><div class="subs instances"><p id="control.i:IndexedComonadStore" class="caption collapser" onclick="toggleSection('i:IndexedComonadStore')">Instances</p><div id="section.i:IndexedComonadStore" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonadStore:IndexedComonadStore:1" class="instance expander" onclick="toggleSection('i:ic:IndexedComonadStore:IndexedComonadStore:1')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedComonadStore">IndexedComonadStore</a> <a href="Control-Lens-Internal-Context.html#t:Context">Context</a></span> <a href="src/Control-Lens-Internal-Context.html#line-158" class="link">Source</a> <a href="#t:IndexedComonadStore" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonadStore:IndexedComonadStore:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ipos">ipos</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; a <a href="src/Control-Lens-Internal-Context.html#ipos" class="link">Source</a> <a href="#v:ipos" class="selflink">#</a></p><p class="src"><a href="#v:ipeek">ipeek</a> :: c -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeek" class="link">Source</a> <a href="#v:ipeek" class="selflink">#</a></p><p class="src"><a href="#v:ipeeks">ipeeks</a> :: (a -&gt; c) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeeks" class="link">Source</a> <a href="#v:ipeeks" class="selflink">#</a></p><p class="src"><a href="#v:iseek">iseek</a> :: b -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> b c t <a href="src/Control-Lens-Internal-Context.html#iseek" class="link">Source</a> <a href="#v:iseek" class="selflink">#</a></p><p class="src"><a href="#v:iseeks">iseeks</a> :: (a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> b c t <a href="src/Control-Lens-Internal-Context.html#iseeks" class="link">Source</a> <a href="#v:iseeks" class="selflink">#</a></p><p class="src"><a href="#v:iexperiment">iexperiment</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; (b -&gt; f c) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> b c t -&gt; f t <a href="src/Control-Lens-Internal-Context.html#iexperiment" class="link">Source</a> <a href="#v:iexperiment" class="selflink">#</a></p><p class="src"><a href="#v:context">context</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t <a href="src/Control-Lens-Internal-Context.html#context" class="link">Source</a> <a href="#v:context" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonadStore:IndexedComonadStore:2" class="instance expander" onclick="toggleSection('i:ic:IndexedComonadStore:IndexedComonadStore:2')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonadStore">IndexedComonadStore</a> (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-240" class="link">Source</a> <a href="#t:IndexedComonadStore" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonadStore:IndexedComonadStore:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ipos">ipos</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; a <a href="src/Control-Lens-Internal-Context.html#ipos" class="link">Source</a> <a href="#v:ipos" class="selflink">#</a></p><p class="src"><a href="#v:ipeek">ipeek</a> :: c -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeek" class="link">Source</a> <a href="#v:ipeek" class="selflink">#</a></p><p class="src"><a href="#v:ipeeks">ipeeks</a> :: (a -&gt; c) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeeks" class="link">Source</a> <a href="#v:ipeeks" class="selflink">#</a></p><p class="src"><a href="#v:iseek">iseek</a> :: b -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p b c t <a href="src/Control-Lens-Internal-Context.html#iseek" class="link">Source</a> <a href="#v:iseek" class="selflink">#</a></p><p class="src"><a href="#v:iseeks">iseeks</a> :: (a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p b c t <a href="src/Control-Lens-Internal-Context.html#iseeks" class="link">Source</a> <a href="#v:iseeks" class="selflink">#</a></p><p class="src"><a href="#v:iexperiment">iexperiment</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; (b -&gt; f c) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p b c t -&gt; f t <a href="src/Control-Lens-Internal-Context.html#iexperiment" class="link">Source</a> <a href="#v:iexperiment" class="selflink">#</a></p><p class="src"><a href="#v:context">context</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t <a href="src/Control-Lens-Internal-Context.html#context" class="link">Source</a> <a href="#v:context" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:IndexedComonadStore:IndexedComonadStore:3" class="instance expander" onclick="toggleSection('i:ic:IndexedComonadStore:IndexedComonadStore:3')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonadStore">IndexedComonadStore</a> (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-320" class="link">Source</a> <a href="#t:IndexedComonadStore" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:IndexedComonadStore:IndexedComonadStore:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ipos">ipos</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; a <a href="src/Control-Lens-Internal-Context.html#ipos" class="link">Source</a> <a href="#v:ipos" class="selflink">#</a></p><p class="src"><a href="#v:ipeek">ipeek</a> :: c -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeek" class="link">Source</a> <a href="#v:ipeek" class="selflink">#</a></p><p class="src"><a href="#v:ipeeks">ipeeks</a> :: (a -&gt; c) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeeks" class="link">Source</a> <a href="#v:ipeeks" class="selflink">#</a></p><p class="src"><a href="#v:iseek">iseek</a> :: b -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g b c t <a href="src/Control-Lens-Internal-Context.html#iseek" class="link">Source</a> <a href="#v:iseek" class="selflink">#</a></p><p class="src"><a href="#v:iseeks">iseeks</a> :: (a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g b c t <a href="src/Control-Lens-Internal-Context.html#iseeks" class="link">Source</a> <a href="#v:iseeks" class="selflink">#</a></p><p class="src"><a href="#v:iexperiment">iexperiment</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; (b -&gt; f c) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g b c t -&gt; f t <a href="src/Control-Lens-Internal-Context.html#iexperiment" class="link">Source</a> <a href="#v:iexperiment" class="selflink">#</a></p><p class="src"><a href="#v:context">context</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t <a href="src/Control-Lens-Internal-Context.html#context" class="link">Source</a> <a href="#v:context" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Rep.html#t:Corepresentable">Corepresentable</a> p =&gt; <a id="t:Sellable" class="def">Sellable</a> p w | w -&gt; p <span class="keyword">where</span> <a href="src/Control-Lens-Internal-Context.html#Sellable" class="link">Source</a> <a href="#t:Sellable" class="selflink">#</a></p><div class="doc"><p>This is used internally to construct a <code><a href="Control-Lens-Internal-Bazaar.html#v:Bazaar">Bazaar</a></code>, <code><a href="Control-Lens-Internal-Context.html#t:Context">Context</a></code> or <code><a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a></code>
 from a singleton value.</p></div><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Control-Lens-Internal-Context.html#v:sell">sell</a></p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a id="v:sell" class="def">sell</a> :: p a (w a b b) <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div><div class="subs instances"><p id="control.i:Sellable" class="caption collapser" onclick="toggleSection('i:Sellable')">Instances</p><div id="section.i:Sellable" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Sellable:Sellable:1" class="instance expander" onclick="toggleSection('i:ic:Sellable:Sellable:1')"></span> <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> (-&gt;) <a href="Control-Lens-Internal-Context.html#t:Context">Context</a></span> <a href="src/Control-Lens-Internal-Context.html#line-200" class="link">Source</a> <a href="#t:Sellable" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Sellable:Sellable:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b b <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Sellable:Sellable:2" class="instance expander" onclick="toggleSection('i:ic:Sellable:Sellable:2')"></span> <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> (-&gt;) <a href="Control-Lens-Internal-Magma.html#t:Mafic">Mafic</a></span> <a href="src/Control-Lens-Internal-Context.html#line-193" class="link">Source</a> <a href="#t:Sellable" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Sellable:Sellable:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: a -&gt; <a href="Control-Lens-Internal-Magma.html#t:Mafic">Mafic</a> a b b <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Sellable:Sellable:3" class="instance expander" onclick="toggleSection('i:ic:Sellable:Sellable:3')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Rep.html#t:Corepresentable">Corepresentable</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> p (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-270" class="link">Source</a> <a href="#t:Sellable" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Sellable:Sellable:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: p a (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b b) <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Sellable:Sellable:4" class="instance expander" onclick="toggleSection('i:ic:Sellable:Sellable:4')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Rep.html#t:Corepresentable">Corepresentable</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> p (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-254" class="link">Source</a> <a href="#t:Sellable" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Sellable:Sellable:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: p a (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar1">Bazaar1</a> p a b b) <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Sellable:Sellable:5" class="instance expander" onclick="toggleSection('i:ic:Sellable:Sellable:5')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Rep.html#t:Corepresentable">Corepresentable</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> p (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-98" class="link">Source</a> <a href="#t:Sellable" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Sellable:Sellable:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: p a (<a href="Control-Lens-Internal-Bazaar.html#t:Bazaar">Bazaar</a> p a b b) <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Sellable:Sellable:6" class="instance expander" onclick="toggleSection('i:ic:Sellable:Sellable:6')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Rep.html#t:Corepresentable">Corepresentable</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> p (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-350" class="link">Source</a> <a href="#t:Sellable" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Sellable:Sellable:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: p a (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b b) <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Sellable:Sellable:7" class="instance expander" onclick="toggleSection('i:ic:Sellable:Sellable:7')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Rep.html#t:Corepresentable">Corepresentable</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> p (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-311" class="link">Source</a> <a href="#t:Sellable" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Sellable:Sellable:7" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: p a (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT1">BazaarT1</a> p g a b b) <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Sellable:Sellable:8" class="instance expander" onclick="toggleSection('i:ic:Sellable:Sellable:8')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Rep.html#t:Corepresentable">Corepresentable</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> p (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-161" class="link">Source</a> <a href="#t:Sellable" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Sellable:Sellable:8" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: p a (<a href="Control-Lens-Internal-Bazaar.html#t:BazaarT">BazaarT</a> p g a b b) <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Sellable:Sellable:9" class="instance expander" onclick="toggleSection('i:ic:Sellable:Sellable:9')"></span> <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i) (<a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i)</span> <a href="src/Control-Lens-Internal-Context.html#line-128" class="link">Source</a> <a href="#t:Sellable" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Sellable:Sellable:9" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: <a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i a (<a href="Control-Lens-Internal-Magma.html#t:Molten">Molten</a> i a b b) <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Context" class="def">Context</a> a b t <a href="src/Control-Lens-Internal-Context.html#Context" class="link">Source</a> <a href="#t:Context" class="selflink">#</a></p><div class="doc"><p>The indexed store can be used to characterize a <code><a href="Control-Lens-Lens.html#v:Lens">Lens</a></code>
 and is used by <code><a href="Control-Lens-Lens.html#v:cloneLens">cloneLens</a></code>.</p><p><code><code><a href="Control-Lens-Internal-Context.html#t:Context">Context</a></code> a b t</code> is isomorphic to
 <code>newtype <code><a href="Control-Lens-Internal-Context.html#t:Context">Context</a></code> a b t = <code><a href="Control-Lens-Internal-Context.html#t:Context">Context</a></code> { runContext :: forall f. <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a></code> f =&gt; (a -&gt; f b) -&gt; f t }</code>,
 and to <code>exists s. (s, <code><a href="Control-Lens-Lens.html#v:Lens">Lens</a></code> s t a b)</code>.</p><p>A <code><a href="Control-Lens-Internal-Context.html#t:Context">Context</a></code> is like a <code><a href="Control-Lens-Lens.html#v:Lens">Lens</a></code> that has already been applied to a some structure.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Context" class="def">Context</a> (b -&gt; t) a</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:Context" class="caption collapser" onclick="toggleSection('i:Context')">Instances</p><div id="section.i:Context" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Context:IndexedComonadStore:1" class="instance expander" onclick="toggleSection('i:id:Context:IndexedComonadStore:1')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedComonadStore">IndexedComonadStore</a> <a href="Control-Lens-Internal-Context.html#t:Context">Context</a></span> <a href="src/Control-Lens-Internal-Context.html#line-158" class="link">Source</a> <a href="#t:Context" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Context:IndexedComonadStore:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ipos">ipos</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; a <a href="src/Control-Lens-Internal-Context.html#ipos" class="link">Source</a> <a href="#v:ipos" class="selflink">#</a></p><p class="src"><a href="#v:ipeek">ipeek</a> :: c -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeek" class="link">Source</a> <a href="#v:ipeek" class="selflink">#</a></p><p class="src"><a href="#v:ipeeks">ipeeks</a> :: (a -&gt; c) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeeks" class="link">Source</a> <a href="#v:ipeeks" class="selflink">#</a></p><p class="src"><a href="#v:iseek">iseek</a> :: b -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> b c t <a href="src/Control-Lens-Internal-Context.html#iseek" class="link">Source</a> <a href="#v:iseek" class="selflink">#</a></p><p class="src"><a href="#v:iseeks">iseeks</a> :: (a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> b c t <a href="src/Control-Lens-Internal-Context.html#iseeks" class="link">Source</a> <a href="#v:iseeks" class="selflink">#</a></p><p class="src"><a href="#v:iexperiment">iexperiment</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; (b -&gt; f c) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> b c t -&gt; f t <a href="src/Control-Lens-Internal-Context.html#iexperiment" class="link">Source</a> <a href="#v:iexperiment" class="selflink">#</a></p><p class="src"><a href="#v:context">context</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t <a href="src/Control-Lens-Internal-Context.html#context" class="link">Source</a> <a href="#v:context" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Context:IndexedComonad:2" class="instance expander" onclick="toggleSection('i:id:Context:IndexedComonad:2')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> <a href="Control-Lens-Internal-Context.html#t:Context">Context</a></span> <a href="src/Control-Lens-Internal-Context.html#line-150" class="link">Source</a> <a href="#t:Context" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Context:IndexedComonad:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b (<a href="Control-Lens-Internal-Context.html#t:Context">Context</a> b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Context.html#t:Context">Context</a> b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Context:IndexedFunctor:3" class="instance expander" onclick="toggleSection('i:id:Context:IndexedFunctor:3')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> <a href="Control-Lens-Internal-Context.html#t:Context">Context</a></span> <a href="src/Control-Lens-Internal-Context.html#line-146" class="link">Source</a> <a href="#t:Context" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Context:IndexedFunctor:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b s -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Context:Sellable:4" class="instance expander" onclick="toggleSection('i:id:Context:Sellable:4')"></span> <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> (-&gt;) <a href="Control-Lens-Internal-Context.html#t:Context">Context</a></span> <a href="src/Control-Lens-Internal-Context.html#line-200" class="link">Source</a> <a href="#t:Context" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Context:Sellable:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b b <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Context:ComonadStore:5" class="instance expander" onclick="toggleSection('i:id:Context:ComonadStore:5')"></span> (~) <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> a b =&gt; <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#t:ComonadStore">ComonadStore</a> a (<a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b)</span> <a href="src/Control-Lens-Internal-Context.html#line-186" class="link">Source</a> <a href="#t:Context" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Context:ComonadStore:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:pos">pos</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; a <a href="#v:pos" class="selflink">#</a></p><p class="src"><a href="#v:peek">peek</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; a <a href="#v:peek" class="selflink">#</a></p><p class="src"><a href="#v:peeks">peeks</a> :: (a -&gt; a) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; a <a href="#v:peeks" class="selflink">#</a></p><p class="src"><a href="#v:seek">seek</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a <a href="#v:seek" class="selflink">#</a></p><p class="src"><a href="#v:seeks">seeks</a> :: (a -&gt; a) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a <a href="#v:seeks" class="selflink">#</a></p><p class="src"><a href="#v:experiment">experiment</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; (a -&gt; f a) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; f a <a href="#v:experiment" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Context:Functor:6" class="instance expander" onclick="toggleSection('i:id:Context:Functor:6')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> (<a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b)</span> <a href="src/Control-Lens-Internal-Context.html#line-174" class="link">Source</a> <a href="#t:Context" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Context:Functor:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fmap">fmap</a> :: (a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b b <a href="#v:fmap" class="selflink">#</a></p><p class="src"><a href="#v:-60--36-">(&lt;$)</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b b -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a <a href="#v:-60--36-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Context:Comonad:7" class="instance expander" onclick="toggleSection('i:id:Context:Comonad:7')"></span> (~) <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> a b =&gt; <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> (<a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b)</span> <a href="src/Control-Lens-Internal-Context.html#line-178" class="link">Source</a> <a href="#t:Context" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Context:Comonad:7" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:extract">extract</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; a <a href="#v:extract" class="selflink">#</a></p><p class="src"><a href="#v:duplicate">duplicate</a> :: <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b (<a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a) <a href="#v:duplicate" class="selflink">#</a></p><p class="src"><a href="#v:extend">extend</a> :: (<a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b b <a href="#v:extend" 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:Context-39-" class="def">Context'</a> a = <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a a <a href="src/Control-Lens-Internal-Context.html#Context%27" class="link">Source</a> <a href="#t:Context-39-" class="selflink">#</a></p><div class="doc"><pre>type <code><a href="Control-Lens-Internal-Context.html#t:Context-39-">Context'</a></code> a s = <code><a href="Control-Lens-Internal-Context.html#t:Context">Context</a></code> a a s</pre></div></div><div class="top"><p class="src"><span class="keyword">newtype</span> <a id="t:Pretext" class="def">Pretext</a> p a b t <a href="src/Control-Lens-Internal-Context.html#Pretext" class="link">Source</a> <a href="#t:Pretext" class="selflink">#</a></p><div class="doc"><p>This is a generalized form of <code><a href="Control-Lens-Internal-Context.html#t:Context">Context</a></code> that can be repeatedly cloned with less
 impact on its performance, and which permits the use of an arbitrary <code><a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a></code>
 <code><a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a></code></p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Pretext" class="def">Pretext</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:runPretext" class="def">runPretext</a> :: <span class="keyword">forall</span> f. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; p a (f b) -&gt; f t</dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><p id="control.i:Pretext" class="caption collapser" onclick="toggleSection('i:Pretext')">Instances</p><div id="section.i:Pretext" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Pretext:Sellable:1" class="instance expander" onclick="toggleSection('i:id:Pretext:Sellable:1')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Rep.html#t:Corepresentable">Corepresentable</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> p (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-270" class="link">Source</a> <a href="#t:Pretext" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Pretext:Sellable:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: p a (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b b) <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Pretext:ComonadStore:2" class="instance expander" onclick="toggleSection('i:id:Pretext:ComonadStore:2')"></span> ((~) <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> a b, <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p) =&gt; <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#t:ComonadStore">ComonadStore</a> a (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b)</span> <a href="src/Control-Lens-Internal-Context.html#line-256" class="link">Source</a> <a href="#t:Pretext" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Pretext:ComonadStore:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:pos">pos</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; a <a href="#v:pos" class="selflink">#</a></p><p class="src"><a href="#v:peek">peek</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; a <a href="#v:peek" class="selflink">#</a></p><p class="src"><a href="#v:peeks">peeks</a> :: (a -&gt; a) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; a <a href="#v:peeks" class="selflink">#</a></p><p class="src"><a href="#v:seek">seek</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a <a href="#v:seek" class="selflink">#</a></p><p class="src"><a href="#v:seeks">seeks</a> :: (a -&gt; a) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a <a href="#v:seeks" class="selflink">#</a></p><p class="src"><a href="#v:experiment">experiment</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; (a -&gt; f a) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; f a <a href="#v:experiment" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Pretext:IndexedComonadStore:3" class="instance expander" onclick="toggleSection('i:id:Pretext:IndexedComonadStore:3')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonadStore">IndexedComonadStore</a> (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-240" class="link">Source</a> <a href="#t:Pretext" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Pretext:IndexedComonadStore:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ipos">ipos</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; a <a href="src/Control-Lens-Internal-Context.html#ipos" class="link">Source</a> <a href="#v:ipos" class="selflink">#</a></p><p class="src"><a href="#v:ipeek">ipeek</a> :: c -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeek" class="link">Source</a> <a href="#v:ipeek" class="selflink">#</a></p><p class="src"><a href="#v:ipeeks">ipeeks</a> :: (a -&gt; c) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeeks" class="link">Source</a> <a href="#v:ipeeks" class="selflink">#</a></p><p class="src"><a href="#v:iseek">iseek</a> :: b -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p b c t <a href="src/Control-Lens-Internal-Context.html#iseek" class="link">Source</a> <a href="#v:iseek" class="selflink">#</a></p><p class="src"><a href="#v:iseeks">iseeks</a> :: (a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p b c t <a href="src/Control-Lens-Internal-Context.html#iseeks" class="link">Source</a> <a href="#v:iseeks" class="selflink">#</a></p><p class="src"><a href="#v:iexperiment">iexperiment</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; (b -&gt; f c) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p b c t -&gt; f t <a href="src/Control-Lens-Internal-Context.html#iexperiment" class="link">Source</a> <a href="#v:iexperiment" class="selflink">#</a></p><p class="src"><a href="#v:context">context</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t <a href="src/Control-Lens-Internal-Context.html#context" class="link">Source</a> <a href="#v:context" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Pretext:IndexedComonad:4" class="instance expander" onclick="toggleSection('i:id:Pretext:IndexedComonad:4')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-228" class="link">Source</a> <a href="#t:Pretext" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Pretext:IndexedComonad:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Pretext:IndexedFunctor:5" class="instance expander" onclick="toggleSection('i:id:Pretext:IndexedFunctor:5')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p)</span> <a href="src/Control-Lens-Internal-Context.html#line-220" class="link">Source</a> <a href="#t:Pretext" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Pretext:IndexedFunctor:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b s -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Pretext:Functor:6" class="instance expander" onclick="toggleSection('i:id:Pretext:Functor:6')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b)</span> <a href="src/Control-Lens-Internal-Context.html#line-224" class="link">Source</a> <a href="#t:Pretext" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Pretext:Functor:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fmap">fmap</a> :: (a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b b <a href="#v:fmap" class="selflink">#</a></p><p class="src"><a href="#v:-60--36-">(&lt;$)</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b b -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a <a href="#v:-60--36-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Pretext:Comonad:7" class="instance expander" onclick="toggleSection('i:id:Pretext:Comonad:7')"></span> ((~) <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> a b, <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p) =&gt; <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b)</span> <a href="src/Control-Lens-Internal-Context.html#line-234" class="link">Source</a> <a href="#t:Pretext" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Pretext:Comonad:7" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:extract">extract</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; a <a href="#v:extract" class="selflink">#</a></p><p class="src"><a href="#v:duplicate">duplicate</a> :: <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a) <a href="#v:duplicate" class="selflink">#</a></p><p class="src"><a href="#v:extend">extend</a> :: (<a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a b b <a href="#v:extend" 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:Pretext-39-" class="def">Pretext'</a> p a = <a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a> p a a <a href="src/Control-Lens-Internal-Context.html#Pretext%27" class="link">Source</a> <a href="#t:Pretext-39-" class="selflink">#</a></p><div class="doc"><pre>type <code><a href="Control-Lens-Internal-Context.html#t:Pretext-39-">Pretext'</a></code> p a s = <code><a href="Control-Lens-Internal-Context.html#t:Pretext">Pretext</a></code> p a a s</pre></div></div><div class="top"><p class="src"><span class="keyword">newtype</span> <a id="t:PretextT" class="def">PretextT</a> p g a b t <a href="src/Control-Lens-Internal-Context.html#PretextT" class="link">Source</a> <a href="#t:PretextT" class="selflink">#</a></p><div class="doc"><p>This is a generalized form of <code><a href="Control-Lens-Internal-Context.html#t:Context">Context</a></code> that can be repeatedly cloned with less
 impact on its performance, and which permits the use of an arbitrary <code><a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a></code>
 <code><a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a></code>.</p><p>The extra phantom <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a></code> is used to let us lie and claim
 <code><a href="Control-Lens-Getter.html#v:Getter">Getter</a></code>-compatibility under limited circumstances.
 This is used internally to permit a number of combinators to gracefully
 degrade when applied to a <code><a href="Control-Lens-Fold.html#v:Fold">Fold</a></code> or
 <code><a href="Control-Lens-Getter.html#v:Getter">Getter</a></code>.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:PretextT" class="def">PretextT</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:runPretextT" class="def">runPretextT</a> :: <span class="keyword">forall</span> f. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; p a (f b) -&gt; f t</dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><p id="control.i:PretextT" class="caption collapser" onclick="toggleSection('i:PretextT')">Instances</p><div id="section.i:PretextT" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:PretextT:Sellable:1" class="instance expander" onclick="toggleSection('i:id:PretextT:Sellable:1')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Rep.html#t:Corepresentable">Corepresentable</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:Sellable">Sellable</a> p (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-350" class="link">Source</a> <a href="#t:PretextT" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:PretextT:Sellable:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sell">sell</a> :: p a (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b b) <a href="src/Control-Lens-Internal-Context.html#sell" class="link">Source</a> <a href="#v:sell" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:PretextT:ComonadStore:2" class="instance expander" onclick="toggleSection('i:id:PretextT:ComonadStore:2')"></span> ((~) <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> a b, <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p) =&gt; <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#t:ComonadStore">ComonadStore</a> a (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b)</span> <a href="src/Control-Lens-Internal-Context.html#line-336" class="link">Source</a> <a href="#t:PretextT" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:PretextT:ComonadStore:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:pos">pos</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; a <a href="#v:pos" class="selflink">#</a></p><p class="src"><a href="#v:peek">peek</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; a <a href="#v:peek" class="selflink">#</a></p><p class="src"><a href="#v:peeks">peeks</a> :: (a -&gt; a) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; a <a href="#v:peeks" class="selflink">#</a></p><p class="src"><a href="#v:seek">seek</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a <a href="#v:seek" class="selflink">#</a></p><p class="src"><a href="#v:seeks">seeks</a> :: (a -&gt; a) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a <a href="#v:seeks" class="selflink">#</a></p><p class="src"><a href="#v:experiment">experiment</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; (a -&gt; f a) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; f a <a href="#v:experiment" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:PretextT:IndexedComonadStore:3" class="instance expander" onclick="toggleSection('i:id:PretextT:IndexedComonadStore:3')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonadStore">IndexedComonadStore</a> (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-320" class="link">Source</a> <a href="#t:PretextT" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:PretextT:IndexedComonadStore:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ipos">ipos</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; a <a href="src/Control-Lens-Internal-Context.html#ipos" class="link">Source</a> <a href="#v:ipos" class="selflink">#</a></p><p class="src"><a href="#v:ipeek">ipeek</a> :: c -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeek" class="link">Source</a> <a href="#v:ipeek" class="selflink">#</a></p><p class="src"><a href="#v:ipeeks">ipeeks</a> :: (a -&gt; c) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; t <a href="src/Control-Lens-Internal-Context.html#ipeeks" class="link">Source</a> <a href="#v:ipeeks" class="selflink">#</a></p><p class="src"><a href="#v:iseek">iseek</a> :: b -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g b c t <a href="src/Control-Lens-Internal-Context.html#iseek" class="link">Source</a> <a href="#v:iseek" class="selflink">#</a></p><p class="src"><a href="#v:iseeks">iseeks</a> :: (a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g b c t <a href="src/Control-Lens-Internal-Context.html#iseeks" class="link">Source</a> <a href="#v:iseeks" class="selflink">#</a></p><p class="src"><a href="#v:iexperiment">iexperiment</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; (b -&gt; f c) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g b c t -&gt; f t <a href="src/Control-Lens-Internal-Context.html#iexperiment" class="link">Source</a> <a href="#v:iexperiment" class="selflink">#</a></p><p class="src"><a href="#v:context">context</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b t -&gt; <a href="Control-Lens-Internal-Context.html#t:Context">Context</a> a b t <a href="src/Control-Lens-Internal-Context.html#context" class="link">Source</a> <a href="#v:context" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:PretextT:IndexedComonad:4" class="instance expander" onclick="toggleSection('i:id:PretextT:IndexedComonad:4')"></span> <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p =&gt; <a href="Control-Lens-Internal-Context.html#t:IndexedComonad">IndexedComonad</a> (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-308" class="link">Source</a> <a href="#t:PretextT" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:PretextT:IndexedComonad:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:iextract">iextract</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a a t -&gt; t <a href="src/Control-Lens-Internal-Context.html#iextract" class="link">Source</a> <a href="#v:iextract" class="selflink">#</a></p><p class="src"><a href="#v:iduplicate">iduplicate</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g b c t) <a href="src/Control-Lens-Internal-Context.html#iduplicate" class="link">Source</a> <a href="#v:iduplicate" class="selflink">#</a></p><p class="src"><a href="#v:iextend">iextend</a> :: (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g b c t -&gt; r) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a c t -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b r <a href="src/Control-Lens-Internal-Context.html#iextend" class="link">Source</a> <a href="#v:iextend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:PretextT:IndexedFunctor:5" class="instance expander" onclick="toggleSection('i:id:PretextT:IndexedFunctor:5')"></span> <a href="Control-Lens-Internal-Context.html#t:IndexedFunctor">IndexedFunctor</a> (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g)</span> <a href="src/Control-Lens-Internal-Context.html#line-300" class="link">Source</a> <a href="#t:PretextT" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:PretextT:IndexedFunctor:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifmap">ifmap</a> :: (s -&gt; t) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b s -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b t <a href="src/Control-Lens-Internal-Context.html#ifmap" class="link">Source</a> <a href="#v:ifmap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:PretextT:Functor:6" class="instance expander" onclick="toggleSection('i:id:PretextT:Functor:6')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b)</span> <a href="src/Control-Lens-Internal-Context.html#line-304" class="link">Source</a> <a href="#t:PretextT" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:PretextT:Functor:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fmap">fmap</a> :: (a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b b <a href="#v:fmap" class="selflink">#</a></p><p class="src"><a href="#v:-60--36-">(&lt;$)</a> :: a -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b b -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a <a href="#v:-60--36-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:PretextT:Comonad:7" class="instance expander" onclick="toggleSection('i:id:PretextT:Comonad:7')"></span> ((~) <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> a b, <a href="Control-Lens-Internal-Indexed.html#t:Conjoined">Conjoined</a> p) =&gt; <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b)</span> <a href="src/Control-Lens-Internal-Context.html#line-314" class="link">Source</a> <a href="#t:PretextT" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:PretextT:Comonad:7" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:extract">extract</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; a <a href="#v:extract" class="selflink">#</a></p><p class="src"><a href="#v:duplicate">duplicate</a> :: <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a) <a href="#v:duplicate" class="selflink">#</a></p><p class="src"><a href="#v:extend">extend</a> :: (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b b <a href="#v:extend" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:PretextT:Contravariant:8" class="instance expander" onclick="toggleSection('i:id:PretextT:Contravariant:8')"></span> (<a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p, <a href="Control-Lens-Getter.html#t:Contravariant">Contravariant</a> g) =&gt; <a href="Control-Lens-Getter.html#t:Contravariant">Contravariant</a> (<a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b)</span> <a href="src/Control-Lens-Internal-Context.html#line-354" class="link">Source</a> <a href="#t:PretextT" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:PretextT:Contravariant:8" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:contramap">contramap</a> :: (a -&gt; b) -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b b -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a <a href="#v:contramap" class="selflink">#</a></p><p class="src"><a href="#v:-62--36-">(&gt;$)</a> :: b -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b b -&gt; <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a b a <a href="#v:-62--36-" 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:PretextT-39-" class="def">PretextT'</a> p g a = <a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a> p g a a <a href="src/Control-Lens-Internal-Context.html#PretextT%27" class="link">Source</a> <a href="#t:PretextT-39-" class="selflink">#</a></p><div class="doc"><pre>type <code><a href="Control-Lens-Internal-Context.html#t:PretextT-39-">PretextT'</a></code> p g a s = <code><a href="Control-Lens-Internal-Context.html#t:PretextT">PretextT</a></code> p g a a s</pre></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>