/usr/share/doc/libghc-lens-doc/html/Control-Lens-Setter.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 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 | <!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.Setter</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-Setter.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Control-Lens-Setter.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-16 Edward Kmett</td></tr><tr><th>License</th><td>BSD-style (see the file LICENSE)</td></tr><tr><th>Maintainer</th><td>Edward Kmett <ekmett@gmail.com></td></tr><tr><th>Stability</th><td>provisional</td></tr><tr><th>Portability</th><td>Rank2Types</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.Setter</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">Setters</a></li><li><a href="#g:2">Building Setters</a></li><li><a href="#g:3">Common Setters</a></li><li><a href="#g:4">Functional Combinators</a></li><li><a href="#g:5">State Combinators</a></li><li><a href="#g:6">Writer Combinators</a></li><li><a href="#g:7">Simplified State Setting</a></li><li><a href="#g:8">Indexed Setters</a></li><li><a href="#g:9">Arrow operators</a></li><li><a href="#g:10">Exported for legible error messages</a></li><li><a href="#g:11">Deprecated</a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>A <code><code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a b</code> is a generalization of <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:fmap">fmap</a></code> from <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a></code>. It allows you to map into a
structure and change out the contents, but it isn't strong enough to allow you to
enumerate those contents. Starting with <code><code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:fmap">fmap</a></code> :: <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 => (a -> b) -> f a -> f b</code>
we monomorphize the type to obtain <code>(a -> b) -> s -> t</code> and then decorate it with <code><a href="Control-Lens-Setter.html#t:Identity">Identity</a></code> to obtain:</p><pre>type <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a b = (a -> <code><a href="Control-Lens-Setter.html#t:Identity">Identity</a></code> b) -> s -> <code><a href="Control-Lens-Setter.html#t:Identity">Identity</a></code> t
</pre><p>Every <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> is a valid <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>, since <code><a href="Control-Lens-Setter.html#t:Identity">Identity</a></code> is <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a></code>.</p><p>Everything you can do with a <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a></code>, you can do with a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>. There
are combinators that generalize <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:fmap">fmap</a></code> and (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:-60--36-"><$</a></code>).</p></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">type</span> <a href="#t:Setter">Setter</a> s t a b = <span class="keyword">forall</span> f. <a href="Control-Lens-Setter.html#t:Settable">Settable</a> f => (a -> f b) -> s -> f t</li><li class="src short"><span class="keyword">type</span> <a href="#t:Setter-39-">Setter'</a> s a = <a href="Control-Lens-Setter.html#t:Setter">Setter</a> s s a a</li><li class="src short"><span class="keyword">type</span> <a href="#t:IndexedSetter">IndexedSetter</a> i s t a b = <span class="keyword">forall</span> f p. (<a href="Control-Lens-Internal-Indexed.html#t:Indexable">Indexable</a> i p, <a href="Control-Lens-Setter.html#t:Settable">Settable</a> f) => p a (f b) -> s -> f t</li><li class="src short"><span class="keyword">type</span> <a href="#t:IndexedSetter-39-">IndexedSetter'</a> i s a = <a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a> i s s a a</li><li class="src short"><span class="keyword">type</span> <a href="#t:ASetter">ASetter</a> s t a b = (a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> s -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> t</li><li class="src short"><span class="keyword">type</span> <a href="#t:ASetter-39-">ASetter'</a> s a = <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a a</li><li class="src short"><span class="keyword">type</span> <a href="#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b = <a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i a (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> s -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> t</li><li class="src short"><span class="keyword">type</span> <a href="#t:AnIndexedSetter-39-">AnIndexedSetter'</a> i s a = <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a a</li><li class="src short"><span class="keyword">type</span> <a href="#t:Setting">Setting</a> p s t a b = p a (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> s -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> t</li><li class="src short"><span class="keyword">type</span> <a href="#t:Setting-39-">Setting'</a> p s a = <a href="Control-Lens-Setter.html#t:Setting">Setting</a> p s s a a</li><li class="src short"><a href="#v:sets">sets</a> :: (<a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p, <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> q, <a href="Control-Lens-Setter.html#t:Settable">Settable</a> f) => (p a b -> q s t) -> <a href="Control-Lens-Type.html#t:Optical">Optical</a> p q f s t a b</li><li class="src short"><a href="#v:setting">setting</a> :: ((a -> b) -> s -> t) -> <a href="Control-Lens-Type.html#t:IndexPreservingSetter">IndexPreservingSetter</a> s t a b</li><li class="src short"><a href="#v:cloneSetter">cloneSetter</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> <a href="Control-Lens-Setter.html#t:Setter">Setter</a> s t a b</li><li class="src short"><a href="#v:cloneIndexPreservingSetter">cloneIndexPreservingSetter</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> <a href="Control-Lens-Type.html#t:IndexPreservingSetter">IndexPreservingSetter</a> s t a b</li><li class="src short"><a href="#v:cloneIndexedSetter">cloneIndexedSetter</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> <a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a> i s t a b</li><li class="src short"><a href="#v:mapped">mapped</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> (f a) (f b) a b</li><li class="src short"><a href="#v:lifted">lifted</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> m => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> (m a) (m b) a b</li><li class="src short"><a href="#v:contramapped">contramapped</a> :: <a href="Control-Lens-Getter.html#t:Contravariant">Contravariant</a> f => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> (f b) (f a) a b</li><li class="src short"><a href="#v:argument">argument</a> :: <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> (p b r) (p a r) a b</li><li class="src short"><a href="#v:over">over</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> (a -> b) -> s -> t</li><li class="src short"><a href="#v:set">set</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> b -> s -> t</li><li class="src short"><a href="#v:.-126-">(.~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> b -> s -> t</li><li class="src short"><a href="#v:-37--126-">(%~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> (a -> b) -> s -> t</li><li class="src short"><a href="#v:-43--126-">(+~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t</li><li class="src short"><a href="#v:-45--126-">(-~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t</li><li class="src short"><a href="#v:-42--126-">(*~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t</li><li class="src short"><a href="#v:-47--47--126-">(//~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t</li><li class="src short"><a href="#v:-94--126-">(^~)</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> e) => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> e -> s -> t</li><li class="src short"><a href="#v:-94--94--126-">(^^~)</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> e) => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> e -> s -> t</li><li class="src short"><a href="#v:-42--42--126-">(**~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t</li><li class="src short"><a href="#v:-124--124--126-">(||~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> s -> t</li><li class="src short"><a href="#v:-60--62--126-">(<>~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t</li><li class="src short"><a href="#v:-38--38--126-">(&&~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> s -> t</li><li class="src short"><a href="#v:-60-.-126-">(<.~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> b -> s -> (b, t)</li><li class="src short"><a href="#v:-63--126-">(?~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> b) -> b -> s -> t</li><li class="src short"><a href="#v:-60--63--126-">(<?~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> b) -> b -> s -> (b, t)</li><li class="src short"><a href="#v:assign">assign</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> b -> m ()</li><li class="src short"><a href="#v:modifying">modifying</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> (a -> b) -> m ()</li><li class="src short"><a href="#v:.-61-">(.=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> b -> m ()</li><li class="src short"><a href="#v:-37--61-">(%=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> (a -> b) -> m ()</li><li class="src short"><a href="#v:-43--61-">(+=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m ()</li><li class="src short"><a href="#v:-45--61-">(-=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m ()</li><li class="src short"><a href="#v:-42--61-">(*=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m ()</li><li class="src short"><a href="#v:-47--47--61-">(//=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m ()</li><li class="src short"><a href="#v:-94--61-">(^=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> e) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> e -> m ()</li><li class="src short"><a href="#v:-94--94--61-">(^^=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> e) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> e -> m ()</li><li class="src short"><a href="#v:-42--42--61-">(**=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m ()</li><li class="src short"><a href="#v:-124--124--61-">(||=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> m ()</li><li class="src short"><a href="#v:-60--62--61-">(<>=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m ()</li><li class="src short"><a href="#v:-38--38--61-">(&&=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> m ()</li><li class="src short"><a href="#v:-60-.-61-">(<.=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> b -> m b</li><li class="src short"><a href="#v:-63--61-">(?=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> b) -> b -> m ()</li><li class="src short"><a href="#v:-60--63--61-">(<?=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> b) -> b -> m b</li><li class="src short"><a href="#v:-60--126-">(<~)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> m b -> m ()</li><li class="src short"><a href="#v:scribe">scribe</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a> t m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> s) => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> b -> m ()</li><li class="src short"><a href="#v:passing">passing</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a> w m => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> w w u v -> m (a, u -> v) -> m a</li><li class="src short"><a href="#v:ipassing">ipassing</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a> w m => <a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a> i w w u v -> m (a, i -> u -> v) -> m a</li><li class="src short"><a href="#v:censoring">censoring</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a> w m => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> w w u v -> (u -> v) -> m a -> m a</li><li class="src short"><a href="#v:icensoring">icensoring</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a> w m => <a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a> i w w u v -> (i -> u -> v) -> m a -> m a</li><li class="src short"><a href="#v:set-39-">set'</a> :: <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> s -> s</li><li class="src short"><a href="#v:imapOf">imapOf</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> (i -> a -> b) -> s -> t</li><li class="src short"><a href="#v:iover">iover</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> (i -> a -> b) -> s -> t</li><li class="src short"><a href="#v:iset">iset</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> (i -> b) -> s -> t</li><li class="src short"><a href="#v:imodifying">imodifying</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a b -> (i -> a -> b) -> m ()</li><li class="src short"><a href="#v:isets">isets</a> :: ((i -> a -> b) -> s -> t) -> <a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a> i s t a b</li><li class="src short"><a href="#v:-37--64--126-">(%@~)</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> (i -> a -> b) -> s -> t</li><li class="src short"><a href="#v:.-64--126-">(.@~)</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> (i -> b) -> s -> t</li><li class="src short"><a href="#v:-37--64--61-">(%@=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a b -> (i -> a -> b) -> m ()</li><li class="src short"><a href="#v:.-64--61-">(.@=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a b -> (i -> b) -> m ()</li><li class="src short"><a href="#v:assignA">assignA</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Arrow.html#t:Arrow">Arrow</a> p => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> p s b -> p s t</li><li class="src short"><span class="keyword">class</span> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a> f, <a href="file:///usr/share/doc/libghc-distributive-doc/html/Data-Distributive.html#t:Distributive">Distributive</a> f, <a href="Control-Lens-Traversal.html#t:Traversable">Traversable</a> f) => <a href="#t:Settable">Settable</a> f</li><li class="src short"><span class="keyword">newtype</span> <a href="#t:Identity">Identity</a> a :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> = <a href="#v:Identity">Identity</a> {<ul class="subs"><li><a href="#v:runIdentity">runIdentity</a> :: a</li></ul>}</li><li class="src short"><a href="#v:mapOf">mapOf</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> (a -> b) -> s -> t</li></ul></div><div id="interface"><h1 id="g:1">Setters</h1><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:Setter" class="def">Setter</a> s t a b = <span class="keyword">forall</span> f. <a href="Control-Lens-Setter.html#t:Settable">Settable</a> f => (a -> f b) -> s -> f t <a href="src/Control-Lens-Type.html#Setter" class="link">Source</a> <a href="#t:Setter" class="selflink">#</a></p><div class="doc"><p>The only <code><a href="Control-Lens-Type.html#t:LensLike">LensLike</a></code> law that can apply to a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> <code>l</code> is that</p><pre><code><a href="Control-Lens-Setter.html#v:set">set</a></code> l y (<code><a href="Control-Lens-Setter.html#v:set">set</a></code> l x a) ≡ <code><a href="Control-Lens-Setter.html#v:set">set</a></code> l y a
</pre><p>You can't <code><a href="Control-Lens-Getter.html#v:view">view</a></code> a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> in general, so the other two laws are irrelevant.</p><p>However, two <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a></code> laws apply to a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>:</p><pre><code><a href="Control-Lens-Setter.html#v:over">over</a></code> l <code>id</code> ≡ <code>id</code>
<code><a href="Control-Lens-Setter.html#v:over">over</a></code> l f <code>.</code> <code><a href="Control-Lens-Setter.html#v:over">over</a></code> l g ≡ <code><a href="Control-Lens-Setter.html#v:over">over</a></code> l (f <code>.</code> g)
</pre><p>These can be stated more directly:</p><pre>l <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#v:pure">pure</a></code> ≡ <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#v:pure">pure</a></code>
l f <code>.</code> <code><a href="Control-Lens-Internal-Setter.html#v:untainted">untainted</a></code> <code>.</code> l g ≡ l (f <code>.</code> <code><a href="Control-Lens-Internal-Setter.html#v:untainted">untainted</a></code> <code>.</code> g)
</pre><p>You can compose a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> with a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or a <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> using (<code>.</code>) from the <code>Prelude</code>
and the result is always only a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> and nothing more.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over traverse f [a,b,c,d]
</code></strong>[f a,f b,f c,f d]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over _1 f (a,b)
</code></strong>(f a,b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over (traverse._1) f [(a,b),(c,d)]
</code></strong>[(f a,b),(f c,d)]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over both f (a,b)
</code></strong>(f a,f b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over (traverse.both) f [(a,b),(c,d)]
</code></strong>[(f a,f b),(f c,f d)]
</pre></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:Setter-39-" class="def">Setter'</a> s a = <a href="Control-Lens-Setter.html#t:Setter">Setter</a> s s a a <a href="src/Control-Lens-Type.html#Setter%27" class="link">Source</a> <a href="#t:Setter-39-" class="selflink">#</a></p><div class="doc"><p>A <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> is just a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> that doesn't change the types.</p><p>These are particularly common when talking about monomorphic containers. <em>e.g.</em></p><pre><code>sets</code> Data.Text.map :: <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> <code><a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text-Internal.html#v:Text">Text</a></code> <code>Char</code>
</pre><pre>type <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> = <code><a href="Control-Lens-Type.html#t:Simple">Simple</a></code> <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>
</pre></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:IndexedSetter" class="def">IndexedSetter</a> i s t a b = <span class="keyword">forall</span> f p. (<a href="Control-Lens-Internal-Indexed.html#t:Indexable">Indexable</a> i p, <a href="Control-Lens-Setter.html#t:Settable">Settable</a> f) => p a (f b) -> s -> f t <a href="src/Control-Lens-Type.html#IndexedSetter" class="link">Source</a> <a href="#t:IndexedSetter" class="selflink">#</a></p><div class="doc"><p>Every <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> is a valid <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>.</p><p>The <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> laws are still required to hold.</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:IndexedSetter-39-" class="def">IndexedSetter'</a> i s a = <a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a> i s s a a <a href="src/Control-Lens-Type.html#IndexedSetter%27" class="link">Source</a> <a href="#t:IndexedSetter-39-" class="selflink">#</a></p><div class="doc"><pre>type <code><a href="Control-Lens-Setter.html#t:IndexedSetter-39-">IndexedSetter'</a></code> i = <code><a href="Control-Lens-Type.html#t:Simple">Simple</a></code> (<code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> i)
</pre></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ASetter" class="def">ASetter</a> s t a b = (a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> s -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> t <a href="src/Control-Lens-Setter.html#ASetter" class="link">Source</a> <a href="#t:ASetter" class="selflink">#</a></p><div class="doc"><p>Running a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> instantiates it to a concrete type.</p><p>When consuming a setter directly to perform a mapping, you can use this type, but most
user code will not need to use this type.</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ASetter-39-" class="def">ASetter'</a> s a = <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a a <a href="src/Control-Lens-Setter.html#ASetter%27" class="link">Source</a> <a href="#t:ASetter-39-" class="selflink">#</a></p><div class="doc"><p>This is a useful alias for use when consuming a <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code>.</p><p>Most user code will never have to use this type.</p><pre>type <code><a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a></code> = <code><a href="Control-Lens-Type.html#t:Simple">Simple</a></code> <code><a href="Control-Lens-Setter.html#t:ASetter">ASetter</a></code>
</pre></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:AnIndexedSetter" class="def">AnIndexedSetter</a> i s t a b = <a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i a (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> s -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> t <a href="src/Control-Lens-Setter.html#AnIndexedSetter" class="link">Source</a> <a href="#t:AnIndexedSetter" class="selflink">#</a></p><div class="doc"><p>Running an <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> instantiates it to a concrete type.</p><p>When consuming a setter directly to perform a mapping, you can use this type, but most
user code will not need to use this type.</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:AnIndexedSetter-39-" class="def">AnIndexedSetter'</a> i s a = <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a a <a href="src/Control-Lens-Setter.html#AnIndexedSetter%27" class="link">Source</a> <a href="#t:AnIndexedSetter-39-" class="selflink">#</a></p><div class="doc"><pre>type <code><a href="Control-Lens-Setter.html#t:AnIndexedSetter-39-">AnIndexedSetter'</a></code> i = <code><a href="Control-Lens-Type.html#t:Simple">Simple</a></code> (<code><a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a></code> i)
</pre></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:Setting" class="def">Setting</a> p s t a b = p a (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> s -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> t <a href="src/Control-Lens-Setter.html#Setting" class="link">Source</a> <a href="#t:Setting" class="selflink">#</a></p><div class="doc"><p>This is a convenient alias when defining highly polymorphic code that takes both
<code><a href="Control-Lens-Setter.html#t:ASetter">ASetter</a></code> and <code><a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a></code> as appropriate. If a function takes this it is
expecting one of those two things based on context.</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:Setting-39-" class="def">Setting'</a> p s a = <a href="Control-Lens-Setter.html#t:Setting">Setting</a> p s s a a <a href="src/Control-Lens-Setter.html#Setting%27" class="link">Source</a> <a href="#t:Setting-39-" class="selflink">#</a></p><div class="doc"><p>This is a convenient alias when defining highly polymorphic code that takes both
<code><a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a></code> and <code><a href="Control-Lens-Setter.html#t:AnIndexedSetter-39-">AnIndexedSetter'</a></code> as appropriate. If a function takes this it is
expecting one of those two things based on context.</p></div></div><h1 id="g:2">Building Setters</h1><div class="top"><p class="src"><a id="v:sets" class="def">sets</a> :: (<a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p, <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> q, <a href="Control-Lens-Setter.html#t:Settable">Settable</a> f) => (p a b -> q s t) -> <a href="Control-Lens-Type.html#t:Optical">Optical</a> p q f s t a b <a href="src/Control-Lens-Setter.html#sets" class="link">Source</a> <a href="#v:sets" class="selflink">#</a></p><div class="doc"><p>Build a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>, <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> or <code><a href="Control-Lens-Type.html#t:IndexPreservingSetter">IndexPreservingSetter</a></code> depending on your choice of <code><a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a></code>.</p><pre><code><a href="Control-Lens-Setter.html#v:sets">sets</a></code> :: ((a -> b) -> s -> t) -> <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a b
</pre></div></div><div class="top"><p class="src"><a id="v:setting" class="def">setting</a> :: ((a -> b) -> s -> t) -> <a href="Control-Lens-Type.html#t:IndexPreservingSetter">IndexPreservingSetter</a> s t a b <a href="src/Control-Lens-Setter.html#setting" class="link">Source</a> <a href="#v:setting" class="selflink">#</a></p><div class="doc"><p>Build an index-preserving <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> from a map-like function.</p><p>Your supplied function <code>f</code> is required to satisfy:</p><pre>f <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code> ≡ <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code>
f g <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> f h ≡ f (g <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> h)
</pre><p>Equational reasoning:</p><pre><code><a href="Control-Lens-Setter.html#v:setting">setting</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="Control-Lens-Setter.html#v:over">over</a></code> ≡ <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code>
<code><a href="Control-Lens-Setter.html#v:over">over</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="Control-Lens-Setter.html#v:setting">setting</a></code> ≡ <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code>
</pre><p>Another way to view <code><a href="Control-Lens-Setter.html#v:sets">sets</a></code> is that it takes a "semantic editor combinator"
and transforms it into a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>.</p><pre><code><a href="Control-Lens-Setter.html#v:setting">setting</a></code> :: ((a -> b) -> s -> t) -> <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a b
</pre></div></div><div class="top"><p class="src"><a id="v:cloneSetter" class="def">cloneSetter</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> <a href="Control-Lens-Setter.html#t:Setter">Setter</a> s t a b <a href="src/Control-Lens-Setter.html#cloneSetter" class="link">Source</a> <a href="#v:cloneSetter" class="selflink">#</a></p><div class="doc"><p>Restore <code><a href="Control-Lens-Setter.html#t:ASetter">ASetter</a></code> to a full <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:cloneIndexPreservingSetter" class="def">cloneIndexPreservingSetter</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> <a href="Control-Lens-Type.html#t:IndexPreservingSetter">IndexPreservingSetter</a> s t a b <a href="src/Control-Lens-Setter.html#cloneIndexPreservingSetter" class="link">Source</a> <a href="#v:cloneIndexPreservingSetter" class="selflink">#</a></p><div class="doc"><p>Build an <code><a href="Control-Lens-Type.html#t:IndexPreservingSetter">IndexPreservingSetter</a></code> from any <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:cloneIndexedSetter" class="def">cloneIndexedSetter</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> <a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a> i s t a b <a href="src/Control-Lens-Setter.html#cloneIndexedSetter" class="link">Source</a> <a href="#v:cloneIndexedSetter" class="selflink">#</a></p><div class="doc"><p>Clone an <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code>.</p></div></div><h1 id="g:3">Common Setters</h1><div class="top"><p class="src"><a id="v:mapped" class="def">mapped</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> (f a) (f b) a b <a href="src/Control-Lens-Setter.html#mapped" class="link">Source</a> <a href="#v:mapped" class="selflink">#</a></p><div class="doc"><p>This <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> can be used to map over all of the values in a <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a></code>.</p><pre><code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:fmap">fmap</a></code> ≡ <code><a href="Control-Lens-Setter.html#v:over">over</a></code> <code><a href="Control-Lens-Setter.html#v:mapped">mapped</a></code>
<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Traversable.html#v:fmapDefault">fmapDefault</a></code> ≡ <code><a href="Control-Lens-Setter.html#v:over">over</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Traversable.html#v:traverse">traverse</a></code>
(<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:-60--36-"><$</a></code>) ≡ <code><a href="Control-Lens-Setter.html#v:set">set</a></code> <code><a href="Control-Lens-Setter.html#v:mapped">mapped</a></code>
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over mapped f [a,b,c]
</code></strong>[f a,f b,f c]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over mapped (+1) [1,2,3]
</code></strong>[2,3,4]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>set mapped x [a,b,c]
</code></strong>[x,x,x]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>[[a,b],[c]] & mapped.mapped +~ x
</code></strong>[[a + x,b + x],[c + x]]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over (mapped._2) length [("hello","world"),("leaders","!!!")]
</code></strong>[("hello",5),("leaders",3)]
</pre><pre><code><a href="Control-Lens-Setter.html#v:mapped">mapped</a></code> :: <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 => <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> (f a) (f b) a b
</pre><p>If you want an <code><a href="Control-Lens-Type.html#t:IndexPreservingSetter">IndexPreservingSetter</a></code> use <code><code><a href="Control-Lens-Setter.html#v:setting">setting</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:fmap">fmap</a></code></code>.</p></div></div><div class="top"><p class="src"><a id="v:lifted" class="def">lifted</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> m => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> (m a) (m b) a b <a href="src/Control-Lens-Setter.html#lifted" class="link">Source</a> <a href="#v:lifted" class="selflink">#</a></p><div class="doc"><p>This <code>setter</code> can be used to modify all of the values in a <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a></code>.</p><p>You sometimes have to use this rather than <code><a href="Control-Lens-Setter.html#v:mapped">mapped</a></code> -- due to
temporary insanity <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 not a superclass of <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a></code>.</p><pre><code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#v:liftM">liftM</a></code> ≡ <code><a href="Control-Lens-Setter.html#v:over">over</a></code> <code><a href="Control-Lens-Setter.html#v:lifted">lifted</a></code>
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over lifted f [a,b,c]
</code></strong>[f a,f b,f c]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>set lifted b (Just a)
</code></strong>Just b
</pre><p>If you want an <code><a href="Control-Lens-Type.html#t:IndexPreservingSetter">IndexPreservingSetter</a></code> use <code><code><a href="Control-Lens-Setter.html#v:setting">setting</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#v:liftM">liftM</a></code></code>.</p></div></div><div class="top"><p class="src"><a id="v:contramapped" class="def">contramapped</a> :: <a href="Control-Lens-Getter.html#t:Contravariant">Contravariant</a> f => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> (f b) (f a) a b <a href="src/Control-Lens-Setter.html#contramapped" class="link">Source</a> <a href="#v:contramapped" class="selflink">#</a></p><div class="doc"><p>This <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> can be used to map over all of the inputs to a <code><a href="Control-Lens-Getter.html#t:Contravariant">Contravariant</a></code>.</p><pre><code><a href="Control-Lens-Getter.html#v:contramap">contramap</a></code> ≡ <code><a href="Control-Lens-Setter.html#v:over">over</a></code> <code><a href="Control-Lens-Setter.html#v:contramapped">contramapped</a></code>
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>getPredicate (over contramapped (*2) (Predicate even)) 5
</code></strong>True
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>getOp (over contramapped (*5) (Op show)) 100
</code></strong>"500"
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>Prelude.map ($ 1) $ over (mapped . _Unwrapping' Op . contramapped) (*12) [(*2),(+1),(^3)]
</code></strong>[24,13,1728]
</pre></div></div><div class="top"><p class="src"><a id="v:argument" class="def">argument</a> :: <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> (p b r) (p a r) a b <a href="src/Control-Lens-Setter.html#argument" class="link">Source</a> <a href="#v:argument" class="selflink">#</a></p><div class="doc"><p>This <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> can be used to map over the input of a <code><a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a></code>.</p><p>The most common <code><a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a></code> to use this with is <code>(->)</code>.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(argument %~ f) g x
</code></strong>g (f x)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(argument %~ show) length [1,2,3]
</code></strong>7
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(argument %~ f) h x y
</code></strong>h (f x) y
</pre><p>Map over the argument of the result of a function -- i.e., its second
argument:</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(mapped.argument %~ f) h x y
</code></strong>h x (f y)
</pre><pre><code><a href="Control-Lens-Setter.html#v:argument">argument</a></code> :: <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> (b -> r) (a -> r) a b
</pre></div></div><h1 id="g:4">Functional Combinators</h1><div class="top"><p class="src"><a id="v:over" class="def">over</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> (a -> b) -> s -> t <a href="src/Control-Lens-Setter.html#over" class="link">Source</a> <a href="#v:over" class="selflink">#</a></p><div class="doc"><p>Modify the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or all the targets of a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code>
with a function.</p><pre><code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:fmap">fmap</a></code> ≡ <code><a href="Control-Lens-Setter.html#v:over">over</a></code> <code><a href="Control-Lens-Setter.html#v:mapped">mapped</a></code>
<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Traversable.html#v:fmapDefault">fmapDefault</a></code> ≡ <code><a href="Control-Lens-Setter.html#v:over">over</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Traversable.html#v:traverse">traverse</a></code>
<code><a href="Control-Lens-Setter.html#v:sets">sets</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="Control-Lens-Setter.html#v:over">over</a></code> ≡ <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code>
<code><a href="Control-Lens-Setter.html#v:over">over</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="Control-Lens-Setter.html#v:sets">sets</a></code> ≡ <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code>
</pre><p>Given any valid <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> <code>l</code>, you can also rely on the law:</p><pre><code><a href="Control-Lens-Setter.html#v:over">over</a></code> l f <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="Control-Lens-Setter.html#v:over">over</a></code> l g = <code><a href="Control-Lens-Setter.html#v:over">over</a></code> l (f <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> g)
</pre><p><em>e.g.</em></p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over mapped f (over mapped g [a,b,c]) == over mapped (f . g) [a,b,c]
</code></strong>True
</pre><p>Another way to view <code><a href="Control-Lens-Setter.html#v:over">over</a></code> is to say that it transforms a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> into a
"semantic editor combinator".</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over mapped f (Just a)
</code></strong>Just (f a)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over mapped (*10) [1,2,3]
</code></strong>[10,20,30]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over _1 f (a,b)
</code></strong>(f a,b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>over _1 show (10,20)
</code></strong>("10",20)
</pre><pre><code><a href="Control-Lens-Setter.html#v:over">over</a></code> :: <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a b -> (a -> b) -> s -> t
<code><a href="Control-Lens-Setter.html#v:over">over</a></code> :: <code><a href="Control-Lens-Setter.html#t:ASetter">ASetter</a></code> s t a b -> (a -> b) -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:set" class="def">set</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> b -> s -> t <a href="src/Control-Lens-Setter.html#set" class="link">Source</a> <a href="#v:set" class="selflink">#</a></p><div class="doc"><p>Replace the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or all of the targets of a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>
or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> with a constant value.</p><pre>(<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:-60--36-"><$</a></code>) ≡ <code><a href="Control-Lens-Setter.html#v:set">set</a></code> <code><a href="Control-Lens-Setter.html#v:mapped">mapped</a></code>
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>set _2 "hello" (1,())
</code></strong>(1,"hello")
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>set mapped () [1,2,3,4]
</code></strong>[(),(),(),()]
</pre><p>Note: Attempting to <code><a href="Control-Lens-Setter.html#v:set">set</a></code> a <code><a href="Control-Lens-Type.html#t:Fold">Fold</a></code> or <code><a href="Control-Lens-Type.html#t:Getter">Getter</a></code> will fail at compile time with an
relatively nice error message.</p><pre><code><a href="Control-Lens-Setter.html#v:set">set</a></code> :: <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a b -> b -> s -> t
<code><a href="Control-Lens-Setter.html#v:set">set</a></code> :: <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a b -> b -> s -> t
<code><a href="Control-Lens-Setter.html#v:set">set</a></code> :: <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b -> b -> s -> t
<code><a href="Control-Lens-Setter.html#v:set">set</a></code> :: <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a b -> b -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:.-126-" class="def">(.~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> b -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#.~" class="link">Source</a> <a href="#v:.-126-" class="selflink">#</a></p><div class="doc"><p>Replace the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or all of the targets of a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>
or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> with a constant value.</p><p>This is an infix version of <code><a href="Control-Lens-Setter.html#v:set">set</a></code>, provided for consistency with (<code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code>).</p><pre>f <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:-60--36-"><$</a></code> a ≡ <code><a href="Control-Lens-Setter.html#v:mapped">mapped</a></code> <code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code> f <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:-36-">$</a></code> a
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b,c,d) & _4 .~ e
</code></strong>(a,b,c,e)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(42,"world") & _1 .~ "hello"
</code></strong>("hello","world")
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & both .~ c
</code></strong>(c,c)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code>) :: <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a b -> b -> s -> t
(<code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a b -> b -> s -> t
(<code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b -> b -> s -> t
(<code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a b -> b -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:-37--126-" class="def">(%~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> (a -> b) -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%25~" class="link">Source</a> <a href="#v:-37--126-" class="selflink">#</a></p><div class="doc"><p>Modifies the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or all of the targets of a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or
<code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> with a user supplied function.</p><p>This is an infix version of <code><a href="Control-Lens-Setter.html#v:over">over</a></code>.</p><pre><code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:fmap">fmap</a></code> f ≡ <code><a href="Control-Lens-Setter.html#v:mapped">mapped</a></code> <code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code> f
<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Traversable.html#v:fmapDefault">fmapDefault</a></code> f ≡ <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Traversable.html#v:traverse">traverse</a></code> <code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code> f
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b,c) & _3 %~ f
</code></strong>(a,b,f c)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & both %~ f
</code></strong>(f a,f b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>_2 %~ length $ (1,"hello")
</code></strong>(1,5)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>traverse %~ f $ [a,b,c]
</code></strong>[f a,f b,f c]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>traverse %~ even $ [1,2,3]
</code></strong>[False,True,False]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>traverse.traverse %~ length $ [["hello","world"],["!!!"]]
</code></strong>[[5,5],[3]]
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code>) :: <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a b -> (a -> b) -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a b -> (a -> b) -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b -> (a -> b) -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a b -> (a -> b) -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:-43--126-" class="def">(+~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%2B~" class="link">Source</a> <a href="#v:-43--126-" class="selflink">#</a></p><div class="doc"><p>Increment the target(s) of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code>.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & _1 +~ c
</code></strong>(a + c,b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & both +~ c
</code></strong>(a + c,b + c)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(1,2) & _2 +~ 1
</code></strong>(1,3)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>[(a,b),(c,d)] & traverse.both +~ e
</code></strong>[(a + e,b + e),(c + e,d + e)]
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-43--126-">+~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-43--126-">+~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-43--126-">+~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-43--126-">+~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> s -> s
</pre></div></div><div class="top"><p class="src"><a id="v:-45--126-" class="def">(-~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#-~" class="link">Source</a> <a href="#v:-45--126-" class="selflink">#</a></p><div class="doc"><p>Decrement the target(s) of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code>.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & _1 -~ c
</code></strong>(a - c,b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & both -~ c
</code></strong>(a - c,b - c)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>_1 -~ 2 $ (1,2)
</code></strong>(-1,2)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>mapped.mapped -~ 1 $ [[4,5],[6,7]]
</code></strong>[[3,4],[5,6]]
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-45--126-">-~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-45--126-">-~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-45--126-">-~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-45--126-">-~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> s -> s
</pre></div></div><div class="top"><p class="src"><a id="v:-42--126-" class="def">(*~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%2A~" class="link">Source</a> <a href="#v:-42--126-" class="selflink">#</a></p><div class="doc"><p>Multiply the target(s) of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code>.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & _1 *~ c
</code></strong>(a * c,b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & both *~ c
</code></strong>(a * c,b * c)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(1,2) & _2 *~ 4
</code></strong>(1,8)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>Just 24 & mapped *~ 2
</code></strong>Just 48
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-42--126-">*~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-42--126-">*~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-42--126-">*~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-42--126-">*~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> s -> s
</pre></div></div><div class="top"><p class="src"><a id="v:-47--47--126-" class="def">(//~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%2F%2F~" class="link">Source</a> <a href="#v:-47--47--126-" class="selflink">#</a></p><div class="doc"><p>Divide the target(s) of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code>.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & _1 //~ c
</code></strong>(a / c,b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & both //~ c
</code></strong>(a / c,b / c)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>("Hawaii",10) & _2 //~ 2
</code></strong>("Hawaii",5.0)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-47--47--126-">//~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-47--47--126-">//~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-47--47--126-">//~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-47--47--126-">//~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> s -> s
</pre></div></div><div class="top"><p class="src"><a id="v:-94--126-" class="def">(^~)</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> e) => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> e -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%5E~" class="link">Source</a> <a href="#v:-94--126-" class="selflink">#</a></p><div class="doc"><p>Raise the target(s) of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> to a non-negative integral power.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(1,3) & _2 ^~ 2
</code></strong>(1,9)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-94--126-">^~</a></code>) :: (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> e -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-94--126-">^~</a></code>) :: (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> e -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-94--126-">^~</a></code>) :: (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> e -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-94--126-">^~</a></code>) :: (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> e -> s -> s
</pre></div></div><div class="top"><p class="src"><a id="v:-94--94--126-" class="def">(^^~)</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> e) => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> e -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%5E%5E~" class="link">Source</a> <a href="#v:-94--94--126-" class="selflink">#</a></p><div class="doc"><p>Raise the target(s) of a fractionally valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> to an integral power.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(1,2) & _2 ^^~ (-1)
</code></strong>(1,0.5)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-94--94--126-">^^~</a></code>) :: (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> e -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-94--94--126-">^^~</a></code>) :: (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> e -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-94--94--126-">^^~</a></code>) :: (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> e -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-94--94--126-">^^~</a></code>) :: (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> e -> s -> s
</pre></div></div><div class="top"><p class="src"><a id="v:-42--42--126-" class="def">(**~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%2A%2A~" class="link">Source</a> <a href="#v:-42--42--126-" class="selflink">#</a></p><div class="doc"><p>Raise the target(s) of a floating-point valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> to an arbitrary power.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & _1 **~ c
</code></strong>(a**c,b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & both **~ c
</code></strong>(a**c,b**c)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>_2 **~ 10 $ (3,2)
</code></strong>(3,1024.0)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-42--42--126-">**~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a></code> a => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-42--42--126-">**~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a></code> a => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-42--42--126-">**~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a></code> a => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-42--42--126-">**~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a></code> a => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> s -> s
</pre></div></div><div class="top"><p class="src"><a id="v:-124--124--126-" class="def">(||~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%7C%7C~" class="link">Source</a> <a href="#v:-124--124--126-" class="selflink">#</a></p><div class="doc"><p>Logically <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#v:-124--124-">||</a></code> the target(s) of a <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code>-valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>both ||~ True $ (False,True)
</code></strong>(True,True)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>both ||~ False $ (False,True)
</code></strong>(False,True)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-124--124--126-">||~</a></code>) :: <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-124--124--126-">||~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-124--124--126-">||~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-124--124--126-">||~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> s -> s
</pre></div></div><div class="top"><p class="src"><a id="v:-60--62--126-" class="def">(<>~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> a => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -> a -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%3C%3E~" class="link">Source</a> <a href="#v:-60--62--126-" class="selflink">#</a></p><div class="doc"><p>Modify the target of a monoidally valued by <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#v:mappend">mappend</a></code>ing another value.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(Sum a,b) & _1 <>~ Sum c
</code></strong>(Sum {getSum = a + c},b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(Sum a,Sum b) & both <>~ Sum c
</code></strong>(Sum {getSum = a + c},Sum {getSum = b + c})
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>both <>~ "!!!" $ ("hello","world")
</code></strong>("hello!!!","world!!!")
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-60--62--126-"><>~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a></code> a => <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a a -> a -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-60--62--126-"><>~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a></code> a => <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a a -> a -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-60--62--126-"><>~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a></code> a => <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a a -> a -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-60--62--126-"><>~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a></code> a => <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a a -> a -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:-38--38--126-" class="def">(&&~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%26%26~" class="link">Source</a> <a href="#v:-38--38--126-" class="selflink">#</a></p><div class="doc"><p>Logically <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#v:-38--38-">&&</a></code> the target(s) of a <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code>-valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>both &&~ True $ (False, True)
</code></strong>(False,True)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>both &&~ False $ (False, True)
</code></strong>(False,False)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-38--38--126-">&&~</a></code>) :: <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-38--38--126-">&&~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-38--38--126-">&&~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> s -> s
(<code><a href="Control-Lens-Setter.html#v:-38--38--126-">&&~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> s -> s
</pre></div></div><div class="top"><p class="src"><a id="v:-60-.-126-" class="def">(<.~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> b -> s -> (b, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%3C.~" class="link">Source</a> <a href="#v:-60-.-126-" class="selflink">#</a></p><div class="doc"><p>Set with pass-through.</p><p>This is mostly present for consistency, but may be useful for chaining assignments.</p><p>If you do not need a copy of the intermediate result, then using <code>l <code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code> t</code> directly is a good idea.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(a,b) & _1 <.~ c
</code></strong>(c,(c,b))
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>("good","morning","vietnam") & _3 <.~ "world"
</code></strong>("world",("good","morning","world"))
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>(42,Map.fromList [("goodnight","gracie")]) & _2.at "hello" <.~ Just "world"
</code></strong>(Just "world",(42,fromList [("goodnight","gracie"),("hello","world")]))
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-60-.-126-"><.~</a></code>) :: <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a b -> b -> s -> (b, t)
(<code><a href="Control-Lens-Setter.html#v:-60-.-126-"><.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a b -> b -> s -> (b, t)
(<code><a href="Control-Lens-Setter.html#v:-60-.-126-"><.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b -> b -> s -> (b, t)
(<code><a href="Control-Lens-Setter.html#v:-60-.-126-"><.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a b -> b -> s -> (b, t)
</pre></div></div><div class="top"><p class="src"><a id="v:-63--126-" class="def">(?~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> b) -> b -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%3F~" class="link">Source</a> <a href="#v:-63--126-" class="selflink">#</a></p><div class="doc"><p>Set the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> or <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> to <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#v:Just">Just</a></code> a value.</p><pre>l <code><a href="Control-Lens-Setter.html#v:-63--126-">?~</a></code> t ≡ <code><a href="Control-Lens-Setter.html#v:set">set</a></code> l (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#v:Just">Just</a></code> t)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>Nothing & id ?~ a
</code></strong>Just a
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>Map.empty & at 3 ?~ x
</code></strong>fromList [(3,x)]
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-63--126-">?~</a></code>) :: <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-63--126-">?~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-63--126-">?~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-63--126-">?~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:-60--63--126-" class="def">(<?~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> b) -> b -> s -> (b, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%3C%3F~" class="link">Source</a> <a href="#v:-60--63--126-" class="selflink">#</a></p><div class="doc"><p>Set to <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#v:Just">Just</a></code> a value with pass-through.</p><p>This is mostly present for consistency, but may be useful for for chaining assignments.</p><p>If you do not need a copy of the intermediate result, then using <code>l <code><a href="Control-Lens-Setter.html#v:-63--126-">?~</a></code> d</code> directly is a good idea.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>import Data.Map as Map
</code></strong><code class="prompt">>>> </code><strong class="userinput"><code>_2.at "hello" <?~ "world" $ (42,Map.fromList [("goodnight","gracie")])
</code></strong>("world",(42,fromList [("goodnight","gracie"),("hello","world")]))
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-60--63--126-"><?~</a></code>) :: <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> s -> (b, t)
(<code><a href="Control-Lens-Setter.html#v:-60--63--126-"><?~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> s -> (b, t)
(<code><a href="Control-Lens-Setter.html#v:-60--63--126-"><?~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> s -> (b, t)
(<code><a href="Control-Lens-Setter.html#v:-60--63--126-"><?~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> s -> (b, t)
</pre></div></div><h1 id="g:5">State Combinators</h1><div class="top"><p class="src"><a id="v:assign" class="def">assign</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> b -> m () <a href="src/Control-Lens-Setter.html#assign" class="link">Source</a> <a href="#v:assign" class="selflink">#</a></p><div class="doc"><p>Replace the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or all of the targets of a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> in our monadic
state with a new value, irrespective of the old.</p><p>This is an alias for (<code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code>).</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do assign _1 c; assign _2 d) (a,b)
</code></strong>(c,d)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (both .= c) (a,b)
</code></strong>(c,c)
</pre><pre><code><a href="Control-Lens-Setter.html#v:assign">assign</a></code> :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> m ()
<code><a href="Control-Lens-Setter.html#v:assign">assign</a></code> :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> m ()
<code><a href="Control-Lens-Setter.html#v:assign">assign</a></code> :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> m ()
<code><a href="Control-Lens-Setter.html#v:assign">assign</a></code> :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:modifying" class="def">modifying</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> (a -> b) -> m () <a href="src/Control-Lens-Setter.html#modifying" class="link">Source</a> <a href="#v:modifying" class="selflink">#</a></p><div class="doc"><p>This is an alias for (<code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code>).</p></div></div><div class="top"><p class="src"><a id="v:.-61-" class="def">(.=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> b -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#.%3D" class="link">Source</a> <a href="#v:.-61-" class="selflink">#</a></p><div class="doc"><p>Replace the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or all of the targets of a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>
or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> in our monadic state with a new value, irrespective of the
old.</p><p>This is an infix version of <code><a href="Control-Lens-Setter.html#v:assign">assign</a></code>.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 .= c; _2 .= d) (a,b)
</code></strong>(c,d)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (both .= c) (a,b)
</code></strong>(c,c)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> m ()
</pre><p><em>It puts the state in the monad or it gets the hose again.</em></p></div></div><div class="top"><p class="src"><a id="v:-37--61-" class="def">(%=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> (a -> b) -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%25%3D" class="link">Source</a> <a href="#v:-37--61-" class="selflink">#</a></p><div class="doc"><p>Map over the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or all of the targets of a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> in our monadic state.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 %= f;_2 %= g) (a,b)
</code></strong>(f a,g b)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do both %= f) (a,b)
</code></strong>(f a,f b)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> (a -> a) -> m ()
(<code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> (a -> a) -> m ()
(<code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> (a -> a) -> m ()
(<code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> (a -> a) -> m ()
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:ASetter">ASetter</a></code> s s a b -> (a -> b) -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-43--61-" class="def">(+=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%2B%3D" class="link">Source</a> <a href="#v:-43--61-" class="selflink">#</a></p><div class="doc"><p>Modify the target(s) of a <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code>, <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> by adding a value.</p><p>Example:</p><pre><code>fresh</code> :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a></code> m => m <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a></code>
<code>fresh</code> = do
<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code> <code><a href="Control-Lens-Setter.html#v:-43--61-">+=</a></code> 1
<code><a href="Control-Lens-Getter.html#v:use">use</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code>
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 += c; _2 += d) (a,b)
</code></strong>(a + c,b + d)
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1.at 1.non 0 += 10) (Map.fromList [(2,100)],"hello")
</code></strong>(fromList [(1,10),(2,100)],"hello")
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-43--61-">+=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-43--61-">+=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-43--61-">+=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-43--61-">+=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-45--61-" class="def">(-=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#-%3D" class="link">Source</a> <a href="#v:-45--61-" class="selflink">#</a></p><div class="doc"><p>Modify the target(s) of a <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code>, <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> by subtracting a value.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 -= c; _2 -= d) (a,b)
</code></strong>(a - c,b - d)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-45--61-">-=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-45--61-">-=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-45--61-">-=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-45--61-">-=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-42--61-" class="def">(*=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%2A%3D" class="link">Source</a> <a href="#v:-42--61-" class="selflink">#</a></p><div class="doc"><p>Modify the target(s) of a <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code>, <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> by multiplying by value.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 *= c; _2 *= d) (a,b)
</code></strong>(a * c,b * d)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-42--61-">*=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-42--61-">*=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-42--61-">*=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-42--61-">*=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a) => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-47--47--61-" class="def">(//=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%2F%2F%3D" class="link">Source</a> <a href="#v:-47--47--61-" class="selflink">#</a></p><div class="doc"><p>Modify the target(s) of a <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code>, <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> by dividing by a value.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 //= c; _2 //= d) (a,b)
</code></strong>(a / c,b / d)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-47--47--61-">//=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a) => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-47--47--61-">//=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a) => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-47--47--61-">//=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a) => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-47--47--61-">//=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a) => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-94--61-" class="def">(^=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> e) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> e -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%5E%3D" class="link">Source</a> <a href="#v:-94--61-" class="selflink">#</a></p><div class="doc"><p>Raise the target(s) of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> to a non-negative integral power.</p><pre>(<code><a href="Control-Lens-Setter.html#v:-94--61-">^=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> e -> m ()
(<code><a href="Control-Lens-Setter.html#v:-94--61-">^=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> e -> m ()
(<code><a href="Control-Lens-Setter.html#v:-94--61-">^=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> e -> m ()
(<code><a href="Control-Lens-Setter.html#v:-94--61-">^=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> e -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-94--94--61-" class="def">(^^=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> e) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> e -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%5E%5E%3D" class="link">Source</a> <a href="#v:-94--94--61-" class="selflink">#</a></p><div class="doc"><p>Raise the target(s) of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> to an integral power.</p><pre>(<code><a href="Control-Lens-Setter.html#v:-94--94--61-">^^=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> e -> m ()
(<code><a href="Control-Lens-Setter.html#v:-94--94--61-">^^=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> e -> m ()
(<code><a href="Control-Lens-Setter.html#v:-94--94--61-">^^=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> e -> m ()
(<code><a href="Control-Lens-Setter.html#v:-94--94--61-">^^=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a></code> a, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> e -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-42--42--61-" class="def">(**=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%2A%2A%3D" class="link">Source</a> <a href="#v:-42--42--61-" class="selflink">#</a></p><div class="doc"><p>Raise the target(s) of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> to an arbitrary power</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 **= c; _2 **= d) (a,b)
</code></strong>(a**c,b**d)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-42--42--61-">**=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a></code> a) => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-42--42--61-">**=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a></code> a) => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-42--42--61-">**=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a></code> a) => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-42--42--61-">**=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a></code> a) => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-124--124--61-" class="def">(||=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%7C%7C%3D" class="link">Source</a> <a href="#v:-124--124--61-" class="selflink">#</a></p><div class="doc"><p>Modify the target(s) of a <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code>, 'Iso, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> by taking their logical <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#v:-124--124-">||</a></code> with a value.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 ||= True; _2 ||= False; _3 ||= True; _4 ||= False) (True,True,False,False)
</code></strong>(True,True,True,False)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-124--124--61-">||=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> m ()
(<code><a href="Control-Lens-Setter.html#v:-124--124--61-">||=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> m ()
(<code><a href="Control-Lens-Setter.html#v:-124--124--61-">||=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> m ()
(<code><a href="Control-Lens-Setter.html#v:-124--124--61-">||=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-60--62--61-" class="def">(<>=)</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> a) => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%3C%3E%3D" class="link">Source</a> <a href="#v:-60--62--61-" class="selflink">#</a></p><div class="doc"><p>Modify the target(s) of a <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code>, <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> by <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#v:mappend">mappend</a></code>ing a value.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 <>= Sum c; _2 <>= Product d) (Sum a,Product b)
</code></strong>(Sum {getSum = a + c},Product {getProduct = b * d})
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (both <>= "!!!") ("hello","world")
</code></strong>("hello!!!","world!!!")
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-60--62--61-"><>=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a></code> a) => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-60--62--61-"><>=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a></code> a) => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-60--62--61-"><>=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a></code> a) => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-60--62--61-"><>=</a></code>) :: (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a></code> a) => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-38--38--61-" class="def">(&&=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%26%26%3D" class="link">Source</a> <a href="#v:-38--38--61-" class="selflink">#</a></p><div class="doc"><p>Modify the target(s) of a <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code>, <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> by taking their logical <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#v:-38--38-">&&</a></code> with a value.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 &&= True; _2 &&= False; _3 &&= True; _4 &&= False) (True,True,False,False)
</code></strong>(True,False,False,False)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-38--38--61-">&&=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> m ()
(<code><a href="Control-Lens-Setter.html#v:-38--38--61-">&&=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> m ()
(<code><a href="Control-Lens-Setter.html#v:-38--38--61-">&&=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> m ()
(<code><a href="Control-Lens-Setter.html#v:-38--38--61-">&&=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-60-.-61-" class="def">(<.=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> b -> m b <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%3C.%3D" class="link">Source</a> <a href="#v:-60-.-61-" class="selflink">#</a></p><div class="doc"><p>Set with pass-through</p><p>This is useful for chaining assignment without round-tripping through your <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a></code> stack.</p><pre>do x <- <code><a href="Control-Lens-Tuple.html#v:_2">_2</a></code> <code><a href="Control-Lens-Setter.html#v:-60-.-61-"><.=</a></code> ninety_nine_bottles_of_beer_on_the_wall
</pre><p>If you do not need a copy of the intermediate result, then using <code>l <code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code> d</code> will avoid unused binding warnings.</p><pre>(<code><a href="Control-Lens-Setter.html#v:-60-.-61-"><.=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s s a b -> b -> m b
(<code><a href="Control-Lens-Setter.html#v:-60-.-61-"><.=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s s a b -> b -> m b
(<code><a href="Control-Lens-Setter.html#v:-60-.-61-"><.=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s s a b -> b -> m b
(<code><a href="Control-Lens-Setter.html#v:-60-.-61-"><.=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s s a b -> b -> m b
</pre></div></div><div class="top"><p class="src"><a id="v:-63--61-" class="def">(?=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> b) -> b -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%3F%3D" class="link">Source</a> <a href="#v:-63--61-" class="selflink">#</a></p><div class="doc"><p>Replace the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or all of the targets of a <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> in our monadic
state with <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#v:Just">Just</a></code> a new value, irrespective of the old.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do at 1 ?= a; at 2 ?= b) Map.empty
</code></strong>fromList [(1,a),(2,b)]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>execState (do _1 ?= b; _2 ?= c) (Just a, Nothing)
</code></strong>(Just b,Just c)
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-63--61-">?=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> a) -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-63--61-">?=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> a) -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-63--61-">?=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> a) -> a -> m ()
(<code><a href="Control-Lens-Setter.html#v:-63--61-">?=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> a) -> a -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-60--63--61-" class="def">(<?=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> b) -> b -> m b <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%3C%3F%3D" class="link">Source</a> <a href="#v:-60--63--61-" class="selflink">#</a></p><div class="doc"><p>Set <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#v:Just">Just</a></code> a value with pass-through</p><p>This is useful for chaining assignment without round-tripping through your <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a></code> stack.</p><pre>do x <- <code><a href="Control-Lens-At.html#v:at">at</a></code> "foo" <code><a href="Control-Lens-Setter.html#v:-60--63--61-"><?=</a></code> ninety_nine_bottles_of_beer_on_the_wall
</pre><p>If you do not need a copy of the intermediate result, then using <code>l <code><a href="Control-Lens-Setter.html#v:-63--61-">?=</a></code> d</code> will avoid unused binding warnings.</p><pre>(<code><a href="Control-Lens-Setter.html#v:-60--63--61-"><?=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s s a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> m b
(<code><a href="Control-Lens-Setter.html#v:-60--63--61-"><?=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s s a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> m b
(<code><a href="Control-Lens-Setter.html#v:-60--63--61-"><?=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s s a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> m b
(<code><a href="Control-Lens-Setter.html#v:-60--63--61-"><?=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s s a (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> b) -> b -> m b
</pre></div></div><div class="top"><p class="src"><a id="v:-60--126-" class="def">(<~)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -> m b -> m () <span class="fixity">infixr 2</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%3C~" class="link">Source</a> <a href="#v:-60--126-" class="selflink">#</a></p><div class="doc"><p>Run a monadic action, and set all of the targets of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> to its result.</p><pre>(<code><a href="Control-Lens-Setter.html#v:-60--126-"><~</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s s a b -> m b -> m ()
(<code><a href="Control-Lens-Setter.html#v:-60--126-"><~</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s s a b -> m b -> m ()
(<code><a href="Control-Lens-Setter.html#v:-60--126-"><~</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s s a b -> m b -> m ()
(<code><a href="Control-Lens-Setter.html#v:-60--126-"><~</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s s a b -> m b -> m ()
</pre><p>As a reasonable mnemonic, this lets you store the result of a monadic action in a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> rather than
in a local variable.</p><pre>do foo <- bar
...
</pre><p>will store the result in a variable, while</p><pre>do foo <code><a href="Control-Lens-Setter.html#v:-60--126-"><~</a></code> bar
...
</pre><p>will store the result in a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code>, or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code>.</p></div></div><h1 id="g:6">Writer Combinators</h1><div class="top"><p class="src"><a id="v:scribe" class="def">scribe</a> :: (<a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a> t m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> s) => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> b -> m () <a href="src/Control-Lens-Setter.html#scribe" class="link">Source</a> <a href="#v:scribe" class="selflink">#</a></p><div class="doc"><p>Write to a fragment of a larger <code>Writer</code> format.</p></div></div><div class="top"><p class="src"><a id="v:passing" class="def">passing</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a> w m => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> w w u v -> m (a, u -> v) -> m a <a href="src/Control-Lens-Setter.html#passing" class="link">Source</a> <a href="#v:passing" class="selflink">#</a></p><div class="doc"><p>This is a generalization of <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#v:pass">pass</a></code> that alows you to modify just a
portion of the resulting <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:ipassing" class="def">ipassing</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a> w m => <a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a> i w w u v -> m (a, i -> u -> v) -> m a <a href="src/Control-Lens-Setter.html#ipassing" class="link">Source</a> <a href="#v:ipassing" class="selflink">#</a></p><div class="doc"><p>This is a generalization of <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#v:pass">pass</a></code> that alows you to modify just a
portion of the resulting <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a></code> with access to the index of an
<code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:censoring" class="def">censoring</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a> w m => <a href="Control-Lens-Setter.html#t:Setter">Setter</a> w w u v -> (u -> v) -> m a -> m a <a href="src/Control-Lens-Setter.html#censoring" class="link">Source</a> <a href="#v:censoring" class="selflink">#</a></p><div class="doc"><p>This is a generalization of <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#v:censor">censor</a></code> that alows you to <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#v:censor">censor</a></code> just a
portion of the resulting <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:icensoring" class="def">icensoring</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a> w m => <a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a> i w w u v -> (i -> u -> v) -> m a -> m a <a href="src/Control-Lens-Setter.html#icensoring" class="link">Source</a> <a href="#v:icensoring" class="selflink">#</a></p><div class="doc"><p>This is a generalization of <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#v:censor">censor</a></code> that alows you to <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#v:censor">censor</a></code> just a
portion of the resulting <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-Writer-Class.html#t:MonadWriter">MonadWriter</a></code>, with access to the index of an
<code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code>.</p></div></div><h1 id="g:7">Simplified State Setting</h1><div class="top"><p class="src"><a id="v:set-39-" class="def">set'</a> :: <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -> a -> s -> s <a href="src/Control-Lens-Setter.html#set%27" class="link">Source</a> <a href="#v:set-39-" class="selflink">#</a></p><div class="doc"><p>Replace the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or all of the targets of a <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code>
or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> with a constant value, without changing its type.</p><p>This is a type restricted version of <code><a href="Control-Lens-Setter.html#v:set">set</a></code>, which retains the type of the original.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>set' mapped x [a,b,c,d]
</code></strong>[x,x,x,x]
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>set' _2 "hello" (1,"world")
</code></strong>(1,"hello")
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>set' mapped 0 [1,2,3,4]
</code></strong>[0,0,0,0]
</pre><p>Note: Attempting to adjust <code><a href="Control-Lens-Setter.html#v:set-39-">set'</a></code> a <code><a href="Control-Lens-Type.html#t:Fold">Fold</a></code> or <code><a href="Control-Lens-Type.html#t:Getter">Getter</a></code> will fail at compile time with an
relatively nice error message.</p><pre><code><a href="Control-Lens-Setter.html#v:set-39-">set'</a></code> :: <code><a href="Control-Lens-Setter.html#t:Setter-39-">Setter'</a></code> s a -> a -> s -> s
<code><a href="Control-Lens-Setter.html#v:set-39-">set'</a></code> :: <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -> a -> s -> s
<code><a href="Control-Lens-Setter.html#v:set-39-">set'</a></code> :: <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -> a -> s -> s
<code><a href="Control-Lens-Setter.html#v:set-39-">set'</a></code> :: <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -> a -> s -> s
</pre></div></div><h1 id="g:8">Indexed Setters</h1><div class="top"><p class="src"><a id="v:imapOf" class="def">imapOf</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> (i -> a -> b) -> s -> t <a href="src/Control-Lens-Setter.html#imapOf" class="link">Source</a> <a href="#v:imapOf" class="selflink">#</a></p><div class="doc"><div class="warning"><p>Deprecated: Use <code><a href="Control-Lens-Setter.html#v:iover">iover</a></code></p></div><p>Map with index. (Deprecated alias for <code><a href="Control-Lens-Setter.html#v:iover">iover</a></code>).</p><p>When you do not need access to the index, then <code><a href="Control-Lens-Setter.html#v:mapOf">mapOf</a></code> is more liberal in what it can accept.</p><pre><code><a href="Control-Lens-Setter.html#v:mapOf">mapOf</a></code> l ≡ <code><a href="Control-Lens-Setter.html#v:imapOf">imapOf</a></code> l <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:const">const</a></code>
</pre><pre><code><a href="Control-Lens-Setter.html#v:imapOf">imapOf</a></code> :: <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> i s t a b -> (i -> a -> b) -> s -> t
<code><a href="Control-Lens-Setter.html#v:imapOf">imapOf</a></code> :: <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b -> (i -> a -> b) -> s -> t
<code><a href="Control-Lens-Setter.html#v:imapOf">imapOf</a></code> :: <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -> (i -> a -> b) -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:iover" class="def">iover</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> (i -> a -> b) -> s -> t <a href="src/Control-Lens-Setter.html#iover" class="link">Source</a> <a href="#v:iover" class="selflink">#</a></p><div class="doc"><p>Map with index. This is an alias for <code><a href="Control-Lens-Setter.html#v:imapOf">imapOf</a></code>.</p><p>When you do not need access to the index, then <code><a href="Control-Lens-Setter.html#v:over">over</a></code> is more liberal in what it can accept.</p><pre><code><a href="Control-Lens-Setter.html#v:over">over</a></code> l ≡ <code><a href="Control-Lens-Setter.html#v:iover">iover</a></code> l <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:const">const</a></code>
<code><a href="Control-Lens-Setter.html#v:iover">iover</a></code> l ≡ <code><a href="Control-Lens-Setter.html#v:over">over</a></code> l <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a></code>
</pre><pre><code><a href="Control-Lens-Setter.html#v:iover">iover</a></code> :: <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> i s t a b -> (i -> a -> b) -> s -> t
<code><a href="Control-Lens-Setter.html#v:iover">iover</a></code> :: <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b -> (i -> a -> b) -> s -> t
<code><a href="Control-Lens-Setter.html#v:iover">iover</a></code> :: <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -> (i -> a -> b) -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:iset" class="def">iset</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> (i -> b) -> s -> t <a href="src/Control-Lens-Setter.html#iset" class="link">Source</a> <a href="#v:iset" class="selflink">#</a></p><div class="doc"><p>Set with index. Equivalent to <code><a href="Control-Lens-Setter.html#v:iover">iover</a></code> with the current value ignored.</p><p>When you do not need access to the index, then <code><a href="Control-Lens-Setter.html#v:set">set</a></code> is more liberal in what it can accept.</p><pre><code><a href="Control-Lens-Setter.html#v:set">set</a></code> l ≡ <code><a href="Control-Lens-Setter.html#v:iset">iset</a></code> l <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:const">const</a></code>
</pre><pre><code><a href="Control-Lens-Setter.html#v:iset">iset</a></code> :: <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> i s t a b -> (i -> b) -> s -> t
<code><a href="Control-Lens-Setter.html#v:iset">iset</a></code> :: <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b -> (i -> b) -> s -> t
<code><a href="Control-Lens-Setter.html#v:iset">iset</a></code> :: <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -> (i -> b) -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:imodifying" class="def">imodifying</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a b -> (i -> a -> b) -> m () <a href="src/Control-Lens-Setter.html#imodifying" class="link">Source</a> <a href="#v:imodifying" class="selflink">#</a></p><div class="doc"><p>This is an alias for (<code><a href="Control-Lens-Setter.html#v:-37--64--61-">%@=</a></code>).</p></div></div><div class="top"><p class="src"><a id="v:isets" class="def">isets</a> :: ((i -> a -> b) -> s -> t) -> <a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a> i s t a b <a href="src/Control-Lens-Setter.html#isets" class="link">Source</a> <a href="#v:isets" class="selflink">#</a></p><div class="doc"><p>Build an <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> from an <code><a href="Control-Lens-Indexed.html#v:imap">imap</a></code>-like function.</p><p>Your supplied function <code>f</code> is required to satisfy:</p><pre>f <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code> ≡ <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code>
f g <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> f h ≡ f (g <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> h)
</pre><p>Equational reasoning:</p><pre><code><a href="Control-Lens-Setter.html#v:isets">isets</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="Control-Lens-Setter.html#v:iover">iover</a></code> ≡ <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code>
<code><a href="Control-Lens-Setter.html#v:iover">iover</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> <code><a href="Control-Lens-Setter.html#v:isets">isets</a></code> ≡ <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:id">id</a></code>
</pre><p>Another way to view <code><a href="Control-Lens-Setter.html#v:isets">isets</a></code> is that it takes a "semantic editor combinator"
which has been modified to carry an index and transforms it into a <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:-37--64--126-" class="def">(%@~)</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> (i -> a -> b) -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%25%40~" class="link">Source</a> <a href="#v:-37--64--126-" class="selflink">#</a></p><div class="doc"><p>Adjust every target of an <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code>, <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> or <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code>
with access to the index.</p><pre>(<code><a href="Control-Lens-Setter.html#v:-37--64--126-">%@~</a></code>) ≡ <code><a href="Control-Lens-Setter.html#v:iover">iover</a></code>
</pre><p>When you do not need access to the index then (<code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code>) is more liberal in what it can accept.</p><pre>l <code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code> f ≡ l <code><a href="Control-Lens-Setter.html#v:-37--64--126-">%@~</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:const">const</a></code> f
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-37--64--126-">%@~</a></code>) :: <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> i s t a b -> (i -> a -> b) -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-37--64--126-">%@~</a></code>) :: <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b -> (i -> a -> b) -> s -> t
(<code><a href="Control-Lens-Setter.html#v:-37--64--126-">%@~</a></code>) :: <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -> (i -> a -> b) -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:.-64--126-" class="def">(.@~)</a> :: <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s t a b -> (i -> b) -> s -> t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#.%40~" class="link">Source</a> <a href="#v:.-64--126-" class="selflink">#</a></p><div class="doc"><p>Replace every target of an <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code>, <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> or <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code>
with access to the index.</p><pre>(<code><a href="Control-Lens-Setter.html#v:.-64--126-">.@~</a></code>) ≡ <code><a href="Control-Lens-Setter.html#v:iset">iset</a></code>
</pre><p>When you do not need access to the index then (<code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code>) is more liberal in what it can accept.</p><pre>l <code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code> b ≡ l <code><a href="Control-Lens-Setter.html#v:.-64--126-">.@~</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:const">const</a></code> b
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:.-64--126-">.@~</a></code>) :: <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> i s t a b -> (i -> b) -> s -> t
(<code><a href="Control-Lens-Setter.html#v:.-64--126-">.@~</a></code>) :: <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b -> (i -> b) -> s -> t
(<code><a href="Control-Lens-Setter.html#v:.-64--126-">.@~</a></code>) :: <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -> (i -> b) -> s -> t
</pre></div></div><div class="top"><p class="src"><a id="v:-37--64--61-" class="def">(%@=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a b -> (i -> a -> b) -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#%25%40%3D" class="link">Source</a> <a href="#v:-37--64--61-" class="selflink">#</a></p><div class="doc"><p>Adjust every target in the current state of an <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code>, <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> or <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code>
with access to the index.</p><p>When you do not need access to the index then (<code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code>) is more liberal in what it can accept.</p><pre>l <code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code> f ≡ l <code><a href="Control-Lens-Setter.html#v:-37--64--61-">%@=</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:const">const</a></code> f
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:-37--64--61-">%@=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> i s s a b -> (i -> a -> b) -> m ()
(<code><a href="Control-Lens-Setter.html#v:-37--64--61-">%@=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s s a b -> (i -> a -> b) -> m ()
(<code><a href="Control-Lens-Setter.html#v:-37--64--61-">%@=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -> (i -> a -> b) -> m ()
</pre></div></div><div class="top"><p class="src"><a id="v:.-64--61-" class="def">(.@=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m => <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a b -> (i -> b) -> m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Setter.html#.%40%3D" class="link">Source</a> <a href="#v:.-64--61-" class="selflink">#</a></p><div class="doc"><p>Replace every target in the current state of an <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code>, <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> or <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code>
with access to the index.</p><p>When you do not need access to the index then (<code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code>) is more liberal in what it can accept.</p><pre>l <code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code> b ≡ l <code><a href="Control-Lens-Setter.html#v:.-64--61-">.@=</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:const">const</a></code> b
</pre><pre>(<code><a href="Control-Lens-Setter.html#v:.-64--61-">.@=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Setter.html#t:IndexedSetter">IndexedSetter</a></code> i s s a b -> (i -> b) -> m ()
(<code><a href="Control-Lens-Setter.html#v:.-64--61-">.@=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s s a b -> (i -> b) -> m ()
(<code><a href="Control-Lens-Setter.html#v:.-64--61-">.@=</a></code>) :: <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a></code> s m => <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -> (i -> b) -> m ()
</pre></div></div><h1 id="g:9">Arrow operators</h1><div class="top"><p class="src"><a id="v:assignA" class="def">assignA</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Arrow.html#t:Arrow">Arrow</a> p => <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> p s b -> p s t <a href="src/Control-Lens-Setter.html#assignA" class="link">Source</a> <a href="#v:assignA" class="selflink">#</a></p><div class="doc"><p>Run an arrow command and use the output to set all the targets of
a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> to the result.</p><p><code><a href="Control-Lens-Setter.html#v:assignA">assignA</a></code> can be used very similarly to (<code><a href="Control-Lens-Setter.html#v:-60--126-"><~</a></code>), except that the type of
the object being modified can change; for example:</p><pre>runKleisli action ((), (), ()) where
action = assignA _1 (Kleisli (const getVal1))
>>> assignA _2 (Kleisli (const getVal2))
>>> assignA _3 (Kleisli (const getVal3))
getVal1 :: Either String Int
getVal1 = ...
getVal2 :: Either String Bool
getVal2 = ...
getVal3 :: Either String Char
getVal3 = ...
</pre><p>has the type <code><code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Either.html#t:Either">Either</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a></code> (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a></code>, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code>, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Char.html#t:Char">Char</a></code>)</code></p><pre><code><a href="Control-Lens-Setter.html#v:assignA">assignA</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Arrow.html#t:Arrow">Arrow</a></code> p => <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a b -> p s b -> p s t
<code><a href="Control-Lens-Setter.html#v:assignA">assignA</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Arrow.html#t:Arrow">Arrow</a></code> p => <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b -> p s b -> p s t
<code><a href="Control-Lens-Setter.html#v:assignA">assignA</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Arrow.html#t:Arrow">Arrow</a></code> p => <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a b -> p s b -> p s t
<code><a href="Control-Lens-Setter.html#v:assignA">assignA</a></code> :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Arrow.html#t:Arrow">Arrow</a></code> p => <code><a href="Control-Lens-Setter.html#t:Setter">Setter</a></code> s t a b -> p s b -> p s t
</pre></div></div><h1 id="g:10">Exported for legible error messages</h1><div class="top"><p class="src"><span class="keyword">class</span> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a> f, <a href="file:///usr/share/doc/libghc-distributive-doc/html/Data-Distributive.html#t:Distributive">Distributive</a> f, <a href="Control-Lens-Traversal.html#t:Traversable">Traversable</a> f) => <a id="t:Settable" class="def">Settable</a> f <a href="src/Control-Lens-Internal-Setter.html#Settable" class="link">Source</a> <a href="#t:Settable" class="selflink">#</a></p><div class="doc"><p>Anything <code><a href="Control-Lens-Setter.html#t:Settable">Settable</a></code> must be isomorphic to the <code><a href="Control-Lens-Setter.html#t:Identity">Identity</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a></code>.</p></div><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Control-Lens-Internal-Setter.html#v:untainted">untainted</a></p></div><div class="subs instances"><p id="control.i:Settable" class="caption collapser" onclick="toggleSection('i:Settable')">Instances</p><div id="section.i:Settable" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Settable:Settable:1" class="instance expander" onclick="toggleSection('i:ic:Settable:Settable:1')"></span> <a href="Control-Lens-Setter.html#t:Settable">Settable</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span> <a href="src/Control-Lens-Internal-Setter.html#line-50" class="link">Source</a> <a href="#t:Settable" class="selflink">#</a></td><td class="doc"><p>So you can pass our <code><a href="Control-Lens-Setter.html#v:Setter">Setter</a></code> into combinators from other lens libraries.</p></td></tr><tr><td colspan="2"><div id="section.i:ic:Settable:Settable:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:untainted">untainted</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> a <a href="src/Control-Lens-Internal-Setter.html#untainted" class="link">Source</a> <a href="#v:untainted" class="selflink">#</a></p><p class="src"><a href="#v:untaintedDot">untaintedDot</a> :: <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p => p a (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> p a b <a href="src/Control-Lens-Internal-Setter.html#untaintedDot" class="link">Source</a> <a href="#v:untaintedDot" class="selflink">#</a></p><p class="src"><a href="#v:taintedDot">taintedDot</a> :: <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p => p a b -> p a (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) <a href="src/Control-Lens-Internal-Setter.html#taintedDot" class="link">Source</a> <a href="#v:taintedDot" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Settable:Settable:2" class="instance expander" onclick="toggleSection('i:ic:Settable:Settable:2')"></span> <a href="Control-Lens-Setter.html#t:Settable">Settable</a> f => <a href="Control-Lens-Setter.html#t:Settable">Settable</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/transformers-0.5.2.0/Control-Applicative-Backwards.html#t:Backwards">Backwards</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> f)</span> <a href="src/Control-Lens-Internal-Setter.html#line-59" class="link">Source</a> <a href="#t:Settable" class="selflink">#</a></td><td class="doc"><p><code><a href="Control-Lens-Fold.html#v:backwards">backwards</a></code></p></td></tr><tr><td colspan="2"><div id="section.i:ic:Settable:Settable:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:untainted">untainted</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/transformers-0.5.2.0/Control-Applicative-Backwards.html#t:Backwards">Backwards</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> f a -> a <a href="src/Control-Lens-Internal-Setter.html#untainted" class="link">Source</a> <a href="#v:untainted" class="selflink">#</a></p><p class="src"><a href="#v:untaintedDot">untaintedDot</a> :: <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p => p a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/transformers-0.5.2.0/Control-Applicative-Backwards.html#t:Backwards">Backwards</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> f b) -> p a b <a href="src/Control-Lens-Internal-Setter.html#untaintedDot" class="link">Source</a> <a href="#v:untaintedDot" class="selflink">#</a></p><p class="src"><a href="#v:taintedDot">taintedDot</a> :: <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p => p a b -> p a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/transformers-0.5.2.0/Control-Applicative-Backwards.html#t:Backwards">Backwards</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> f b) <a href="src/Control-Lens-Internal-Setter.html#taintedDot" class="link">Source</a> <a href="#v:taintedDot" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Settable:Settable:3" class="instance expander" onclick="toggleSection('i:ic:Settable:Settable:3')"></span> (<a href="Control-Lens-Setter.html#t:Settable">Settable</a> f, <a href="Control-Lens-Setter.html#t:Settable">Settable</a> g) => <a href="Control-Lens-Setter.html#t:Settable">Settable</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor-Compose.html#t:Compose">Compose</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> f g)</span> <a href="src/Control-Lens-Internal-Setter.html#line-63" class="link">Source</a> <a href="#t:Settable" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Settable:Settable:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:untainted">untainted</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor-Compose.html#t:Compose">Compose</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> f g a -> a <a href="src/Control-Lens-Internal-Setter.html#untainted" class="link">Source</a> <a href="#v:untainted" class="selflink">#</a></p><p class="src"><a href="#v:untaintedDot">untaintedDot</a> :: <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p => p a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor-Compose.html#t:Compose">Compose</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> f g b) -> p a b <a href="src/Control-Lens-Internal-Setter.html#untaintedDot" class="link">Source</a> <a href="#v:untaintedDot" class="selflink">#</a></p><p class="src"><a href="#v:taintedDot">taintedDot</a> :: <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p => p a b -> p a (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor-Compose.html#t:Compose">Compose</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> f g b) <a href="src/Control-Lens-Internal-Setter.html#taintedDot" class="link">Source</a> <a href="#v:taintedDot" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">newtype</span> <a id="t:Identity" class="def">Identity</a> a :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="#t:Identity" class="selflink">#</a></p><div class="doc"><p>Identity functor and monad. (a non-strict monad)</p><p><em>Since: 4.8.0.0</em></p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Identity" class="def">Identity</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:runIdentity" class="def">runIdentity</a> :: a</dfn><div class="doc empty"> </div></li></ul></div></td></tr></table></div><div class="subs instances"><p id="control.i:Identity" class="caption collapser" onclick="toggleSection('i:Identity')">Instances</p><div id="section.i:Identity" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Monad:1" class="instance expander" onclick="toggleSection('i:id:Identity:Monad:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Monad:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(>>=)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> (a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(>>)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Functor:2" class="instance expander" onclick="toggleSection('i:id:Identity:Functor:2')"></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-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Functor:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fmap">fmap</a> :: (a -> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:fmap" class="selflink">#</a></p><p class="src"><a href="#v:-60--36-">(<$)</a> :: a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> 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:Identity:MonadFix:3" class="instance expander" onclick="toggleSection('i:id:Identity:MonadFix:3')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad-Fix.html#t:MonadFix">MonadFix</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:MonadFix:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mfix">mfix</a> :: (a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:mfix" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Applicative:4" class="instance expander" onclick="toggleSection('i:id:Identity:Applicative:4')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Applicative:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:pure">pure</a> :: a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:pure" class="selflink">#</a></p><p class="src"><a href="#v:-60--42--62-">(<*>)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (a -> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:-60--42--62-" class="selflink">#</a></p><p class="src"><a href="#v:-42--62-">(*>)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:-42--62-" class="selflink">#</a></p><p class="src"><a href="#v:-60--42-">(<*)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:-60--42-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Foldable:5" class="instance expander" onclick="toggleSection('i:id:Identity:Foldable:5')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Foldable.html#t:Foldable">Foldable</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Foldable:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> m => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> m -> m <a href="#v:fold" class="selflink">#</a></p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="#v:foldr-39-" class="selflink">#</a></p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="#v:foldl" class="selflink">#</a></p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="#v:foldl-39-" class="selflink">#</a></p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> a <a href="#v:foldr1" class="selflink">#</a></p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> a <a href="#v:foldl1" class="selflink">#</a></p><p class="src"><a href="#v:toList">toList</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> [a] <a href="#v:toList" class="selflink">#</a></p><p class="src"><a href="#v:null">null</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:null" class="selflink">#</a></p><p class="src"><a href="#v:length">length</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:length" class="selflink">#</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> a => a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:elem" class="selflink">#</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ord">Ord</a> a => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> a <a href="#v:maximum" class="selflink">#</a></p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ord">Ord</a> a => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> a <a href="#v:minimum" class="selflink">#</a></p><p class="src"><a href="#v:sum">sum</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> a <a href="#v:sum" class="selflink">#</a></p><p class="src"><a href="#v:product">product</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> a <a href="#v:product" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Traversable:6" class="instance expander" onclick="toggleSection('i:id:Identity:Traversable:6')"></span> <a href="Control-Lens-Traversal.html#t:Traversable">Traversable</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Traversable:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:traverse">traverse</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a> f => (a -> f b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> f (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) <a href="#v:traverse" class="selflink">#</a></p><p class="src"><a href="#v:sequenceA">sequenceA</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a> f => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (f a) -> f (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:sequenceA" class="selflink">#</a></p><p class="src"><a href="#v:mapM">mapM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> m => (a -> m b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> m (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) <a href="#v:mapM" class="selflink">#</a></p><p class="src"><a href="#v:sequence">sequence</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> m => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (m a) -> m (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:sequence" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Generic1:7" class="instance expander" onclick="toggleSection('i:id:Identity:Generic1:7')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Generic1">Generic1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Generic1:7" class="inst-details hide"><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rep1">Rep1</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a>) :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="#t:Rep1" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:from1">from1</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rep1">Rep1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:from1" class="selflink">#</a></p><p class="src"><a href="#v:to1">to1</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rep1">Rep1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:to1" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Eq1:8" class="instance expander" onclick="toggleSection('i:id:Identity:Eq1:8')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor-Classes.html#t:Eq1">Eq1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Eq1:8" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:liftEq">liftEq</a> :: (a -> b -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:liftEq" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Ord1:9" class="instance expander" onclick="toggleSection('i:id:Identity:Ord1:9')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor-Classes.html#t:Ord1">Ord1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Ord1:9" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:liftCompare">liftCompare</a> :: (a -> b -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ordering">Ordering</a>) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ordering">Ordering</a> <a href="#v:liftCompare" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Read1:10" class="instance expander" onclick="toggleSection('i:id:Identity:Read1:10')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor-Classes.html#t:Read1">Read1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Read1:10" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:liftReadsPrec">liftReadsPrec</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadP.html#t:ReadS">ReadS</a> a) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadP.html#t:ReadS">ReadS</a> [a] -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadP.html#t:ReadS">ReadS</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:liftReadsPrec" class="selflink">#</a></p><p class="src"><a href="#v:liftReadList">liftReadList</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadP.html#t:ReadS">ReadS</a> a) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadP.html#t:ReadS">ReadS</a> [a] -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadP.html#t:ReadS">ReadS</a> [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] <a href="#v:liftReadList" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Show1:11" class="instance expander" onclick="toggleSection('i:id:Identity:Show1:11')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor-Classes.html#t:Show1">Show1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Show1:11" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:liftShowsPrec">liftShowsPrec</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a>) -> ([a] -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a>) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:liftShowsPrec" class="selflink">#</a></p><p class="src"><a href="#v:liftShowList">liftShowList</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a>) -> ([a] -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a>) -> [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:liftShowList" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:MonadZip:12" class="instance expander" onclick="toggleSection('i:id:Identity:MonadZip:12')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad-Zip.html#t:MonadZip">MonadZip</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:MonadZip:12" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzip">mzip</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (a, b) <a href="#v:mzip" class="selflink">#</a></p><p class="src"><a href="#v:mzipWith">mzipWith</a> :: (a -> b -> c) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> c <a href="#v:mzipWith" class="selflink">#</a></p><p class="src"><a href="#v:munzip">munzip</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (a, b) -> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a, <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) <a href="#v:munzip" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Comonad:13" class="instance expander" onclick="toggleSection('i:id:Identity:Comonad:13')"></span> <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Comonad:13" 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-Setter.html#t:Identity">Identity</a> a -> a <a href="#v:extract" class="selflink">#</a></p><p class="src"><a href="#v:duplicate">duplicate</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:duplicate" class="selflink">#</a></p><p class="src"><a href="#v:extend">extend</a> :: (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> 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:Identity:ComonadApply:14" class="instance expander" onclick="toggleSection('i:id:Identity:ComonadApply:14')"></span> <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:ComonadApply">ComonadApply</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:ComonadApply:14" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-60--64--62-">(<@>)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (a -> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:-60--64--62-" class="selflink">#</a></p><p class="src"><a href="#v:-64--62-">(@>)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:-64--62-" class="selflink">#</a></p><p class="src"><a href="#v:-60--64-">(<@)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:-60--64-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Distributive:15" class="instance expander" onclick="toggleSection('i:id:Identity:Distributive:15')"></span> <a href="file:///usr/share/doc/libghc-distributive-doc/html/Data-Distributive.html#t:Distributive">Distributive</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Distributive:15" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:distribute">distribute</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f => f (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (f a) <a href="#v:distribute" class="selflink">#</a></p><p class="src"><a href="#v:collect">collect</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f => (a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> f a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (f b) <a href="#v:collect" class="selflink">#</a></p><p class="src"><a href="#v:distributeM">distributeM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> m => m (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (m a) <a href="#v:distributeM" class="selflink">#</a></p><p class="src"><a href="#v:collectM">collectM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> m => (a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> m a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (m b) <a href="#v:collectM" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Hashable1:16" class="instance expander" onclick="toggleSection('i:id:Identity:Hashable1:16')"></span> <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable-Lifted.html#t:Hashable1">Hashable1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Hashable1:16" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:liftHashWithSalt">liftHashWithSalt</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a>) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:liftHashWithSalt" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Traversable1:17" class="instance expander" onclick="toggleSection('i:id:Identity:Traversable1:17')"></span> <a href="Control-Lens-Traversal.html#t:Traversable1">Traversable1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Traversable1:17" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:traverse1">traverse1</a> :: <a href="file:///usr/share/doc/libghc-semigroupoids-doc/html/Data-Functor-Apply.html#t:Apply">Apply</a> f => (a -> f b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> f (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) <a href="#v:traverse1" class="selflink">#</a></p><p class="src"><a href="#v:sequence1">sequence1</a> :: <a href="file:///usr/share/doc/libghc-semigroupoids-doc/html/Data-Functor-Apply.html#t:Apply">Apply</a> f => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (f b) -> f (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) <a href="#v:sequence1" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Apply:18" class="instance expander" onclick="toggleSection('i:id:Identity:Apply:18')"></span> <a href="file:///usr/share/doc/libghc-semigroupoids-doc/html/Data-Functor-Apply.html#t:Apply">Apply</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Apply:18" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-60-.-62-">(<.>)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (a -> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:-60-.-62-" class="selflink">#</a></p><p class="src"><a href="#v:.-62-">(.>)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:.-62-" class="selflink">#</a></p><p class="src"><a href="#v:-60-.">(<.)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:-60-." class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Bind:19" class="instance expander" onclick="toggleSection('i:id:Identity:Bind:19')"></span> <a href="file:///usr/share/doc/libghc-semigroupoids-doc/html/Data-Functor-Bind.html#t:Bind">Bind</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Bind:19" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--45-">(>>-)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> (a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:-62--62--45-" class="selflink">#</a></p><p class="src"><a href="#v:join">join</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:join" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Extend:20" class="instance expander" onclick="toggleSection('i:id:Identity:Extend:20')"></span> <a href="file:///usr/share/doc/libghc-semigroupoids-doc/html/Data-Functor-Extend.html#t:Extend">Extend</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Extend:20" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:duplicated">duplicated</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:duplicated" class="selflink">#</a></p><p class="src"><a href="#v:extended">extended</a> :: (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:extended" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Foldable1:21" class="instance expander" onclick="toggleSection('i:id:Identity:Foldable1:21')"></span> <a href="file:///usr/share/doc/libghc-semigroupoids-doc/html/Data-Semigroup-Foldable-Class.html#t:Foldable1">Foldable1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Foldable1:21" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold1">fold1</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Semigroup.html#t:Semigroup">Semigroup</a> m => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> m -> m <a href="#v:fold1" class="selflink">#</a></p><p class="src"><a href="#v:foldMap1">foldMap1</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Semigroup.html#t:Semigroup">Semigroup</a> m => (a -> m) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> m <a href="#v:foldMap1" class="selflink">#</a></p><p class="src"><a href="#v:toNonEmpty">toNonEmpty</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-List-NonEmpty.html#t:NonEmpty">NonEmpty</a> a <a href="#v:toNonEmpty" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Settable:22" class="instance expander" onclick="toggleSection('i:id:Identity:Settable:22')"></span> <a href="Control-Lens-Setter.html#t:Settable">Settable</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span> <a href="src/Control-Lens-Internal-Setter.html#line-50" class="link">Source</a> <a href="#t:Settable" class="selflink">#</a></td><td class="doc"><p>So you can pass our <code><a href="Control-Lens-Setter.html#v:Setter">Setter</a></code> into combinators from other lens libraries.</p></td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Settable:22" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:untainted">untainted</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> a <a href="src/Control-Lens-Internal-Setter.html#untainted" class="link">Source</a> <a href="#v:untainted" class="selflink">#</a></p><p class="src"><a href="#v:untaintedDot">untaintedDot</a> :: <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p => p a (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) -> p a b <a href="src/Control-Lens-Internal-Setter.html#untaintedDot" class="link">Source</a> <a href="#v:untaintedDot" class="selflink">#</a></p><p class="src"><a href="#v:taintedDot">taintedDot</a> :: <a href="Control-Lens-Iso.html#t:Profunctor">Profunctor</a> p => p a b -> p a (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) <a href="src/Control-Lens-Internal-Setter.html#taintedDot" class="link">Source</a> <a href="#v:taintedDot" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Representable:23" class="instance expander" onclick="toggleSection('i:id:Identity:Representable:23')"></span> Representable <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Representable:23" class="inst-details hide"><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> Rep (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a>) :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:tabulate">tabulate</a> :: (Rep <a href="Control-Lens-Setter.html#t:Identity">Identity</a> -> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a</p><p class="src"><a href="#v:index">index</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> Rep <a href="Control-Lens-Setter.html#t:Identity">Identity</a> -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Sieve:24" class="instance expander" onclick="toggleSection('i:id:Identity:Sieve:24')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Sieve.html#t:Sieve">Sieve</a> (->) <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Sieve:24" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sieve">sieve</a> :: (a -> b) -> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:sieve" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Sieve:25" class="instance expander" onclick="toggleSection('i:id:Identity:Sieve:25')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Sieve.html#t:Sieve">Sieve</a> <a href="Control-Lens-Reified.html#t:ReifiedGetter">ReifiedGetter</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span> <a href="#t:Sieve" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Sieve:25" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sieve">sieve</a> :: <a href="Control-Lens-Reified.html#t:ReifiedGetter">ReifiedGetter</a> a b -> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="#v:sieve" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Cosieve:26" class="instance expander" onclick="toggleSection('i:id:Identity:Cosieve:26')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Sieve.html#t:Cosieve">Cosieve</a> (->) <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Cosieve:26" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:cosieve">cosieve</a> :: (a -> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="#v:cosieve" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Cosieve:27" class="instance expander" onclick="toggleSection('i:id:Identity:Cosieve:27')"></span> <a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Sieve.html#t:Cosieve">Cosieve</a> <a href="Control-Lens-Reified.html#t:ReifiedGetter">ReifiedGetter</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span> <a href="#t:Cosieve" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Cosieve:27" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:cosieve">cosieve</a> :: <a href="Control-Lens-Reified.html#t:ReifiedGetter">ReifiedGetter</a> a b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="#v:cosieve" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:TraversableWithIndex:28" class="instance expander" onclick="toggleSection('i:id:Identity:TraversableWithIndex:28')"></span> <a href="Control-Lens-Indexed.html#t:TraversableWithIndex">TraversableWithIndex</a> () <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span> <a href="src/Control-Lens-Indexed.html#line-611" class="link">Source</a> <a href="#t:TraversableWithIndex" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:TraversableWithIndex:28" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:itraverse">itraverse</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a> f => (() -> a -> f b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> f (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) <a href="src/Control-Lens-Indexed.html#itraverse" class="link">Source</a> <a href="#v:itraverse" class="selflink">#</a></p><p class="src"><a href="#v:itraversed">itraversed</a> :: (<a href="Control-Lens-Internal-Indexed.html#t:Indexable">Indexable</a> () p, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a> f) => p a (f b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> f (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) <a href="src/Control-Lens-Indexed.html#itraversed" class="link">Source</a> <a href="#v:itraversed" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:FoldableWithIndex:29" class="instance expander" onclick="toggleSection('i:id:Identity:FoldableWithIndex:29')"></span> <a href="Control-Lens-Indexed.html#t:FoldableWithIndex">FoldableWithIndex</a> () <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span> <a href="src/Control-Lens-Indexed.html#line-607" class="link">Source</a> <a href="#t:FoldableWithIndex" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:FoldableWithIndex:29" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ifoldMap">ifoldMap</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> m => (() -> a -> m) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> m <a href="src/Control-Lens-Indexed.html#ifoldMap" class="link">Source</a> <a href="#v:ifoldMap" class="selflink">#</a></p><p class="src"><a href="#v:ifolded">ifolded</a> :: (<a href="Control-Lens-Internal-Indexed.html#t:Indexable">Indexable</a> () p, <a href="Control-Lens-Getter.html#t:Contravariant">Contravariant</a> f, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a> f) => p a (f a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> f (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="src/Control-Lens-Indexed.html#ifolded" class="link">Source</a> <a href="#v:ifolded" class="selflink">#</a></p><p class="src"><a href="#v:ifoldr">ifoldr</a> :: (() -> a -> b -> b) -> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="src/Control-Lens-Indexed.html#ifoldr" class="link">Source</a> <a href="#v:ifoldr" class="selflink">#</a></p><p class="src"><a href="#v:ifoldl">ifoldl</a> :: (() -> b -> a -> b) -> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="src/Control-Lens-Indexed.html#ifoldl" class="link">Source</a> <a href="#v:ifoldl" class="selflink">#</a></p><p class="src"><a href="#v:ifoldr-39-">ifoldr'</a> :: (() -> a -> b -> b) -> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="src/Control-Lens-Indexed.html#ifoldr%27" class="link">Source</a> <a href="#v:ifoldr-39-" class="selflink">#</a></p><p class="src"><a href="#v:ifoldl-39-">ifoldl'</a> :: (() -> b -> a -> b) -> b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="src/Control-Lens-Indexed.html#ifoldl%27" class="link">Source</a> <a href="#v:ifoldl-39-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:FunctorWithIndex:30" class="instance expander" onclick="toggleSection('i:id:Identity:FunctorWithIndex:30')"></span> <a href="Control-Lens-Indexed.html#t:FunctorWithIndex">FunctorWithIndex</a> () <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span> <a href="src/Control-Lens-Indexed.html#line-603" class="link">Source</a> <a href="#t:FunctorWithIndex" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:FunctorWithIndex:30" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:imap">imap</a> :: (() -> a -> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> b <a href="src/Control-Lens-Indexed.html#imap" class="link">Source</a> <a href="#v:imap" class="selflink">#</a></p><p class="src"><a href="#v:imapped">imapped</a> :: (<a href="Control-Lens-Internal-Indexed.html#t:Indexable">Indexable</a> () p, <a href="Control-Lens-Setter.html#t:Settable">Settable</a> f) => p a (f b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> f (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) <a href="src/Control-Lens-Indexed.html#imapped" class="link">Source</a> <a href="#v:imapped" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:ComonadCofree:31" class="instance expander" onclick="toggleSection('i:id:Identity:ComonadCofree:31')"></span> <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> w => <a href="file:///usr/share/doc/libghc-free-doc/html/Control-Comonad-Cofree-Class.html#t:ComonadCofree">ComonadCofree</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (<a href="file:///usr/share/doc/libghc-free-doc/html/Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:ComonadCofree:31" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:unwrap">unwrap</a> :: <a href="file:///usr/share/doc/libghc-free-doc/html/Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (<a href="file:///usr/share/doc/libghc-free-doc/html/Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a) <a href="#v:unwrap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:MonadFree:32" class="instance expander" onclick="toggleSection('i:id:Identity:MonadFree:32')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> m => <a href="file:///usr/share/doc/libghc-free-doc/html/Control-Monad-Free-Class.html#t:MonadFree">MonadFree</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (<a href="file:///usr/share/doc/libghc-free-doc/html/Control-Monad-Trans-Iter.html#t:IterT">IterT</a> m)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:MonadFree:32" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:wrap">wrap</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> (<a href="file:///usr/share/doc/libghc-free-doc/html/Control-Monad-Trans-Iter.html#t:IterT">IterT</a> m a) -> <a href="file:///usr/share/doc/libghc-free-doc/html/Control-Monad-Trans-Iter.html#t:IterT">IterT</a> m a <a href="#v:wrap" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Bounded:33" class="instance expander" onclick="toggleSection('i:id:Identity:Bounded:33')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Bounded">Bounded</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Bounded">Bounded</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Bounded:33" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:minBound">minBound</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:minBound" class="selflink">#</a></p><p class="src"><a href="#v:maxBound">maxBound</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:maxBound" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Enum:34" class="instance expander" onclick="toggleSection('i:id:Identity:Enum:34')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Enum">Enum</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Enum">Enum</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Enum:34" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:succ">succ</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:succ" class="selflink">#</a></p><p class="src"><a href="#v:pred">pred</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:pred" class="selflink">#</a></p><p class="src"><a href="#v:toEnum">toEnum</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:toEnum" class="selflink">#</a></p><p class="src"><a href="#v:fromEnum">fromEnum</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:fromEnum" class="selflink">#</a></p><p class="src"><a href="#v:enumFrom">enumFrom</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] <a href="#v:enumFrom" class="selflink">#</a></p><p class="src"><a href="#v:enumFromThen">enumFromThen</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] <a href="#v:enumFromThen" class="selflink">#</a></p><p class="src"><a href="#v:enumFromTo">enumFromTo</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] <a href="#v:enumFromTo" class="selflink">#</a></p><p class="src"><a href="#v:enumFromThenTo">enumFromThenTo</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] <a href="#v:enumFromThenTo" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Eq:35" class="instance expander" onclick="toggleSection('i:id:Identity:Eq:35')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Eq:35" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Floating:36" class="instance expander" onclick="toggleSection('i:id:Identity:Floating:36')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Floating:36" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:pi">pi</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:pi" class="selflink">#</a></p><p class="src"><a href="#v:exp">exp</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:exp" class="selflink">#</a></p><p class="src"><a href="#v:log">log</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:log" class="selflink">#</a></p><p class="src"><a href="#v:sqrt">sqrt</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:sqrt" class="selflink">#</a></p><p class="src"><a href="#v:-42--42-">(**)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:-42--42-" class="selflink">#</a></p><p class="src"><a href="#v:logBase">logBase</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:logBase" class="selflink">#</a></p><p class="src"><a href="#v:sin">sin</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:sin" class="selflink">#</a></p><p class="src"><a href="#v:cos">cos</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:cos" class="selflink">#</a></p><p class="src"><a href="#v:tan">tan</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:tan" class="selflink">#</a></p><p class="src"><a href="#v:asin">asin</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:asin" class="selflink">#</a></p><p class="src"><a href="#v:acos">acos</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:acos" class="selflink">#</a></p><p class="src"><a href="#v:atan">atan</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:atan" class="selflink">#</a></p><p class="src"><a href="#v:sinh">sinh</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:sinh" class="selflink">#</a></p><p class="src"><a href="#v:cosh">cosh</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:cosh" class="selflink">#</a></p><p class="src"><a href="#v:tanh">tanh</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:tanh" class="selflink">#</a></p><p class="src"><a href="#v:asinh">asinh</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:asinh" class="selflink">#</a></p><p class="src"><a href="#v:acosh">acosh</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:acosh" class="selflink">#</a></p><p class="src"><a href="#v:atanh">atanh</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:atanh" class="selflink">#</a></p><p class="src"><a href="#v:log1p">log1p</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:log1p" class="selflink">#</a></p><p class="src"><a href="#v:expm1">expm1</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:expm1" class="selflink">#</a></p><p class="src"><a href="#v:log1pexp">log1pexp</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:log1pexp" class="selflink">#</a></p><p class="src"><a href="#v:log1mexp">log1mexp</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:log1mexp" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Fractional:37" class="instance expander" onclick="toggleSection('i:id:Identity:Fractional:37')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Fractional:37" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-47-">(/)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:-47-" class="selflink">#</a></p><p class="src"><a href="#v:recip">recip</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:recip" class="selflink">#</a></p><p class="src"><a href="#v:fromRational">fromRational</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Rational">Rational</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:fromRational" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Integral:38" class="instance expander" onclick="toggleSection('i:id:Identity:Integral:38')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Integral:38" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:quot">quot</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:quot" class="selflink">#</a></p><p class="src"><a href="#v:rem">rem</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:rem" class="selflink">#</a></p><p class="src"><a href="#v:div">div</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:div" class="selflink">#</a></p><p class="src"><a href="#v:mod">mod</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:mod" class="selflink">#</a></p><p class="src"><a href="#v:quotRem">quotRem</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a, <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:quotRem" class="selflink">#</a></p><p class="src"><a href="#v:divMod">divMod</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a, <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:divMod" class="selflink">#</a></p><p class="src"><a href="#v:toInteger">toInteger</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integer">Integer</a> <a href="#v:toInteger" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Data:39" class="instance expander" onclick="toggleSection('i:id:Identity:Data:39')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Data:39" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> d => c (d -> b) -> d -> c b) -> (<span class="keyword">forall</span> g. g -> c g) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> c (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> b => c (b -> r) -> c r) -> (<span class="keyword">forall</span> r. r -> c r) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Constr">Constr</a> -> c (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Constr">Constr</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:DataType">DataType</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Typeable-Internal.html#t:Typeable">Typeable</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a>) t => (<span class="keyword">forall</span> d. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> d => c (t d)) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (c (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)) <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Typeable-Internal.html#t:Typeable">Typeable</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a>) t => (<span class="keyword">forall</span> d e. (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> d, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> e) => c (t d e)) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (c (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)) <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> b => b -> b) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -> r' -> r) -> r -> (<span class="keyword">forall</span> d. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> d => d -> r') -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> r <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: (r' -> r -> r) -> r -> (<span class="keyword">forall</span> d. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> d => d -> r') -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> r <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> d => d -> u) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> [u] <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> (<span class="keyword">forall</span> d. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> d => d -> u) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> u <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> m => (<span class="keyword">forall</span> d. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> d => d -> m d) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> m (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:MonadPlus">MonadPlus</a> m => (<span class="keyword">forall</span> d. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> d => d -> m d) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> m (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:MonadPlus">MonadPlus</a> m => (<span class="keyword">forall</span> d. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Data.html#t:Data">Data</a> d => d -> m d) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> m (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:gmapMo" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Num:40" class="instance expander" onclick="toggleSection('i:id:Identity:Num:40')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Num:40" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-43-">(+)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:-43-" class="selflink">#</a></p><p class="src"><a href="#v:-45-">(-)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:-45-" class="selflink">#</a></p><p class="src"><a href="#v:-42-">(*)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:-42-" class="selflink">#</a></p><p class="src"><a href="#v:negate">negate</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:negate" class="selflink">#</a></p><p class="src"><a href="#v:abs">abs</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:abs" class="selflink">#</a></p><p class="src"><a href="#v:signum">signum</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:signum" class="selflink">#</a></p><p class="src"><a href="#v:fromInteger">fromInteger</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integer">Integer</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:fromInteger" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Ord:41" class="instance expander" onclick="toggleSection('i:id:Identity:Ord:41')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ord">Ord</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ord">Ord</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Ord:41" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:compare">compare</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ordering">Ordering</a> <a href="#v:compare" class="selflink">#</a></p><p class="src"><a href="#v:-60-">(<)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-60-" class="selflink">#</a></p><p class="src"><a href="#v:-60--61-">(<=)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-60--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62-">(>)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-62-" class="selflink">#</a></p><p class="src"><a href="#v:-62--61-">(>=)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-62--61-" class="selflink">#</a></p><p class="src"><a href="#v:max">max</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:max" class="selflink">#</a></p><p class="src"><a href="#v:min">min</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:min" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Read:42" class="instance expander" onclick="toggleSection('i:id:Identity:Read:42')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Read.html#t:Read">Read</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Read.html#t:Read">Read</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc"><p>This instance would be equivalent to the derived instances of the
<code><a href="Control-Lens-Setter.html#t:Identity">Identity</a></code> newtype if the <code><a href="Control-Lens-Setter.html#v:runIdentity">runIdentity</a></code> field were removed</p></td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Read:42" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:readsPrec">readsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadP.html#t:ReadS">ReadS</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:readsPrec" class="selflink">#</a></p><p class="src"><a href="#v:readList">readList</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadP.html#t:ReadS">ReadS</a> [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] <a href="#v:readList" class="selflink">#</a></p><p class="src"><a href="#v:readPrec">readPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:readPrec" class="selflink">#</a></p><p class="src"><a href="#v:readListPrec">readListPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] <a href="#v:readListPrec" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Real:43" class="instance expander" onclick="toggleSection('i:id:Identity:Real:43')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Real">Real</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Real">Real</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Real:43" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:toRational">toRational</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Rational">Rational</a> <a href="#v:toRational" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:RealFloat:44" class="instance expander" onclick="toggleSection('i:id:Identity:RealFloat:44')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:RealFloat">RealFloat</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:RealFloat">RealFloat</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:RealFloat:44" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:floatRadix">floatRadix</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integer">Integer</a> <a href="#v:floatRadix" class="selflink">#</a></p><p class="src"><a href="#v:floatDigits">floatDigits</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:floatDigits" class="selflink">#</a></p><p class="src"><a href="#v:floatRange">floatRange</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a>, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a>) <a href="#v:floatRange" class="selflink">#</a></p><p class="src"><a href="#v:decodeFloat">decodeFloat</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integer">Integer</a>, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a>) <a href="#v:decodeFloat" class="selflink">#</a></p><p class="src"><a href="#v:encodeFloat">encodeFloat</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integer">Integer</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:encodeFloat" class="selflink">#</a></p><p class="src"><a href="#v:exponent">exponent</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:exponent" class="selflink">#</a></p><p class="src"><a href="#v:significand">significand</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:significand" class="selflink">#</a></p><p class="src"><a href="#v:scaleFloat">scaleFloat</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:scaleFloat" class="selflink">#</a></p><p class="src"><a href="#v:isNaN">isNaN</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:isNaN" class="selflink">#</a></p><p class="src"><a href="#v:isInfinite">isInfinite</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:isInfinite" class="selflink">#</a></p><p class="src"><a href="#v:isDenormalized">isDenormalized</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:isDenormalized" class="selflink">#</a></p><p class="src"><a href="#v:isNegativeZero">isNegativeZero</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:isNegativeZero" class="selflink">#</a></p><p class="src"><a href="#v:isIEEE">isIEEE</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:isIEEE" class="selflink">#</a></p><p class="src"><a href="#v:atan2">atan2</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:atan2" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:RealFrac:45" class="instance expander" onclick="toggleSection('i:id:Identity:RealFrac:45')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:RealFrac">RealFrac</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:RealFrac">RealFrac</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:RealFrac:45" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:properFraction">properFraction</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> b => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> (b, <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:properFraction" class="selflink">#</a></p><p class="src"><a href="#v:truncate">truncate</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> b => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="#v:truncate" class="selflink">#</a></p><p class="src"><a href="#v:round">round</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> b => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="#v:round" class="selflink">#</a></p><p class="src"><a href="#v:ceiling">ceiling</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> b => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="#v:ceiling" class="selflink">#</a></p><p class="src"><a href="#v:floor">floor</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> b => <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> b <a href="#v:floor" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Show:46" class="instance expander" onclick="toggleSection('i:id:Identity:Show:46')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc"><p>This instance would be equivalent to the derived instances of the
<code><a href="Control-Lens-Setter.html#t:Identity">Identity</a></code> newtype if the <code><a href="Control-Lens-Setter.html#v:runIdentity">runIdentity</a></code> field were removed</p></td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Show:46" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Ix:47" class="instance expander" onclick="toggleSection('i:id:Identity:Ix:47')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ix.html#t:Ix">Ix</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ix.html#t:Ix">Ix</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Ix:47" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:range">range</a> :: (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a, <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] <a href="#v:range" class="selflink">#</a></p><p class="src"><a href="#v:index">index</a> :: (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a, <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:index" class="selflink">#</a></p><p class="src"><a href="#v:unsafeIndex">unsafeIndex</a> :: (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a, <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a></p><p class="src"><a href="#v:inRange">inRange</a> :: (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a, <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:inRange" class="selflink">#</a></p><p class="src"><a href="#v:rangeSize">rangeSize</a> :: (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a, <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:rangeSize" class="selflink">#</a></p><p class="src"><a href="#v:unsafeRangeSize">unsafeRangeSize</a> :: (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a, <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:IsString:48" class="instance expander" onclick="toggleSection('i:id:Identity:IsString:48')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:IsString">IsString</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:IsString">IsString</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:IsString:48" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fromString">fromString</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:fromString" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Generic:49" class="instance expander" onclick="toggleSection('i:id:Identity:Generic:49')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Generic">Generic</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Generic:49" class="inst-details hide"><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rep">Rep</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="#t:Rep" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:from">from</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rep">Rep</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) x <a href="#v:from" class="selflink">#</a></p><p class="src"><a href="#v:to">to</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rep">Rep</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) x -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:to" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Semigroup:50" class="instance expander" onclick="toggleSection('i:id:Identity:Semigroup:50')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Semigroup.html#t:Semigroup">Semigroup</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Semigroup.html#t:Semigroup">Semigroup</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Semigroup:50" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-60--62-">(<>)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:-60--62-" class="selflink">#</a></p><p class="src"><a href="#v:sconcat">sconcat</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-List-NonEmpty.html#t:NonEmpty">NonEmpty</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:sconcat" class="selflink">#</a></p><p class="src"><a href="#v:stimes">stimes</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a> b => b -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:stimes" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Monoid:51" class="instance expander" onclick="toggleSection('i:id:Identity:Monoid:51')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Monoid:51" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mempty">mempty</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:mempty" class="selflink">#</a></p><p class="src"><a href="#v:mappend">mappend</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:mappend" class="selflink">#</a></p><p class="src"><a href="#v:mconcat">mconcat</a> :: [<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a] -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:mconcat" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Storable:52" class="instance expander" onclick="toggleSection('i:id:Identity:Storable:52')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Foreign-Storable.html#t:Storable">Storable</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Foreign-Storable.html#t:Storable">Storable</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Storable:52" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:sizeOf">sizeOf</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:sizeOf" class="selflink">#</a></p><p class="src"><a href="#v:alignment">alignment</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:alignment" class="selflink">#</a></p><p class="src"><a href="#v:peekElemOff">peekElemOff</a> :: <a href="Control-Lens-Internal-CTypes.html#t:Ptr">Ptr</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:peekElemOff" class="selflink">#</a></p><p class="src"><a href="#v:pokeElemOff">pokeElemOff</a> :: <a href="Control-Lens-Internal-CTypes.html#t:Ptr">Ptr</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> () <a href="#v:pokeElemOff" class="selflink">#</a></p><p class="src"><a href="#v:peekByteOff">peekByteOff</a> :: <a href="Control-Lens-Internal-CTypes.html#t:Ptr">Ptr</a> b -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:peekByteOff" class="selflink">#</a></p><p class="src"><a href="#v:pokeByteOff">pokeByteOff</a> :: <a href="Control-Lens-Internal-CTypes.html#t:Ptr">Ptr</a> b -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> () <a href="#v:pokeByteOff" class="selflink">#</a></p><p class="src"><a href="#v:peek">peek</a> :: <a href="Control-Lens-Internal-CTypes.html#t:Ptr">Ptr</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) <a href="#v:peek" class="selflink">#</a></p><p class="src"><a href="#v:poke">poke</a> :: <a href="Control-Lens-Internal-CTypes.html#t:Ptr">Ptr</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> () <a href="#v:poke" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Bits:53" class="instance expander" onclick="toggleSection('i:id:Identity:Bits:53')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bits.html#t:Bits">Bits</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bits.html#t:Bits">Bits</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Bits:53" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:.-38-.">(.&.)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:.-38-." class="selflink">#</a></p><p class="src"><a href="#v:.-124-.">(.|.)</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:.-124-." class="selflink">#</a></p><p class="src"><a href="#v:xor">xor</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:xor" class="selflink">#</a></p><p class="src"><a href="#v:complement">complement</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:complement" class="selflink">#</a></p><p class="src"><a href="#v:shift">shift</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:shift" class="selflink">#</a></p><p class="src"><a href="#v:rotate">rotate</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:rotate" class="selflink">#</a></p><p class="src"><a href="#v:zeroBits">zeroBits</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:zeroBits" class="selflink">#</a></p><p class="src"><a href="#v:bit">bit</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:bit" class="selflink">#</a></p><p class="src"><a href="#v:setBit">setBit</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:setBit" class="selflink">#</a></p><p class="src"><a href="#v:clearBit">clearBit</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:clearBit" class="selflink">#</a></p><p class="src"><a href="#v:complementBit">complementBit</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:complementBit" class="selflink">#</a></p><p class="src"><a href="#v:testBit">testBit</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:testBit" class="selflink">#</a></p><p class="src"><a href="#v:bitSizeMaybe">bitSizeMaybe</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:bitSizeMaybe" class="selflink">#</a></p><p class="src"><a href="#v:bitSize">bitSize</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:bitSize" class="selflink">#</a></p><p class="src"><a href="#v:isSigned">isSigned</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:isSigned" class="selflink">#</a></p><p class="src"><a href="#v:shiftL">shiftL</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:shiftL" class="selflink">#</a></p><p class="src"><a href="#v:unsafeShiftL">unsafeShiftL</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:unsafeShiftL" class="selflink">#</a></p><p class="src"><a href="#v:shiftR">shiftR</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:shiftR" class="selflink">#</a></p><p class="src"><a href="#v:unsafeShiftR">unsafeShiftR</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:unsafeShiftR" class="selflink">#</a></p><p class="src"><a href="#v:rotateL">rotateL</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:rotateL" class="selflink">#</a></p><p class="src"><a href="#v:rotateR">rotateR</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a <a href="#v:rotateR" class="selflink">#</a></p><p class="src"><a href="#v:popCount">popCount</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:popCount" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:FiniteBits:54" class="instance expander" onclick="toggleSection('i:id:Identity:FiniteBits:54')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bits.html#t:FiniteBits">FiniteBits</a> a => <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bits.html#t:FiniteBits">FiniteBits</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:FiniteBits:54" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:finiteBitSize">finiteBitSize</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:finiteBitSize" class="selflink">#</a></p><p class="src"><a href="#v:countLeadingZeros">countLeadingZeros</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:countLeadingZeros" class="selflink">#</a></p><p class="src"><a href="#v:countTrailingZeros">countTrailingZeros</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:countTrailingZeros" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Hashable:55" class="instance expander" onclick="toggleSection('i:id:Identity:Hashable:55')"></span> <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> a => <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Hashable:55" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:hashWithSalt">hashWithSalt</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:hashWithSalt" class="selflink">#</a></p><p class="src"><a href="#v:hash">hash</a> :: <a href="Control-Lens-Setter.html#t:Identity">Identity</a> a -> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:hash" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Wrapped:56" class="instance expander" onclick="toggleSection('i:id:Identity:Wrapped:56')"></span> <a href="Control-Lens-Wrapped.html#t:Wrapped">Wrapped</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span> <a href="src/Control-Lens-Wrapped.html#line-397" class="link">Source</a> <a href="#t:Wrapped" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Wrapped:56" class="inst-details hide"><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="Control-Lens-Wrapped.html#t:Unwrapped">Unwrapped</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="src/Control-Lens-Wrapped.html#Unwrapped" class="link">Source</a> <a href="#t:Unwrapped" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:_Wrapped-39-">_Wrapped'</a> :: <a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) (<a href="Control-Lens-Wrapped.html#t:Unwrapped">Unwrapped</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)) <a href="src/Control-Lens-Wrapped.html#_Wrapped%27" class="link">Source</a> <a href="#v:_Wrapped-39-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Ixed:57" class="instance expander" onclick="toggleSection('i:id:Identity:Ixed:57')"></span> <a href="Control-Lens-At.html#t:Ixed">Ixed</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span> <a href="src/Control-Lens-At.html#line-260" class="link">Source</a> <a href="#t:Ixed" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Ixed:57" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ix">ix</a> :: <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) -> <a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) (<a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)) <a href="src/Control-Lens-At.html#ix" class="link">Source</a> <a href="#v:ix" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Rewrapped:58" class="instance expander" onclick="toggleSection('i:id:Identity:Rewrapped:58')"></span> (~) <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> t (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) => <a href="Control-Lens-Wrapped.html#t:Rewrapped">Rewrapped</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) t</span> <a href="src/Control-Lens-Wrapped.html#line-396" class="link">Source</a> <a href="#t:Rewrapped" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Rewrapped:58" class="inst-details hide"></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Field1:59" class="instance expander" onclick="toggleSection('i:id:Identity:Field1:59')"></span> <a href="Control-Lens-Tuple.html#t:Field1">Field1</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) a b</span> <a href="src/Control-Lens-Tuple.html#line-108" class="link">Source</a> <a href="#t:Field1" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Field1:59" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:_1">_1</a> :: <a href="Control-Lens-Type.html#t:Lens">Lens</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) a b <a href="src/Control-Lens-Tuple.html#_1" class="link">Source</a> <a href="#v:_1" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Each:60" class="instance expander" onclick="toggleSection('i:id:Identity:Each:60')"></span> <a href="Control-Lens-Each.html#t:Each">Each</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) a b</span> <a href="src/Control-Lens-Each.html#line-159" class="link">Source</a> <a href="#t:Each" class="selflink">#</a></td><td class="doc"><pre><code><a href="Control-Lens-Each.html#v:each">each</a></code> :: <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> (<code><a href="Control-Lens-Setter.html#t:Identity">Identity</a></code> a) (<code><a href="Control-Lens-Setter.html#t:Identity">Identity</a></code> b) a b</pre></td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Each:60" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:each">each</a> :: <a href="Control-Lens-Type.html#t:Traversal">Traversal</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> b) a b <a href="src/Control-Lens-Each.html#each" class="link">Source</a> <a href="#v:each" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Rep1:61" class="instance expander" onclick="toggleSection('i:id:Identity:Rep1:61')"></span> <span class="keyword">type</span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rep1">Rep1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Rep1:61" class="inst-details hide"><div class="src"><span class="keyword">type</span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rep1">Rep1</a> <a href="Control-Lens-Setter.html#t:Identity">Identity</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:D1">D1</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:MetaData">MetaData</a> "Identity" "Data.Functor.Identity" "base" <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#v:True">True</a>) (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:C1">C1</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:MetaCons">MetaCons</a> "Identity" <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:PrefixI">PrefixI</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#v:True">True</a>) (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:S1">S1</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:MetaSel">MetaSel</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#v:Just">Just</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-TypeLits.html#t:Symbol">Symbol</a> "runIdentity") <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:NoSourceUnpackedness">NoSourceUnpackedness</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:NoSourceStrictness">NoSourceStrictness</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:DecidedLazy">DecidedLazy</a>) <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Par1">Par1</a>))</div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Rep:62" class="instance expander" onclick="toggleSection('i:id:Identity:Rep:62')"></span> <span class="keyword">type</span> Rep <a href="Control-Lens-Setter.html#t:Identity">Identity</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Rep:62" class="inst-details hide"><div class="src"><span class="keyword">type</span> Rep <a href="Control-Lens-Setter.html#t:Identity">Identity</a> = ()</div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Rep:63" class="instance expander" onclick="toggleSection('i:id:Identity:Rep:63')"></span> <span class="keyword">type</span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rep">Rep</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Rep:63" class="inst-details hide"><div class="src"><span class="keyword">type</span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rep">Rep</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:D1">D1</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:MetaData">MetaData</a> "Identity" "Data.Functor.Identity" "base" <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#v:True">True</a>) (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:C1">C1</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:MetaCons">MetaCons</a> "Identity" <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:PrefixI">PrefixI</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#v:True">True</a>) (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:S1">S1</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:MetaSel">MetaSel</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#v:Just">Just</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-TypeLits.html#t:Symbol">Symbol</a> "runIdentity") <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:NoSourceUnpackedness">NoSourceUnpackedness</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:NoSourceStrictness">NoSourceStrictness</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#v:DecidedLazy">DecidedLazy</a>) (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Generics.html#t:Rec0">Rec0</a> a)))</div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Unwrapped:64" class="instance expander" onclick="toggleSection('i:id:Identity:Unwrapped:64')"></span> <span class="keyword">type</span> <a href="Control-Lens-Wrapped.html#t:Unwrapped">Unwrapped</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span> <a href="src/Control-Lens-Wrapped.html#line-398" class="link">Source</a> <a href="#t:Unwrapped" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Unwrapped:64" class="inst-details hide"><div class="src"><span class="keyword">type</span> <a href="Control-Lens-Wrapped.html#t:Unwrapped">Unwrapped</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) = a</div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:IxValue:65" class="instance expander" onclick="toggleSection('i:id:Identity:IxValue:65')"></span> <span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span> <a href="src/Control-Lens-At.html#line-259" class="link">Source</a> <a href="#t:IxValue" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:IxValue:65" class="inst-details hide"><div class="src"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:IxValue">IxValue</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) = a</div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Identity:Index:66" class="instance expander" onclick="toggleSection('i:id:Identity:Index:66')"></span> <span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a)</span> <a href="src/Control-Lens-At.html#line-115" class="link">Source</a> <a href="#t:Index" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:Identity:Index:66" class="inst-details hide"><div class="src"><span class="keyword">type</span> <a href="Control-Lens-At.html#t:Index">Index</a> (<a href="Control-Lens-Setter.html#t:Identity">Identity</a> a) = ()</div></div></td></tr></table></div></div></div><h1 id="g:11">Deprecated</h1><div class="top"><p class="src"><a id="v:mapOf" class="def">mapOf</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -> (a -> b) -> s -> t <a href="src/Control-Lens-Setter.html#mapOf" class="link">Source</a> <a href="#v:mapOf" class="selflink">#</a></p><div class="doc"><div class="warning"><p>Deprecated: Use <code><a href="Control-Lens-Setter.html#v:over">over</a></code></p></div><p><code><a href="Control-Lens-Setter.html#v:mapOf">mapOf</a></code> is a deprecated alias for <code><a href="Control-Lens-Setter.html#v:over">over</a></code>.</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.3</p></div></body></html>
|