This file is indexed.

/usr/share/doc/libghc-lens-doc/html/Control-Lens-Operators.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
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
<!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.Operators</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-Operators.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Control-Lens-Operators.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 &lt;ekmett@gmail.com&gt;</td></tr><tr><th>Stability</th><td>experimental</td></tr><tr><th>Portability</th><td>non-portable</td></tr><tr><th>Safe Haskell</th><td>Safe</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Control.Lens.Operators</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1"><a href="Control-Lens-Cons.html">Control.Lens.Cons</a></a></li><li><a href="#g:2"><a href="Control-Lens-Fold.html">Control.Lens.Fold</a></a></li><li><a href="#g:3"><a href="Control-Lens-Getter.html">Control.Lens.Getter</a></a></li><li><a href="#g:4"><a href="Control-Lens-Indexed.html">Control.Lens.Indexed</a></a></li><li><a href="#g:5"><a href="Control-Lens-Lens.html">Control.Lens.Lens</a></a></li><li><a href="#g:6"><a href="Control-Lens-Plated.html">Control.Lens.Plated</a></a></li><li><a href="#g:7"><a href="Control-Lens-Review.html">Control.Lens.Review</a></a></li><li><a href="#g:8"><a href="Control-Lens-Setter.html">Control.Lens.Setter</a></a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>This module exists for users who like to work with qualified imports
 but want access to the operators from Lens.</p><pre>import qualified Control.Lens as L
import Control.Lens.Operators</pre></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"><a href="#v:-60--124-">(&lt;|)</a> :: <a href="Control-Lens-Cons.html#t:Cons">Cons</a> s s a a =&gt; a -&gt; s -&gt; s</li><li class="src short"><a href="#v:-124--62-">(|&gt;)</a> :: <a href="Control-Lens-Cons.html#t:Snoc">Snoc</a> s s a a =&gt; s -&gt; a -&gt; s</li><li class="src short"><a href="#v:-94-..">(^..)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:Getting">Getting</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Endo">Endo</a> [a]) s a -&gt; [a]</li><li class="src short"><a href="#v:-94--63-">(^?)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:Getting">Getting</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:First">First</a> a) s a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> a</li><li class="src short"><a href="#v:-94--63--33-">(^?!)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Stack.html#t:HasCallStack">HasCallStack</a> =&gt; s -&gt; <a href="Control-Lens-Getter.html#t:Getting">Getting</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Endo">Endo</a> a) s a -&gt; a</li><li class="src short"><a href="#v:-94--64-..">(^@..)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:IndexedGetting">IndexedGetting</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Endo">Endo</a> [(i, a)]) s a -&gt; [(i, a)]</li><li class="src short"><a href="#v:-94--64--63-">(^@?)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:IndexedGetting">IndexedGetting</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Endo">Endo</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (i, a))) s a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (i, a)</li><li class="src short"><a href="#v:-94--64--63--33-">(^@?!)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Stack.html#t:HasCallStack">HasCallStack</a> =&gt; s -&gt; <a href="Control-Lens-Getter.html#t:IndexedGetting">IndexedGetting</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Endo">Endo</a> (i, a)) s a -&gt; (i, a)</li><li class="src short"><a href="#v:-94-.">(^.)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:Getting">Getting</a> a s a -&gt; a</li><li class="src short"><a href="#v:-94--64-.">(^@.)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:IndexedGetting">IndexedGetting</a> i (i, a) s a -&gt; (i, a)</li><li class="src short"><a href="#v:-60-.">(&lt;.)</a> :: <a href="Control-Lens-Internal-Indexed.html#t:Indexable">Indexable</a> i p =&gt; (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i s t -&gt; r) -&gt; ((a -&gt; b) -&gt; s -&gt; t) -&gt; p a b -&gt; r</li><li class="src short"><a href="#v:.-62-">(.&gt;)</a> :: (st -&gt; r) -&gt; (kab -&gt; st) -&gt; kab -&gt; r</li><li class="src short"><a href="#v:-60-.-62-">(&lt;.&gt;)</a> :: <a href="Control-Lens-Internal-Indexed.html#t:Indexable">Indexable</a> (i, j) p =&gt; (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i s t -&gt; r) -&gt; (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> j a b -&gt; s -&gt; t) -&gt; p a b -&gt; r</li><li class="src short"><a href="#v:-37--37--126-">(%%~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> f s t a b -&gt; (a -&gt; f b) -&gt; s -&gt; f t</li><li class="src short"><a href="#v:-37--37--61-">(%%=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:Over">Over</a> p (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> r) s s a b -&gt; p a (r, b) -&gt; m r</li><li class="src short"><a href="#v:-38-">(&amp;)</a> :: a -&gt; (a -&gt; b) -&gt; b</li><li class="src short"><a href="#v:-38--126-">(&amp;~)</a> :: s -&gt; <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Lazy.html#t:State">State</a> s a -&gt; s</li><li class="src short"><a href="#v:-60--38--62-">(&lt;&amp;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; f a -&gt; (a -&gt; b) -&gt; f b</li><li class="src short"><a href="#v:-63--63-">(??)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; f (a -&gt; b) -&gt; a -&gt; f b</li><li class="src short"><a href="#v:-60--37--126-">(&lt;%~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> b) s t a b -&gt; (a -&gt; b) -&gt; s -&gt; (b, t)</li><li class="src short"><a href="#v:-60--43--126-">(&lt;+~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; a -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-60--45--126-">(&lt;-~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; a -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-60--42--126-">(&lt;*~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; a -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-60--47--47--126-">(&lt;//~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; a -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-60--94--126-">(&lt;^~)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; e -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-60--94--94--126-">(&lt;^^~)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; e -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-60--42--42--126-">(&lt;**~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; a -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-60--124--124--126-">(&lt;||~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</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 <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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>, t)</li><li class="src short"><a href="#v:-60--38--38--126-">(&lt;&amp;&amp;~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</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 <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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>, t)</li><li class="src short"><a href="#v:-60--60--37--126-">(&lt;&lt;%~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a b -&gt; (a -&gt; b) -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-60--60-.-126-">(&lt;&lt;.~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a b -&gt; b -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-60--60--63--126-">(&lt;&lt;?~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> 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) -&gt; b -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-60--60--43--126-">(&lt;&lt;+~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; s -&gt; (a, s)</li><li class="src short"><a href="#v:-60--60--45--126-">(&lt;&lt;-~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; s -&gt; (a, s)</li><li class="src short"><a href="#v:-60--60--42--126-">(&lt;&lt;*~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; s -&gt; (a, s)</li><li class="src short"><a href="#v:-60--60--47--47--126-">(&lt;&lt;//~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; s -&gt; (a, s)</li><li class="src short"><a href="#v:-60--60--94--126-">(&lt;&lt;^~)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; s -&gt; (a, s)</li><li class="src short"><a href="#v:-60--60--94--94--126-">(&lt;&lt;^^~)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; s -&gt; (a, s)</li><li class="src short"><a href="#v:-60--60--42--42--126-">(&lt;&lt;**~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; s -&gt; (a, s)</li><li class="src short"><a href="#v:-60--60--124--124--126-">(&lt;&lt;||~)</a> :: <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>, s)</li><li class="src short"><a href="#v:-60--60--38--38--126-">(&lt;&lt;&amp;&amp;~)</a> :: <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>, s)</li><li class="src short"><a href="#v:-60--60--60--62--126-">(&lt;&lt;&lt;&gt;~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> r =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> r) s r -&gt; r -&gt; s -&gt; (r, s)</li><li class="src short"><a href="#v:-60--37--61-">(&lt;%=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> b) s s a b -&gt; (a -&gt; b) -&gt; m b</li><li class="src short"><a href="#v:-60--43--61-">(&lt;+=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a</li><li class="src short"><a href="#v:-60--45--61-">(&lt;-=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a</li><li class="src short"><a href="#v:-60--42--61-">(&lt;*=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a</li><li class="src short"><a href="#v:-60--47--47--61-">(&lt;//=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a</li><li class="src short"><a href="#v:-60--94--61-">(&lt;^=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; m a</li><li class="src short"><a href="#v:-60--94--94--61-">(&lt;^^=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; m a</li><li class="src short"><a href="#v:-60--42--42--61-">(&lt;**=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a</li><li class="src short"><a href="#v:-60--124--124--61-">(&lt;||=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-60--38--38--61-">(&lt;&amp;&amp;=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-60--60--37--61-">(&lt;&lt;%=)</a> :: (<a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Strong.html#t:Strong">Strong</a> p, <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m) =&gt; <a href="Control-Lens-Type.html#t:Over">Over</a> p (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s s a b -&gt; p a b -&gt; m a</li><li class="src short"><a href="#v:-60--60-.-61-">(&lt;&lt;.=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s s a b -&gt; b -&gt; m a</li><li class="src short"><a href="#v:-60--60--63--61-">(&lt;&lt;?=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> 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) -&gt; b -&gt; m a</li><li class="src short"><a href="#v:-60--60--43--61-">(&lt;&lt;+=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a</li><li class="src short"><a href="#v:-60--60--45--61-">(&lt;&lt;-=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a</li><li class="src short"><a href="#v:-60--60--42--61-">(&lt;&lt;*=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a</li><li class="src short"><a href="#v:-60--60--47--47--61-">(&lt;&lt;//=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a</li><li class="src short"><a href="#v:-60--60--94--61-">(&lt;&lt;^=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; m a</li><li class="src short"><a href="#v:-60--60--94--94--61-">(&lt;&lt;^^=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; m a</li><li class="src short"><a href="#v:-60--60--42--42--61-">(&lt;&lt;**=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a</li><li class="src short"><a href="#v:-60--60--124--124--61-">(&lt;&lt;||=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-60--60--38--38--61-">(&lt;&lt;&amp;&amp;=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-60--60--60--62--61-">(&lt;&lt;&lt;&gt;=)</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> r) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> r) s r -&gt; r -&gt; m r</li><li class="src short"><a href="#v:-60--60--126-">(&lt;&lt;~)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; m b -&gt; m b</li><li class="src short"><a href="#v:-60--60--62--126-">(&lt;&lt;&gt;~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> m =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> m) s t m m -&gt; m -&gt; s -&gt; (m, t)</li><li class="src short"><a href="#v:-60--60--62--61-">(&lt;&lt;&gt;=)</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> r) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> r) s r -&gt; r -&gt; m r</li><li class="src short"><a href="#v:-60--37--64--126-">(&lt;%@~)</a> :: <a href="Control-Lens-Type.html#t:Over">Over</a> (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i) (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> b) s t a b -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; (b, t)</li><li class="src short"><a href="#v:-60--60--37--64--126-">(&lt;&lt;%@~)</a> :: <a href="Control-Lens-Type.html#t:Over">Over</a> (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i) (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a b -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; (a, t)</li><li class="src short"><a href="#v:-37--37--64--126-">(%%@~)</a> :: <a href="Control-Lens-Type.html#t:IndexedLensLike">IndexedLensLike</a> i f s t a b -&gt; (i -&gt; a -&gt; f b) -&gt; s -&gt; f t</li><li class="src short"><a href="#v:-37--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 =&gt; <a href="Control-Lens-Type.html#t:IndexedLensLike">IndexedLensLike</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> r) s s a b -&gt; (i -&gt; a -&gt; (r, b)) -&gt; m r</li><li class="src short"><a href="#v:-60--37--64--61-">(&lt;%@=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:IndexedLensLike">IndexedLensLike</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> b) s s a b -&gt; (i -&gt; a -&gt; b) -&gt; m b</li><li class="src short"><a href="#v:-60--60--37--64--61-">(&lt;&lt;%@=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:IndexedLensLike">IndexedLensLike</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s s a b -&gt; (i -&gt; a -&gt; b) -&gt; m a</li><li class="src short"><a href="#v:-94--35-">(^#)</a> :: s -&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; a</li><li class="src short"><a href="#v:-35--126-">(#~)</a> :: <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; b -&gt; s -&gt; t</li><li class="src short"><a href="#v:-35--37--126-">(#%~)</a> :: <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; (a -&gt; b) -&gt; s -&gt; t</li><li class="src short"><a href="#v:-35--37--37--126-">(#%%~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; (a -&gt; f b) -&gt; s -&gt; f t</li><li class="src short"><a href="#v:-35--61-">(#=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; b -&gt; m ()</li><li class="src short"><a href="#v:-35--37--61-">(#%=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; (a -&gt; b) -&gt; m ()</li><li class="src short"><a href="#v:-60--35--37--126-">(&lt;#%~)</a> :: <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; (a -&gt; b) -&gt; s -&gt; (b, t)</li><li class="src short"><a href="#v:-60--35--37--61-">(&lt;#%=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; (a -&gt; b) -&gt; m b</li><li class="src short"><a href="#v:-35--37--37--61-">(#%%=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; (a -&gt; (r, b)) -&gt; m r</li><li class="src short"><a href="#v:-60--35--126-">(&lt;#~)</a> :: <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; b -&gt; s -&gt; (b, t)</li><li class="src short"><a href="#v:-60--35--61-">(&lt;#=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; b -&gt; m b</li><li class="src short"><a href="#v:...">(...)</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-Plated.html#t:Plated">Plated</a> c) =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> f s t c c -&gt; <a href="Control-Lens-Type.html#t:Over">Over</a> p f c c a b -&gt; <a href="Control-Lens-Type.html#t:Over">Over</a> p f s t a b</li><li class="src short"><a href="#v:-35-">(#)</a> :: <a href="Control-Lens-Type.html#t:AReview">AReview</a> t b -&gt; b -&gt; 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 -&gt; (a -&gt; b) -&gt; s -&gt; 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 -&gt; b -&gt; s -&gt; 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) -&gt; b -&gt; s -&gt; t</li><li class="src short"><a href="#v:-60-.-126-">(&lt;.~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -&gt; b -&gt; s -&gt; (b, t)</li><li class="src short"><a href="#v:-60--63--126-">(&lt;?~)</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) -&gt; b -&gt; s -&gt; (b, 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; e -&gt; s -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; e -&gt; s -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; t</li><li class="src short"><a href="#v:-38--38--126-">(&amp;&amp;~)</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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; t</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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -&gt; b -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -&gt; (a -&gt; b) -&gt; m ()</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 =&gt; <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) -&gt; b -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; e -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; e -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; m ()</li><li class="src short"><a href="#v:-38--38--61-">(&amp;&amp;=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; 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 =&gt; <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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m ()</li><li class="src short"><a href="#v:-60--126-">(&lt;~)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -&gt; m b -&gt; m ()</li><li class="src short"><a href="#v:-60-.-61-">(&lt;.=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -&gt; b -&gt; m b</li><li class="src short"><a href="#v:-60--63--61-">(&lt;?=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <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) -&gt; b -&gt; m b</li><li class="src short"><a href="#v:-60--62--126-">(&lt;&gt;~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> a =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; t</li><li class="src short"><a href="#v:-60--62--61-">(&lt;&gt;=)</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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; m ()</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 -&gt; (i -&gt; b) -&gt; s -&gt; t</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 =&gt; <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a b -&gt; (i -&gt; b) -&gt; m ()</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 -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a b -&gt; (i -&gt; a -&gt; b) -&gt; m ()</li></ul></div><div id="interface"><h1 id="g:1"><a href="Control-Lens-Cons.html">Control.Lens.Cons</a></h1><div class="top"><p class="src"><a id="v:-60--124-" class="def">(&lt;|)</a> :: <a href="Control-Lens-Cons.html#t:Cons">Cons</a> s s a a =&gt; a -&gt; s -&gt; s <span class="fixity">infixr 5</span><span class="rightedge"></span> <a href="src/Control-Lens-Cons.html#%3C%7C" class="link">Source</a> <a href="#v:-60--124-" class="selflink">#</a></p><div class="doc"><p><code><a href="Control-Lens-Cons.html#v:cons">cons</a></code> an element onto a container.</p><p>This is an infix alias for <code><a href="Control-Lens-Cons.html#v:cons">cons</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>a &lt;| []
</code></strong>[a]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>a &lt;| [b, c]
</code></strong>[a,b,c]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>a &lt;| Seq.fromList []
</code></strong>fromList [a]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>a &lt;| Seq.fromList [b, c]
</code></strong>fromList [a,b,c]
</pre></div></div><div class="top"><p class="src"><a id="v:-124--62-" class="def">(|&gt;)</a> :: <a href="Control-Lens-Cons.html#t:Snoc">Snoc</a> s s a a =&gt; s -&gt; a -&gt; s <span class="fixity">infixl 5</span><span class="rightedge"></span> <a href="src/Control-Lens-Cons.html#%7C%3E" class="link">Source</a> <a href="#v:-124--62-" class="selflink">#</a></p><div class="doc"><p><code><a href="Control-Lens-Cons.html#v:snoc">snoc</a></code> an element onto the end of a container.</p><p>This is an infix alias for <code><a href="Control-Lens-Cons.html#v:snoc">snoc</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Seq.fromList [] |&gt; a
</code></strong>fromList [a]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Seq.fromList [b, c] |&gt; a
</code></strong>fromList [b,c,a]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>LazyT.pack &quot;hello&quot; |&gt; '!'
</code></strong>&quot;hello!&quot;
</pre></div></div><h1 id="g:2"><a href="Control-Lens-Fold.html">Control.Lens.Fold</a></h1><div class="top"><p class="src"><a id="v:-94-.." class="def">(^..)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:Getting">Getting</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Endo">Endo</a> [a]) s a -&gt; [a] <span class="fixity">infixl 8</span><span class="rightedge"></span> <a href="src/Control-Lens-Fold.html#%5E.." class="link">Source</a> <a href="#v:-94-.." class="selflink">#</a></p><div class="doc"><p>A convenient infix (flipped) version of <code><a href="Control-Lens-Fold.html#v:toListOf">toListOf</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>[[1,2],[3]]^..id
</code></strong>[[[1,2],[3]]]
<code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>[[1,2],[3]]^..traverse
</code></strong>[[1,2],[3]]
<code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>[[1,2],[3]]^..traverse.traverse
</code></strong>[1,2,3]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(1,2)^..both
</code></strong>[1,2]
</pre><pre><code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Foldable.html#v:toList">toList</a></code> xs &#8801; xs <code><a href="Control-Lens-Operators.html#v:-94-..">^..</a></code> <code><a href="Control-Lens-Fold.html#v:folded">folded</a></code>
(<code><a href="Control-Lens-Operators.html#v:-94-..">^..</a></code>) &#8801; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:flip">flip</a></code> <code><a href="Control-Lens-Fold.html#v:toListOf">toListOf</a></code>
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-94-..">^..</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Getter">Getter</a></code> s a     -&gt; <a href="'^..'">a</a> :: s -&gt; <code><a href="Control-Lens-Type.html#t:Fold">Fold</a></code> s a       -&gt; <a href="'^..'">a</a> :: s -&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; <a href="'^..'">a</a> :: s -&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; <a href="'^..'">a</a> :: s -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; <a href="'^..'">a</a> :: s -&gt; <code><a href="Control-Lens-Type.html#t:Prism-39-">Prism'</a></code> s a     -&gt; [a]
</pre></div></div><div class="top"><p class="src"><a id="v:-94--63-" class="def">(^?)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:Getting">Getting</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:First">First</a> a) s a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> a <span class="fixity">infixl 8</span><span class="rightedge"></span> <a href="src/Control-Lens-Fold.html#%5E%3F" class="link">Source</a> <a href="#v:-94--63-" class="selflink">#</a></p><div class="doc"><p>Perform a safe <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-OldList.html#v:head">head</a></code> of a <code><a href="Control-Lens-Type.html#t:Fold">Fold</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> or retrieve <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#v:Just">Just</a></code> the result
 from a <code><a href="Control-Lens-Type.html#t:Getter">Getter</a></code> or <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>.</p><p>When using a <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> as a partial <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, or a <code><a href="Control-Lens-Type.html#t:Fold">Fold</a></code> as a partial <code><a href="Control-Lens-Type.html#t:Getter">Getter</a></code> this can be a convenient
 way to extract the optional value.</p><p>Note: if you get stack overflows due to this, you may want to use <code><a href="Control-Lens-Fold.html#v:firstOf">firstOf</a></code> instead, which can deal
 more gracefully with heavily left-biased trees.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Left 4 ^?_Left
</code></strong>Just 4
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Right 4 ^?_Left
</code></strong>Nothing
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>&quot;world&quot; ^? ix 3
</code></strong>Just 'l'
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>&quot;world&quot; ^? ix 20
</code></strong>Nothing
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-94--63-">^?</a></code>) &#8801; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:flip">flip</a></code> <code><a href="Control-Lens-Fold.html#v:preview">preview</a></code>
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-94--63-">^?</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Getter">Getter</a></code> s a     -&gt; <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
(<code><a href="Control-Lens-Operators.html#v:-94--63-">^?</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Fold">Fold</a></code> s a       -&gt; <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
(<code><a href="Control-Lens-Operators.html#v:-94--63-">^?</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; <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
(<code><a href="Control-Lens-Operators.html#v:-94--63-">^?</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; <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
(<code><a href="Control-Lens-Operators.html#v:-94--63-">^?</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; <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
</pre></div></div><div class="top"><p class="src"><a id="v:-94--63--33-" class="def">(^?!)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Stack.html#t:HasCallStack">HasCallStack</a> =&gt; s -&gt; <a href="Control-Lens-Getter.html#t:Getting">Getting</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Endo">Endo</a> a) s a -&gt; a <span class="fixity">infixl 8</span><span class="rightedge"></span> <a href="src/Control-Lens-Fold.html#%5E%3F%21" class="link">Source</a> <a href="#v:-94--63--33-" class="selflink">#</a></p><div class="doc"><p>Perform an *UNSAFE* <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-OldList.html#v:head">head</a></code> of a <code><a href="Control-Lens-Type.html#t:Fold">Fold</a></code> or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> assuming that it is there.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Left 4 ^?! _Left
</code></strong>4
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>&quot;world&quot; ^?! ix 3
</code></strong>'l'
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-94--63--33-">^?!</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Getter">Getter</a></code> s a     -&gt; a
(<code><a href="Control-Lens-Operators.html#v:-94--63--33-">^?!</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Fold">Fold</a></code> s a       -&gt; a
(<code><a href="Control-Lens-Operators.html#v:-94--63--33-">^?!</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a
(<code><a href="Control-Lens-Operators.html#v:-94--63--33-">^?!</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a
(<code><a href="Control-Lens-Operators.html#v:-94--63--33-">^?!</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a
</pre></div></div><div class="top"><p class="src"><a id="v:-94--64-.." class="def">(^@..)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:IndexedGetting">IndexedGetting</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Endo">Endo</a> [(i, a)]) s a -&gt; [(i, a)] <span class="fixity">infixl 8</span><span class="rightedge"></span> <a href="src/Control-Lens-Fold.html#%5E%40.." class="link">Source</a> <a href="#v:-94--64-.." class="selflink">#</a></p><div class="doc"><p>An infix version of <code><a href="Control-Lens-Fold.html#v:itoListOf">itoListOf</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:-94--64--63-" class="def">(^@?)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:IndexedGetting">IndexedGetting</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Endo">Endo</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (i, a))) s a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (i, a) <span class="fixity">infixl 8</span><span class="rightedge"></span> <a href="src/Control-Lens-Fold.html#%5E%40%3F" class="link">Source</a> <a href="#v:-94--64--63-" class="selflink">#</a></p><div class="doc"><p>Perform a safe <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-OldList.html#v:head">head</a></code> (with index) of an <code><a href="Control-Lens-Type.html#t:IndexedFold">IndexedFold</a></code> or <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> or retrieve <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#v:Just">Just</a></code> the index and result
 from an <code><a href="Control-Lens-Type.html#t:IndexedGetter">IndexedGetter</a></code> or <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code>.</p><p>When using a <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> as a partial <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code>, or an <code><a href="Control-Lens-Type.html#t:IndexedFold">IndexedFold</a></code> as a partial <code><a href="Control-Lens-Type.html#t:IndexedGetter">IndexedGetter</a></code> this can be a convenient
 way to extract the optional value.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-94--64--63-">^@?</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:IndexedGetter">IndexedGetter</a></code> i s a     -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> (i, a)
(<code><a href="Control-Lens-Operators.html#v:-94--64--63-">^@?</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:IndexedFold">IndexedFold</a></code> i s a       -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> (i, a)
(<code><a href="Control-Lens-Operators.html#v:-94--64--63-">^@?</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:IndexedLens-39-">IndexedLens'</a></code> i s a      -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> (i, a)
(<code><a href="Control-Lens-Operators.html#v:-94--64--63-">^@?</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:IndexedTraversal-39-">IndexedTraversal'</a></code> i s a -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a></code> (i, a)
</pre></div></div><div class="top"><p class="src"><a id="v:-94--64--63--33-" class="def">(^@?!)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-Stack.html#t:HasCallStack">HasCallStack</a> =&gt; s -&gt; <a href="Control-Lens-Getter.html#t:IndexedGetting">IndexedGetting</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Endo">Endo</a> (i, a)) s a -&gt; (i, a) <span class="fixity">infixl 8</span><span class="rightedge"></span> <a href="src/Control-Lens-Fold.html#%5E%40%3F%21" class="link">Source</a> <a href="#v:-94--64--63--33-" class="selflink">#</a></p><div class="doc"><p>Perform an *UNSAFE* <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/GHC-OldList.html#v:head">head</a></code> (with index) of an <code><a href="Control-Lens-Type.html#t:IndexedFold">IndexedFold</a></code> or <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> assuming that it is there.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-94--64--63--33-">^@?!</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:IndexedGetter">IndexedGetter</a></code> i s a     -&gt; (i, a)
(<code><a href="Control-Lens-Operators.html#v:-94--64--63--33-">^@?!</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:IndexedFold">IndexedFold</a></code> i s a       -&gt; (i, a)
(<code><a href="Control-Lens-Operators.html#v:-94--64--63--33-">^@?!</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:IndexedLens-39-">IndexedLens'</a></code> i s a      -&gt; (i, a)
(<code><a href="Control-Lens-Operators.html#v:-94--64--63--33-">^@?!</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:IndexedTraversal-39-">IndexedTraversal'</a></code> i s a -&gt; (i, a)
</pre></div></div><h1 id="g:3"><a href="Control-Lens-Getter.html">Control.Lens.Getter</a></h1><div class="top"><p class="src"><a id="v:-94-." class="def">(^.)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:Getting">Getting</a> a s a -&gt; a <span class="fixity">infixl 8</span><span class="rightedge"></span> <a href="src/Control-Lens-Getter.html#%5E." class="link">Source</a> <a href="#v:-94-." class="selflink">#</a></p><div class="doc"><p>View the value pointed to by a <code><a href="Control-Lens-Type.html#t:Getter">Getter</a></code> or <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> or the
 result of folding over all the results of a <code><a href="Control-Lens-Fold.html#v:Fold">Fold</a></code> or
 <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code> that points at a monoidal values.</p><p>This is the same operation as <code><a href="Control-Lens-Getter.html#v:view">view</a></code> with the arguments flipped.</p><p>The fixity and semantics are such that subsequent field accesses can be
 performed with (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code>).</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b)^._2
</code></strong>b
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;hello&quot;,&quot;world&quot;)^._2
</code></strong>&quot;world&quot;
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>import Data.Complex
</code></strong><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>((0, 1 :+ 2), 3)^._1._2.to magnitude
</code></strong>2.23606797749979
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-94-.">^.</a></code>) ::             s -&gt; <code><a href="Control-Lens-Type.html#t:Getter">Getter</a></code> s a     -&gt; a
(<code><a href="Control-Lens-Operators.html#v:-94-.">^.</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#v:Monoid">Monoid</a></code> m =&gt; s -&gt; <code><a href="Control-Lens-Fold.html#v:Fold">Fold</a></code> s m       -&gt; m
(<code><a href="Control-Lens-Operators.html#v:-94-.">^.</a></code>) ::             s -&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a       -&gt; a
(<code><a href="Control-Lens-Operators.html#v:-94-.">^.</a></code>) ::             s -&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a
(<code><a href="Control-Lens-Operators.html#v:-94-.">^.</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#v:Monoid">Monoid</a></code> m =&gt; s -&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal-39-">Traversal'</a></code> s m -&gt; m
</pre></div></div><div class="top"><p class="src"><a id="v:-94--64-." class="def">(^@.)</a> :: s -&gt; <a href="Control-Lens-Getter.html#t:IndexedGetting">IndexedGetting</a> i (i, a) s a -&gt; (i, a) <span class="fixity">infixl 8</span><span class="rightedge"></span> <a href="src/Control-Lens-Getter.html#%5E%40." class="link">Source</a> <a href="#v:-94--64-." class="selflink">#</a></p><div class="doc"><p>View the index and value of an <code><a href="Control-Lens-Type.html#t:IndexedGetter">IndexedGetter</a></code> or <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code>.</p><p>This is the same operation as <code><a href="Control-Lens-Getter.html#v:iview">iview</a></code> with the arguments flipped.</p><p>The fixity and semantics are such that subsequent field accesses can be
 performed with (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code>).</p><pre>(<code><a href="Control-Lens-Operators.html#v:-94--64-.">^@.</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:IndexedGetter">IndexedGetter</a></code> i s a -&gt; (i, a)
(<code><a href="Control-Lens-Operators.html#v:-94--64-.">^@.</a></code>) :: s -&gt; <code><a href="Control-Lens-Type.html#t:IndexedLens-39-">IndexedLens'</a></code> i s a  -&gt; (i, a)
</pre><p>The result probably doesn't have much meaning when applied to an <code><a href="Control-Lens-Type.html#t:IndexedFold">IndexedFold</a></code>.</p></div></div><h1 id="g:4"><a href="Control-Lens-Indexed.html">Control.Lens.Indexed</a></h1><div class="top"><p class="src"><a id="v:-60-." class="def">(&lt;.)</a> :: <a href="Control-Lens-Internal-Indexed.html#t:Indexable">Indexable</a> i p =&gt; (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i s t -&gt; r) -&gt; ((a -&gt; b) -&gt; s -&gt; t) -&gt; p a b -&gt; r <span class="fixity">infixr 9</span><span class="rightedge"></span> <a href="src/Control-Lens-Indexed.html#%3C." class="link">Source</a> <a href="#v:-60-." class="selflink">#</a></p><div class="doc"><p>Compose an <code><a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a></code> function with a non-indexed function.</p><p>Mnemonically, the <code>&lt;</code> points to the indexing we want to preserve.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>let nestedMap = (fmap Map.fromList . Map.fromList) [(1, [(10, &quot;one,ten&quot;), (20, &quot;one,twenty&quot;)]), (2, [(30, &quot;two,thirty&quot;), (40,&quot;two,forty&quot;)])]
</code></strong><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>nestedMap^..(itraversed&lt;.itraversed).withIndex
</code></strong>[(1,&quot;one,ten&quot;),(1,&quot;one,twenty&quot;),(2,&quot;two,thirty&quot;),(2,&quot;two,forty&quot;)]
</pre></div></div><div class="top"><p class="src"><a id="v:.-62-" class="def">(.&gt;)</a> :: (st -&gt; r) -&gt; (kab -&gt; st) -&gt; kab -&gt; r <span class="fixity">infixr 9</span><span class="rightedge"></span> <a href="src/Control-Lens-Indexed.html#.%3E" class="link">Source</a> <a href="#v:.-62-" class="selflink">#</a></p><div class="doc"><p>Compose a non-indexed function with an <code><a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a></code> function.</p><p>Mnemonically, the <code>&gt;</code> points to the indexing we want to preserve.</p><p>This is the same as <code>(<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code>)</code>.</p><p><code>f <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code> g</code> (and <code>f <code><a href="Control-Lens-Operators.html#v:.-62-">.&gt;</a></code> g</code>) gives you the index of <code>g</code> unless <code>g</code> is index-preserving, like a
 <code><a href="Control-Lens-Type.html#t:Prism">Prism</a></code>, <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> or <code><a href="Control-Lens-Type.html#t:Equality">Equality</a></code>, in which case it'll pass through the index of <code>f</code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>let nestedMap = (fmap Map.fromList . Map.fromList) [(1, [(10, &quot;one,ten&quot;), (20, &quot;one,twenty&quot;)]), (2, [(30, &quot;two,thirty&quot;), (40,&quot;two,forty&quot;)])]
</code></strong><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>nestedMap^..(itraversed.&gt;itraversed).withIndex
</code></strong>[(10,&quot;one,ten&quot;),(20,&quot;one,twenty&quot;),(30,&quot;two,thirty&quot;),(40,&quot;two,forty&quot;)]
</pre></div></div><div class="top"><p class="src"><a id="v:-60-.-62-" class="def">(&lt;.&gt;)</a> :: <a href="Control-Lens-Internal-Indexed.html#t:Indexable">Indexable</a> (i, j) p =&gt; (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i s t -&gt; r) -&gt; (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> j a b -&gt; s -&gt; t) -&gt; p a b -&gt; r <span class="fixity">infixr 9</span><span class="rightedge"></span> <a href="src/Control-Lens-Indexed.html#%3C.%3E" class="link">Source</a> <a href="#v:-60-.-62-" class="selflink">#</a></p><div class="doc"><p>Composition of <code><a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a></code> functions.</p><p>Mnemonically, the <code>&lt;</code> and <code>&gt;</code> points to the fact that we want to preserve the indices.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>let nestedMap = (fmap Map.fromList . Map.fromList) [(1, [(10, &quot;one,ten&quot;), (20, &quot;one,twenty&quot;)]), (2, [(30, &quot;two,thirty&quot;), (40,&quot;two,forty&quot;)])]
</code></strong><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>nestedMap^..(itraversed&lt;.&gt;itraversed).withIndex
</code></strong>[((1,10),&quot;one,ten&quot;),((1,20),&quot;one,twenty&quot;),((2,30),&quot;two,thirty&quot;),((2,40),&quot;two,forty&quot;)]
</pre></div></div><h1 id="g:5"><a href="Control-Lens-Lens.html">Control.Lens.Lens</a></h1><div class="top"><p class="src"><a id="v:-37--37--126-" class="def">(%%~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> f s t a b -&gt; (a -&gt; f b) -&gt; s -&gt; f t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%25%25~" class="link">Source</a> <a href="#v:-37--37--126-" class="selflink">#</a></p><div class="doc"><p>(<code><a href="Control-Lens-Operators.html#v:-37--37--126-">%%~</a></code>) can be used in one of two scenarios:</p><p>When applied to a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code>, it can edit the target of the <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> in a
 structure, extracting a functorial result.</p><p>When applied to a <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code>, it can edit the
 targets of the traversals, extracting an applicative summary of its
 actions.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>[66,97,116,109,97,110] &amp; each %%~ \a -&gt; (&quot;na&quot;, chr a)
</code></strong>(&quot;nananananana&quot;,&quot;Batman&quot;)
</pre><p>For all that the definition of this combinator is just:</p><pre>(<code><a href="Control-Lens-Operators.html#v:-37--37--126-">%%~</a></code>) &#8801; <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>It may be beneficial to think about it as if it had these even more
 restricted types, however:</p><pre>(<code><a href="Control-Lens-Operators.html#v:-37--37--126-">%%~</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 =&gt;     <code><a href="Control-Lens-Iso.html#v:Iso">Iso</a></code> s t a b       -&gt; (a -&gt; f b) -&gt; s -&gt; f t
(<code><a href="Control-Lens-Operators.html#v:-37--37--126-">%%~</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 =&gt;     <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b      -&gt; (a -&gt; f b) -&gt; s -&gt; f t
(<code><a href="Control-Lens-Operators.html#v:-37--37--126-">%%~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a></code> f =&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code> s t a b -&gt; (a -&gt; f b) -&gt; s -&gt; f t
</pre><p>When applied to a <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code>, it can edit the
 targets of the traversals, extracting a supplemental monoidal summary
 of its actions, by choosing <code>f = ((,) m)</code></p><pre>(<code><a href="Control-Lens-Operators.html#v:-37--37--126-">%%~</a></code>) ::             <code><a href="Control-Lens-Iso.html#v:Iso">Iso</a></code> s t a b       -&gt; (a -&gt; (r, b)) -&gt; s -&gt; (r, t)
(<code><a href="Control-Lens-Operators.html#v:-37--37--126-">%%~</a></code>) ::             <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b      -&gt; (a -&gt; (r, b)) -&gt; s -&gt; (r, t)
(<code><a href="Control-Lens-Operators.html#v:-37--37--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> m =&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code> s t a b -&gt; (a -&gt; (m, b)) -&gt; s -&gt; (m, t)
</pre></div></div><div class="top"><p class="src"><a id="v:-37--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 =&gt; <a href="Control-Lens-Type.html#t:Over">Over</a> p (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> r) s s a b -&gt; p a (r, b) -&gt; m r <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%25%25%3D" class="link">Source</a> <a href="#v:-37--37--61-" 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> in the current state returning some extra
 information of type <code>r</code> or modify all targets of a
 <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code> in the current state, extracting extra
 information of type <code>r</code> and return a monoidal summary of the changes.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>runState (_1 %%= \x -&gt; (f x, g x)) (a,b)
</code></strong>(f a,(g a,b))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-37--37--61-">%%=</a></code>) &#8801; (<code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#v:state">state</a></code> <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:.">.</a></code>)
</pre><p>It may be useful to think of (<code><a href="Control-Lens-Operators.html#v:-37--37--61-">%%=</a></code>), instead, as having either of the
 following more restricted type signatures:</p><pre>(<code><a href="Control-Lens-Operators.html#v:-37--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             =&gt; <code><a href="Control-Lens-Iso.html#v:Iso">Iso</a></code> s s a b       -&gt; (a -&gt; (r, b)) -&gt; m r
(<code><a href="Control-Lens-Operators.html#v:-37--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             =&gt; <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s s a b      -&gt; (a -&gt; (r, b)) -&gt; m r
(<code><a href="Control-Lens-Operators.html#v:-37--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="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a></code> r) =&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code> s s a b -&gt; (a -&gt; (r, b)) -&gt; m r
</pre></div></div><div class="top"><p class="src"><a id="v:-38-" class="def">(&amp;)</a> :: a -&gt; (a -&gt; b) -&gt; b <span class="fixity">infixl 1</span><span class="rightedge"></span> <a href="#v:-38-" class="selflink">#</a></p><div class="doc"><p><code><a href="Control-Lens-Operators.html#v:-38-">&amp;</a></code> is a reverse application operator.  This provides notational
 convenience.  Its precedence is one higher than that of the forward
 application operator <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:-36-">$</a></code>, which allows <code><a href="Control-Lens-Operators.html#v:-38-">&amp;</a></code> to be nested in <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:-36-">$</a></code>.</p><p><em>Since: 4.8.0.0</em></p></div></div><div class="top"><p class="src"><a id="v:-38--126-" class="def">(&amp;~)</a> :: s -&gt; <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Lazy.html#t:State">State</a> s a -&gt; s <span class="fixity">infixl 1</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%26~" class="link">Source</a> <a href="#v:-38--126-" class="selflink">#</a></p><div class="doc"><p>This can be used to chain lens operations using <code>op=</code> syntax
 rather than <code>op~</code> syntax for simple non-type-changing cases.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(10,20) &amp; _1 .~ 30 &amp; _2 .~ 40
</code></strong>(30,40)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(10,20) &amp;~ do _1 .= 30; _2 .= 40
</code></strong>(30,40)
</pre><p>This does not support type-changing assignment, <em>e.g.</em></p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(10,20) &amp; _1 .~ &quot;hello&quot;
</code></strong>(&quot;hello&quot;,20)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--38--62-" class="def">(&lt;&amp;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; f a -&gt; (a -&gt; b) -&gt; f b <span class="fixity">infixl 1</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%26%3E" class="link">Source</a> <a href="#v:-60--38--62-" class="selflink">#</a></p><div class="doc"><p>Infix flipped <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#v:fmap">fmap</a></code>.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--38--62-">&lt;&amp;&gt;</a></code>) = <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:flip">flip</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>
</pre></div></div><div class="top"><p class="src"><a id="v:-63--63-" class="def">(??)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; f (a -&gt; b) -&gt; a -&gt; f b <span class="fixity">infixl 1</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3F%3F" class="link">Source</a> <a href="#v:-63--63-" class="selflink">#</a></p><div class="doc"><p>This is convenient to <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:flip">flip</a></code> argument order of composite functions defined as:</p><pre>fab ?? a = fmap ($ a) fab
</pre><p>For the <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a></code> instance <code>f = ((-&gt;) r)</code> you can reason about this function as if the definition was <code>(<code><a href="Control-Lens-Operators.html#v:-63--63-">??</a></code>) &#8801; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Function.html#v:flip">flip</a></code></code>:</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(h ?? x) a
</code></strong>h a x
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>execState ?? [] $ modify (1:)
</code></strong>[1]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>over _2 ?? (&quot;hello&quot;,&quot;world&quot;) $ length
</code></strong>(&quot;hello&quot;,5)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>over ?? length ?? (&quot;hello&quot;,&quot;world&quot;) $ _2
</code></strong>(&quot;hello&quot;,5)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--37--126-" class="def">(&lt;%~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> b) s t a b -&gt; (a -&gt; b) -&gt; s -&gt; (b, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%25~" class="link">Source</a> <a href="#v:-60--37--126-" 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> and return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--37--126-">&lt;%~</a></code>) ::             <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b      -&gt; (a -&gt; b) -&gt; s -&gt; (b, t)
(<code><a href="Control-Lens-Operators.html#v:-60--37--126-">&lt;%~</a></code>) ::             <code><a href="Control-Lens-Iso.html#v:Iso">Iso</a></code> s t a b       -&gt; (a -&gt; b) -&gt; s -&gt; (b, t)
(<code><a href="Control-Lens-Operators.html#v:-60--37--126-">&lt;%~</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> b =&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code> s t a b -&gt; (a -&gt; b) -&gt; s -&gt; (b, t)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--43--126-" class="def">(&lt;+~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; a -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%2B~" class="link">Source</a> <a href="#v:-60--43--126-" class="selflink">#</a></p><div class="doc"><p>Increment the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and return the result.</p><p>When you do not need the result of the addition, (<code><a href="Control-Lens-Setter.html#v:-43--126-">+~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--43--126-">&lt;+~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--43--126-">&lt;+~</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 =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a  -&gt; a -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--45--126-" class="def">(&lt;-~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; a -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C-~" class="link">Source</a> <a href="#v:-60--45--126-" class="selflink">#</a></p><div class="doc"><p>Decrement the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and return the result.</p><p>When you do not need the result of the subtraction, (<code><a href="Control-Lens-Setter.html#v:-45--126-">-~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--45--126-">&lt;-~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--45--126-">&lt;-~</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 =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a  -&gt; a -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--42--126-" class="def">(&lt;*~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; a -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%2A~" class="link">Source</a> <a href="#v:-60--42--126-" class="selflink">#</a></p><div class="doc"><p>Multiply the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and return the result.</p><p>When you do not need the result of the multiplication, (<code><a href="Control-Lens-Setter.html#v:-42--126-">*~</a></code>) is more
 flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--42--126-">&lt;*~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--42--126-">&lt;*~</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 =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code>  s a -&gt; a -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--47--47--126-" class="def">(&lt;//~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; a -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%2F%2F~" class="link">Source</a> <a href="#v:-60--47--47--126-" class="selflink">#</a></p><div class="doc"><p>Divide the target of a fractionally valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and return the result.</p><p>When you do not need the result of the division, (<code><a href="Control-Lens-Setter.html#v:-47--47--126-">//~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--47--47--126-">&lt;//~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--47--47--126-">&lt;//~</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 =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code>  s a -&gt; a -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--94--126-" class="def">(&lt;^~)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; e -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%5E~" class="link">Source</a> <a href="#v:-60--94--126-" class="selflink">#</a></p><div class="doc"><p>Raise the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> to a non-negative
 <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> power and return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-94--126-">^~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--94--126-">&lt;^~</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; e -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--94--126-">&lt;^~</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) =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a -&gt; e -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--94--94--126-" class="def">(&lt;^^~)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; e -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%5E%5E~" class="link">Source</a> <a href="#v:-60--94--94--126-" class="selflink">#</a></p><div class="doc"><p>Raise the target of a fractionally valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> to an <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> power
 and return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-94--94--126-">^^~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--94--94--126-">&lt;^^~</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; e -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--94--94--126-">&lt;^^~</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) =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a -&gt; e -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--42--42--126-" class="def">(&lt;**~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a a -&gt; a -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%2A%2A~" class="link">Source</a> <a href="#v:-60--42--42--126-" class="selflink">#</a></p><div class="doc"><p>Raise the target of a floating-point valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> to an arbitrary power
 and return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-42--42--126-">**~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--42--42--126-">&lt;**~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--42--42--126-">&lt;**~</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 =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a  -&gt; a -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--124--124--126-" class="def">(&lt;||~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</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 <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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%7C%7C~" class="link">Source</a> <a href="#v:-60--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> a Boolean valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-124--124--126-">||~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--124--124--126-">&lt;||~</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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; (<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)
(<code><a href="Control-Lens-Operators.html#v:-60--124--124--126-">&lt;||~</a></code>) :: <code><a href="Control-Lens-Iso.html#v: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>  -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; (<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)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--38--38--126-" class="def">(&lt;&amp;&amp;~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</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 <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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%26%26~" class="link">Source</a> <a href="#v:-60--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-">&amp;&amp;</a></code> a Boolean valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-38--38--126-">&amp;&amp;~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--38--38--126-">&lt;&amp;&amp;~</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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; (<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)
(<code><a href="Control-Lens-Operators.html#v:-60--38--38--126-">&lt;&amp;&amp;~</a></code>) :: <code><a href="Control-Lens-Iso.html#v: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>  -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; (<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)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--37--126-" class="def">(&lt;&lt;%~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a b -&gt; (a -&gt; b) -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%25~" class="link">Source</a> <a href="#v:-60--60--37--126-" 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>, but return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--37--126-">&lt;&lt;%~</a></code>) ::             <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b      -&gt; (a -&gt; b) -&gt; s -&gt; (a, t)
(<code><a href="Control-Lens-Operators.html#v:-60--60--37--126-">&lt;&lt;%~</a></code>) ::             <code><a href="Control-Lens-Iso.html#v:Iso">Iso</a></code> s t a b       -&gt; (a -&gt; b) -&gt; s -&gt; (a, t)
(<code><a href="Control-Lens-Operators.html#v:-60--60--37--126-">&lt;&lt;%~</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 =&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code> s t a b -&gt; (a -&gt; b) -&gt; s -&gt; (a, t)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60-.-126-" class="def">(&lt;&lt;.~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a b -&gt; b -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C.~" class="link">Source</a> <a href="#v:-60--60-.-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>, but return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60-.-126-">&lt;&lt;.~</a></code>) ::             <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b      -&gt; b -&gt; s -&gt; (a, t)
(<code><a href="Control-Lens-Operators.html#v:-60--60-.-126-">&lt;&lt;.~</a></code>) ::             <code><a href="Control-Lens-Iso.html#v:Iso">Iso</a></code> s t a b       -&gt; b -&gt; s -&gt; (a, t)
(<code><a href="Control-Lens-Operators.html#v:-60--60-.-126-">&lt;&lt;.~</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 =&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code> s t a b -&gt; b -&gt; s -&gt; (a, t)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--63--126-" class="def">(&lt;&lt;?~)</a> :: <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> 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) -&gt; b -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%3F~" class="link">Source</a> <a href="#v:-60--60--63--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> with a <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#v:Just">Just</a></code> value, but return the old value.</p><p>If you do not need the old value (<code><a href="Control-Lens-Setter.html#v:-63--126-">?~</a></code>) is more flexible.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>import Data.Map as Map
</code></strong><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>_2.at &quot;hello&quot; &lt;&lt;?~ &quot;world&quot; $ (42,Map.fromList [(&quot;goodnight&quot;,&quot;gracie&quot;)])
</code></strong>(Nothing,(42,fromList [(&quot;goodnight&quot;,&quot;gracie&quot;),(&quot;hello&quot;,&quot;world&quot;)]))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--63--126-">&lt;&lt;?~</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)       -&gt; b -&gt; s -&gt; (a, t)
(<code><a href="Control-Lens-Operators.html#v:-60--60--63--126-">&lt;&lt;?~</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)      -&gt; b -&gt; s -&gt; (a, t)
(<code><a href="Control-Lens-Operators.html#v:-60--60--63--126-">&lt;&lt;?~</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) -&gt; b -&gt; s -&gt; (a, t)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--43--126-" class="def">(&lt;&lt;+~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; s -&gt; (a, s) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%2B~" class="link">Source</a> <a href="#v:-60--60--43--126-" class="selflink">#</a></p><div class="doc"><p>Increment the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-43--126-">+~</a></code>) is more flexible.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 &lt;&lt;+~ c
</code></strong>(a,(a + c,b))
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _2 &lt;&lt;+~ c
</code></strong>(b,(a,b + c))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--43--126-">&lt;&lt;+~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--60--43--126-">&lt;&lt;+~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--45--126-" class="def">(&lt;&lt;-~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; s -&gt; (a, s) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C-~" class="link">Source</a> <a href="#v:-60--60--45--126-" class="selflink">#</a></p><div class="doc"><p>Decrement the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-45--126-">-~</a></code>) is more flexible.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 &lt;&lt;-~ c
</code></strong>(a,(a - c,b))
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _2 &lt;&lt;-~ c
</code></strong>(b,(a,b - c))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--45--126-">&lt;&lt;-~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--60--45--126-">&lt;&lt;-~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--42--126-" class="def">(&lt;&lt;*~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Num">Num</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; s -&gt; (a, s) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%2A~" class="link">Source</a> <a href="#v:-60--60--42--126-" class="selflink">#</a></p><div class="doc"><p>Multiply the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-45--126-">-~</a></code>) is more flexible.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 &lt;&lt;*~ c
</code></strong>(a,(a * c,b))
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _2 &lt;&lt;*~ c
</code></strong>(b,(a,b * c))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--42--126-">&lt;&lt;*~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--60--42--126-">&lt;&lt;*~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--47--47--126-" class="def">(&lt;&lt;//~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Fractional">Fractional</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; s -&gt; (a, s) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%2F%2F~" class="link">Source</a> <a href="#v:-60--60--47--47--126-" class="selflink">#</a></p><div class="doc"><p>Divide the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-47--47--126-">//~</a></code>) is more flexible.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 &lt;&lt;//~ c
</code></strong>(a,(a / c,b))
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;Hawaii&quot;,10) &amp; _2 &lt;&lt;//~ 2
</code></strong>(10.0,(&quot;Hawaii&quot;,5.0))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--47--47--126-">&lt;&lt;//~</a></code>) :: Fractional a =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--60--47--47--126-">&lt;&lt;//~</a></code>) :: Fractional a =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--94--126-" class="def">(&lt;&lt;^~)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; s -&gt; (a, s) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%5E~" class="link">Source</a> <a href="#v:-60--60--94--126-" class="selflink">#</a></p><div class="doc"><p>Raise the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> to a non-negative power and return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-94--126-">^~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--94--126-">&lt;&lt;^~</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; e -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--60--94--126-">&lt;&lt;^~</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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; e -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--94--94--126-" class="def">(&lt;&lt;^^~)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; s -&gt; (a, s) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%5E%5E~" class="link">Source</a> <a href="#v:-60--60--94--94--126-" class="selflink">#</a></p><div class="doc"><p>Raise the target of a fractionally valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> to an integral power and return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-94--94--126-">^^~</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--94--94--126-">&lt;&lt;^^~</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; e -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--60--94--94--126-">&lt;&lt;^^~</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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; e -&gt; S -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--42--42--126-" class="def">(&lt;&lt;**~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Numeric.html#t:Floating">Floating</a> a =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; s -&gt; (a, s) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%2A%2A~" class="link">Source</a> <a href="#v:-60--60--42--42--126-" class="selflink">#</a></p><div class="doc"><p>Raise the target of a floating-point valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> to an arbitrary power and return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-42--42--126-">**~</a></code>) is more flexible.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 &lt;&lt;**~ c
</code></strong>(a,(a**c,b))
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _2 &lt;&lt;**~ c
</code></strong>(b,(a,b**c))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--42--42--126-">&lt;&lt;**~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
(<code><a href="Control-Lens-Operators.html#v:-60--60--42--42--126-">&lt;&lt;**~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; s -&gt; (a, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--124--124--126-" class="def">(&lt;&lt;||~)</a> :: <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>, s) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%7C%7C~" class="link">Source</a> <a href="#v:-60--60--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 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> and return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-124--124--126-">||~</a></code>) is more flexible.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(False,6) &amp; _1 &lt;&lt;||~ True
</code></strong>(False,(True,6))
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;hello&quot;,True) &amp; _2 &lt;&lt;||~ False
</code></strong>(True,(&quot;hello&quot;,True))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--124--124--126-">&lt;&lt;||~</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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; (<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)
(<code><a href="Control-Lens-Operators.html#v:-60--60--124--124--126-">&lt;&lt;||~</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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; (<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)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--38--38--126-" class="def">(&lt;&lt;&amp;&amp;~)</a> :: <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>, s) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%26%26~" class="link">Source</a> <a href="#v:-60--60--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-">&amp;&amp;</a></code> the target 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> and return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-38--38--126-">&amp;&amp;~</a></code>) is more flexible.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(False,6) &amp; _1 &lt;&lt;&amp;&amp;~ True
</code></strong>(False,(False,6))
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;hello&quot;,True) &amp; _2 &lt;&lt;&amp;&amp;~ False
</code></strong>(True,(&quot;hello&quot;,False))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--38--38--126-">&lt;&lt;&amp;&amp;~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s Bool -&gt; Bool -&gt; s -&gt; (Bool, s)
(<code><a href="Control-Lens-Operators.html#v:-60--60--38--38--126-">&lt;&lt;&amp;&amp;~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s Bool -&gt; Bool -&gt; s -&gt; (Bool, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--60--62--126-" class="def">(&lt;&lt;&lt;&gt;~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> r =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> r) s r -&gt; r -&gt; s -&gt; (r, s) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%3C%3E~" class="link">Source</a> <a href="#v:-60--60--60--62--126-" class="selflink">#</a></p><div class="doc"><p>Modify the target of a monoidally valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</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 new value and return the old value.</p><p>When you do not need the old value, (<code><a href="Control-Lens-Setter.html#v:-60--62--126-">&lt;&gt;~</a></code>) is more flexible.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(Sum a,b) &amp; _1 &lt;&lt;&lt;&gt;~ Sum c
</code></strong>(Sum {getSum = a},(Sum {getSum = a + c},b))
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>_2 &lt;&lt;&lt;&gt;~ &quot;, 007&quot; $ (&quot;James&quot;, &quot;Bond&quot;)
</code></strong>(&quot;Bond&quot;,(&quot;James&quot;,&quot;Bond, 007&quot;))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--60--62--126-">&lt;&lt;&lt;&gt;~</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> r =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s r -&gt; r -&gt; s -&gt; (r, s)
(<code><a href="Control-Lens-Operators.html#v:-60--60--60--62--126-">&lt;&lt;&lt;&gt;~</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> r =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s r -&gt; r -&gt; s -&gt; (r, s)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--37--61-" class="def">(&lt;%=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> b) s s a b -&gt; (a -&gt; b) -&gt; m b <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%25%3D" class="link">Source</a> <a href="#v:-60--37--61-" 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> into your <code>Monad'</code>s state by a user supplied
 function and return the result.</p><p>When applied to a <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code>, it this will return a monoidal summary of all of the intermediate
 results.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--37--61-">&lt;%=</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             =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; (a -&gt; a) -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--37--61-">&lt;%=</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             =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a       -&gt; (a -&gt; a) -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--37--61-">&lt;%=</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) =&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal-39-">Traversal'</a></code> s a -&gt; (a -&gt; a) -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--43--61-" class="def">(&lt;+=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%2B%3D" class="link">Source</a> <a href="#v:-60--43--61-" class="selflink">#</a></p><div class="doc"><p>Add to the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> into your <code>Monad'</code>s state
 and return the result.</p><p>When you do not need the result of the addition, (<code><a href="Control-Lens-Setter.html#v:-43--61-">+=</a></code>) is more
 flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--43--61-">&lt;+=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--43--61-">&lt;+=</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) =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--45--61-" class="def">(&lt;-=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C-%3D" class="link">Source</a> <a href="#v:-60--45--61-" class="selflink">#</a></p><div class="doc"><p>Subtract from the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> into your <code>Monad'</code>s
 state and return the result.</p><p>When you do not need the result of the subtraction, (<code><a href="Control-Lens-Setter.html#v:-45--61-">-=</a></code>) is more
 flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--45--61-">&lt;-=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--45--61-">&lt;-=</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) =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--42--61-" class="def">(&lt;*=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%2A%3D" class="link">Source</a> <a href="#v:-60--42--61-" class="selflink">#</a></p><div class="doc"><p>Multiply the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> into your <code>Monad'</code>s
 state and return the result.</p><p>When you do not need the result of the multiplication, (<code><a href="Control-Lens-Setter.html#v:-42--61-">*=</a></code>) is more
 flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--42--61-">&lt;*=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--42--61-">&lt;*=</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) =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--47--47--61-" class="def">(&lt;//=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%2F%2F%3D" class="link">Source</a> <a href="#v:-60--47--47--61-" class="selflink">#</a></p><div class="doc"><p>Divide the target of a fractionally valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> into your <code>Monad'</code>s state
 and return the result.</p><p>When you do not need the result of the division, (<code><a href="Control-Lens-Setter.html#v:-47--47--61-">//=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--47--47--61-">&lt;//=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--47--47--61-">&lt;//=</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) =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--94--61-" class="def">(&lt;^=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%5E%3D" class="link">Source</a> <a href="#v:-60--94--61-" class="selflink">#</a></p><div class="doc"><p>Raise the target of a numerically valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> into your <code>Monad'</code>s state
 to a non-negative <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> power and return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-94--61-">^=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--94--61-">&lt;^=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; e -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--94--61-">&lt;^=</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) =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a -&gt; e -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--94--94--61-" class="def">(&lt;^^=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%5E%5E%3D" class="link">Source</a> <a href="#v:-60--94--94--61-" class="selflink">#</a></p><div class="doc"><p>Raise the target of a fractionally valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> into your <code>Monad'</code>s state
 to an <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> power and return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-94--94--61-">^^=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--94--94--61-">&lt;^^=</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> b, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; e -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--94--94--61-">&lt;^^=</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> b, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Integral">Integral</a></code> e) =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a  -&gt; e -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--42--42--61-" class="def">(&lt;**=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%2A%2A%3D" class="link">Source</a> <a href="#v:-60--42--42--61-" class="selflink">#</a></p><div class="doc"><p>Raise the target of a floating-point valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> into your <code>Monad'</code>s
 state to an arbitrary power and return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-42--42--61-">**=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--42--42--61-">&lt;**=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--42--42--61-">&lt;**=</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) =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--124--124--61-" class="def">(&lt;||=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%7C%7C%3D" class="link">Source</a> <a href="#v:-60--124--124--61-" 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> a Boolean valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> into your <code>Monad'</code>s state and return
 the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-124--124--61-">||=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--124--124--61-">&lt;||=</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 =&gt; <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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m <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="Control-Lens-Operators.html#v:-60--124--124--61-">&lt;||=</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 =&gt; <code><a href="Control-Lens-Iso.html#v: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>  -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code>
</pre></div></div><div class="top"><p class="src"><a id="v:-60--38--38--61-" class="def">(&lt;&amp;&amp;=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%26%26%3D" class="link">Source</a> <a href="#v:-60--38--38--61-" 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-">&amp;&amp;</a></code> a Boolean valued <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> into your <code>Monad'</code>s state and return
 the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-38--38--61-">&amp;&amp;=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--38--38--61-">&lt;&amp;&amp;=</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 =&gt; <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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m <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="Control-Lens-Operators.html#v:-60--38--38--61-">&lt;&amp;&amp;=</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 =&gt; <code><a href="Control-Lens-Iso.html#v: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>  -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code>
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--37--61-" class="def">(&lt;&lt;%=)</a> :: (<a href="file:///usr/share/doc/libghc-profunctors-doc/html/Data-Profunctor-Strong.html#t:Strong">Strong</a> p, <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m) =&gt; <a href="Control-Lens-Type.html#t:Over">Over</a> p (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s s a b -&gt; p a b -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%25%3D" class="link">Source</a> <a href="#v:-60--60--37--61-" 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> into your <code>Monad'</code>s state by a user supplied
 function and return the <em>old</em> value that was replaced.</p><p>When applied to a <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code>, this will return a monoidal summary of all of the old values
 present.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--37--61-">&lt;&lt;%=</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             =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; (a -&gt; a) -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--37--61-">&lt;&lt;%=</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             =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a       -&gt; (a -&gt; a) -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--37--61-">&lt;&lt;%=</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) =&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal-39-">Traversal'</a></code> s a -&gt; (a -&gt; a) -&gt; m a
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--37--61-">&lt;&lt;%=</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 =&gt; <code><a href="Control-Lens-Type.html#t:LensLike">LensLike</a></code> ((,)a) s s a b -&gt; (a -&gt; b) -&gt; m a</pre></div></div><div class="top"><p class="src"><a id="v:-60--60-.-61-" class="def">(&lt;&lt;.=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s s a b -&gt; b -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C.%3D" class="link">Source</a> <a href="#v:-60--60-.-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> into your <code>Monad'</code>s state with a user supplied
 value and return the <em>old</em> value that was replaced.</p><p>When applied to a <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code>, this will return a monoidal summary of all of the old values
 present.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60-.-61-">&lt;&lt;.=</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             =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60-.-61-">&lt;&lt;.=</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             =&gt; <code><a href="Control-Lens-Iso.html#v:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60-.-61-">&lt;&lt;.=</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) =&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--63--61-" class="def">(&lt;&lt;?=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> 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) -&gt; b -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%3F%3D" class="link">Source</a> <a href="#v:-60--60--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> into your <code>Monad'</code>s 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 user supplied
 value and return the <em>old</em> value that was replaced.</p><p>When applied to a <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code>, this will return a monoidal summary of all of the old values
 present.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-63--61-">?=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--63--61-">&lt;&lt;?=</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             =&gt; <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a (Maybe b)      -&gt; b -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--63--61-">&lt;&lt;?=</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             =&gt; <code><a href="Control-Lens-Iso.html#v:Iso">Iso</a></code> s t a (Maybe b)       -&gt; b -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--63--61-">&lt;&lt;?=</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) =&gt; <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code> s t a (Maybe b) -&gt; b -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--43--61-" class="def">(&lt;&lt;+=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%2B%3D" class="link">Source</a> <a href="#v:-60--60--43--61-" 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> into your <code>Monad'</code>s state by adding a value
 and return the <em>old</em> value that was replaced.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-43--61-">+=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--43--61-">&lt;&lt;+=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--43--61-">&lt;&lt;+=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--45--61-" class="def">(&lt;&lt;-=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C-%3D" class="link">Source</a> <a href="#v:-60--60--45--61-" 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> into your <code>Monad'</code>s state by subtracting a value
 and return the <em>old</em> value that was replaced.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-45--61-">-=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--45--61-">&lt;&lt;-=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--45--61-">&lt;&lt;-=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--42--61-" class="def">(&lt;&lt;*=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%2A%3D" class="link">Source</a> <a href="#v:-60--60--42--61-" 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> into your <code>Monad'</code>s state by multipling a value
 and return the <em>old</em> value that was replaced.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-42--61-">*=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--42--61-">&lt;&lt;*=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--42--61-">&lt;&lt;*=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--47--47--61-" class="def">(&lt;&lt;//=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%2F%2F%3D" class="link">Source</a> <a href="#v:-60--60--47--47--61-" 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> into 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>s state by dividing by a value
 and return the <em>old</em> value that was replaced.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-47--47--61-">//=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--47--47--61-">&lt;&lt;//=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--47--47--61-">&lt;&lt;//=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--94--61-" class="def">(&lt;&lt;^=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%5E%3D" class="link">Source</a> <a href="#v:-60--60--94--61-" 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> into your <code>Monad'</code>s state by raising it by a non-negative power
 and return the <em>old</em> value that was replaced.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-94--61-">^=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--94--61-">&lt;&lt;^=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; e -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--94--61-">&lt;&lt;^=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--94--94--61-" class="def">(&lt;&lt;^^=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; e -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%5E%5E%3D" class="link">Source</a> <a href="#v:-60--60--94--94--61-" 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> into your <code>Monad'</code>s state by raising it by an integral power
 and return the <em>old</em> value that was replaced.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-94--94--61-">^^=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--94--94--61-">&lt;&lt;^^=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; e -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--94--94--61-">&lt;&lt;^^=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; e -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--42--42--61-" class="def">(&lt;&lt;**=)</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) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s a -&gt; a -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%2A%2A%3D" class="link">Source</a> <a href="#v:-60--60--42--42--61-" 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> into your <code>Monad'</code>s state by raising it by an arbitrary power
 and return the <em>old</em> value that was replaced.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-42--42--61-">**=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--42--42--61-">&lt;&lt;**=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--42--42--61-">&lt;&lt;**=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--124--124--61-" class="def">(&lt;&lt;||=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%7C%7C%3D" class="link">Source</a> <a href="#v:-60--60--124--124--61-" 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> into your <code>Monad'</code>s state by taking its 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
 and return the <em>old</em> value that was replaced.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-124--124--61-">||=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--124--124--61-">&lt;&lt;||=</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 =&gt; <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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m <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="Control-Lens-Operators.html#v:-60--60--124--124--61-">&lt;&lt;||=</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 =&gt; <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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code>
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--38--38--61-" class="def">(&lt;&lt;&amp;&amp;=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a>) s <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%26%26%3D" class="link">Source</a> <a href="#v:-60--60--38--38--61-" 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> into your <code>Monad'</code>s state by taking its logical <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#v:-38--38-">&amp;&amp;</a></code> with a value
 and return the <em>old</em> value that was replaced.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-38--38--61-">&amp;&amp;=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--38--38--61-">&lt;&lt;&amp;&amp;=</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 =&gt; <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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m <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="Control-Lens-Operators.html#v:-60--60--38--38--61-">&lt;&lt;&amp;&amp;=</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 =&gt; <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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code>
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--60--62--61-" class="def">(&lt;&lt;&lt;&gt;=)</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> r) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> r) s r -&gt; r -&gt; m r <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%3C%3E%3D" class="link">Source</a> <a href="#v:-60--60--60--62--61-" 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> into your <code>Monad'</code>s state 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
 and return the <em>old</em> value that was replaced.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-60--62--61-">&lt;&gt;=</a></code>) is more flexible.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--60--62--61-">&lt;&lt;&lt;&gt;=</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> r) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s r -&gt; r -&gt; m r
(<code><a href="Control-Lens-Operators.html#v:-60--60--60--62--61-">&lt;&lt;&lt;&gt;=</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> r) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s r -&gt; r -&gt; m r
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--126-" class="def">(&lt;&lt;~)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; m b -&gt; m b <span class="fixity">infixr 2</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C~" class="link">Source</a> <a href="#v:-60--60--126-" class="selflink">#</a></p><div class="doc"><p>Run a monadic action, and set the target of <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> to its result.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--126-">&lt;&lt;~</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 =&gt; <code><a href="Control-Lens-Iso.html#v:Iso">Iso</a></code> s s a b   -&gt; m b -&gt; m b
(<code><a href="Control-Lens-Operators.html#v:-60--60--126-">&lt;&lt;~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s s a b  -&gt; m b -&gt; m b
</pre><p>NB: This is limited to taking an actual <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> than admitting a <code><a href="Control-Lens-Traversal.html#v:Traversal">Traversal</a></code> because
 there are potential loss of state issues otherwise.</p></div></div><div class="top"><p class="src"><a id="v:-60--60--62--126-" class="def">(&lt;&lt;&gt;~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> m =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> m) s t m m -&gt; m -&gt; s -&gt; (m, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%3E~" class="link">Source</a> <a href="#v:-60--60--62--126-" class="selflink">#</a></p><div class="doc"><p><code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#v:mappend">mappend</a></code> a monoidal value onto the end of the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> and
 return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-60--62--126-">&lt;&gt;~</a></code>) is more flexible.</p></div></div><div class="top"><p class="src"><a id="v:-60--60--62--61-" class="def">(&lt;&lt;&gt;=)</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> r) =&gt; <a href="Control-Lens-Type.html#t:LensLike-39-">LensLike'</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> r) s r -&gt; r -&gt; m r <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%3E%3D" class="link">Source</a> <a href="#v:-60--60--62--61-" class="selflink">#</a></p><div class="doc"><p><code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#v:mappend">mappend</a></code> a monoidal value onto the end of the target of a <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> into
 your <code>Monad'</code>s state and return the result.</p><p>When you do not need the result of the operation, (<code><a href="Control-Lens-Setter.html#v:-60--62--61-">&lt;&gt;=</a></code>) is more flexible.</p></div></div><div class="top"><p class="src"><a id="v:-60--37--64--126-" class="def">(&lt;%@~)</a> :: <a href="Control-Lens-Type.html#t:Over">Over</a> (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i) (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> b) s t a b -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; (b, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%25%40~" class="link">Source</a> <a href="#v:-60--37--64--126-" class="selflink">#</a></p><div class="doc"><p>Adjust the target of an <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> returning the intermediate result, or
 adjust all of the targets of an <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> and return a monoidal summary
 along with the answer.</p><pre>l <code><a href="Control-Lens-Operators.html#v:-60--37--126-">&lt;%~</a></code> f &#8801; l <code><a href="Control-Lens-Operators.html#v:-60--37--64--126-">&lt;%@~</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><p>When you do not need access to the index then (<code><a href="Control-Lens-Operators.html#v:-60--37--126-">&lt;%~</a></code>) is more liberal in what it can accept.</p><p>If you do not need the intermediate result, you can use (<code><a href="Control-Lens-Setter.html#v:-37--64--126-">%@~</a></code>) or even (<code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code>).</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--37--64--126-">&lt;%@~</a></code>) ::             <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b      -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; (b, t)
(<code><a href="Control-Lens-Operators.html#v:-60--37--64--126-">&lt;%@~</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> b =&gt; <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> i s t a b -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; (b, t)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--37--64--126-" class="def">(&lt;&lt;%@~)</a> :: <a href="Control-Lens-Type.html#t:Over">Over</a> (<a href="Control-Lens-Internal-Indexed.html#t:Indexed">Indexed</a> i) (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s t a b -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; (a, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%25%40~" class="link">Source</a> <a href="#v:-60--60--37--64--126-" class="selflink">#</a></p><div class="doc"><p>Adjust the target of an <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> returning the old value, or
 adjust all of the targets of an <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> and return a monoidal summary
 of the old values along with the answer.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--37--64--126-">&lt;&lt;%@~</a></code>) ::             <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b      -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; (a, t)
(<code><a href="Control-Lens-Operators.html#v:-60--60--37--64--126-">&lt;&lt;%@~</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 =&gt; <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> i s t a b -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; (a, t)
</pre></div></div><div class="top"><p class="src"><a id="v:-37--37--64--126-" class="def">(%%@~)</a> :: <a href="Control-Lens-Type.html#t:IndexedLensLike">IndexedLensLike</a> i f s t a b -&gt; (i -&gt; a -&gt; f b) -&gt; s -&gt; f t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%25%25%40~" class="link">Source</a> <a href="#v:-37--37--64--126-" class="selflink">#</a></p><div class="doc"><p>Adjust the target of an <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> returning a supplementary result, or
 adjust all of the targets of an <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> and return a monoidal summary
 of the supplementary results and the answer.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-37--37--64--126-">%%@~</a></code>) &#8801; <code><a href="Control-Lens-Indexed.html#v:withIndex">withIndex</a></code>
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-37--37--64--126-">%%@~</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 =&gt; <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b      -&gt; (i -&gt; a -&gt; f b) -&gt; s -&gt; f t
(<code><a href="Control-Lens-Operators.html#v:-37--37--64--126-">%%@~</a></code>) :: <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a></code> f =&gt; <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> i s t a b -&gt; (i -&gt; a -&gt; f b) -&gt; s -&gt; f t
</pre><p>In particular, it is often useful to think of this function as having one of these even more
 restricted type signatures:</p><pre>(<code><a href="Control-Lens-Operators.html#v:-37--37--64--126-">%%@~</a></code>) ::             <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b      -&gt; (i -&gt; a -&gt; (r, b)) -&gt; s -&gt; (r, t)
(<code><a href="Control-Lens-Operators.html#v:-37--37--64--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> r =&gt; <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> i s t a b -&gt; (i -&gt; a -&gt; (r, b)) -&gt; s -&gt; (r, t)
</pre></div></div><div class="top"><p class="src"><a id="v:-37--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 =&gt; <a href="Control-Lens-Type.html#t:IndexedLensLike">IndexedLensLike</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> r) s s a b -&gt; (i -&gt; a -&gt; (r, b)) -&gt; m r <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%25%25%40%3D" class="link">Source</a> <a href="#v:-37--37--64--61-" class="selflink">#</a></p><div class="doc"><p>Adjust the target of an <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> returning a supplementary result, or
 adjust all of the targets of an <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> within the current state, and
 return a monoidal summary of the supplementary results.</p><pre>l <code><a href="Control-Lens-Operators.html#v:-37--37--64--61-">%%@=</a></code> f &#8801; <code><a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#v:state">state</a></code> (l <code><a href="Control-Lens-Operators.html#v:-37--37--64--126-">%%@~</a></code> f)
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-37--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                 =&gt; <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s s a b      -&gt; (i -&gt; a -&gt; (r, b)) -&gt; s -&gt; m r
(<code><a href="Control-Lens-Operators.html#v:-37--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="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a></code> r) =&gt; <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> i s s a b -&gt; (i -&gt; a -&gt; (r, b)) -&gt; s -&gt; m r
</pre></div></div><div class="top"><p class="src"><a id="v:-60--37--64--61-" class="def">(&lt;%@=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:IndexedLensLike">IndexedLensLike</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> b) s s a b -&gt; (i -&gt; a -&gt; b) -&gt; m b <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%25%40%3D" class="link">Source</a> <a href="#v:-60--37--64--61-" class="selflink">#</a></p><div class="doc"><p>Adjust the target of an <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> returning the intermediate result, or
 adjust all of the targets of an <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> within the current state, and
 return a monoidal summary of the intermediate results.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--37--64--61-">&lt;%@=</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                 =&gt; <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s s a b      -&gt; (i -&gt; a -&gt; b) -&gt; m b
(<code><a href="Control-Lens-Operators.html#v:-60--37--64--61-">&lt;%@=</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> b) =&gt; <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> i s s a b -&gt; (i -&gt; a -&gt; b) -&gt; m b
</pre></div></div><div class="top"><p class="src"><a id="v:-60--60--37--64--61-" class="def">(&lt;&lt;%@=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Type.html#t:IndexedLensLike">IndexedLensLike</a> i (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a) s s a b -&gt; (i -&gt; a -&gt; b) -&gt; m a <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%3C%25%40%3D" class="link">Source</a> <a href="#v:-60--60--37--64--61-" class="selflink">#</a></p><div class="doc"><p>Adjust the target of an <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> returning the old value, or
 adjust all of the targets of an <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> within the current state, and
 return a monoidal summary of the old values.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--60--37--64--61-">&lt;&lt;%@=</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                 =&gt; <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s s a b      -&gt; (i -&gt; a -&gt; b) -&gt; m a
(<code><a href="Control-Lens-Operators.html#v:-60--60--37--64--61-">&lt;&lt;%@=</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> b) =&gt; <code><a href="Control-Lens-Traversal.html#v:IndexedTraversal">IndexedTraversal</a></code> i s s a b -&gt; (i -&gt; a -&gt; b) -&gt; m a
</pre></div></div><div class="top"><p class="src"><a id="v:-94--35-" class="def">(^#)</a> :: s -&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; a <span class="fixity">infixl 8</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%5E%23" class="link">Source</a> <a href="#v:-94--35-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Getter.html#v:-94-.">^.</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;hello&quot;,&quot;world&quot;)^#_2
</code></strong>&quot;world&quot;
</pre></div></div><div class="top"><p class="src"><a id="v:-35--126-" class="def">(#~)</a> :: <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; b -&gt; s -&gt; t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%23~" class="link">Source</a> <a href="#v:-35--126-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Setter.html#v:.-126-">.~</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;hello&quot;,&quot;there&quot;) &amp; _2 #~ &quot;world&quot;
</code></strong>(&quot;hello&quot;,&quot;world&quot;)
</pre></div></div><div class="top"><p class="src"><a id="v:-35--37--126-" class="def">(#%~)</a> :: <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; (a -&gt; b) -&gt; s -&gt; t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%23%25~" class="link">Source</a> <a href="#v:-35--37--126-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Setter.html#v:-37--126-">%~</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;hello&quot;,&quot;world&quot;) &amp; _2 #%~ length
</code></strong>(&quot;hello&quot;,5)
</pre></div></div><div class="top"><p class="src"><a id="v:-35--37--37--126-" class="def">(#%%~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; (a -&gt; f b) -&gt; s -&gt; f t <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%23%25%25~" class="link">Source</a> <a href="#v:-35--37--37--126-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Operators.html#v:-37--37--126-">%%~</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;hello&quot;,&quot;world&quot;) &amp; _2 #%%~ \x -&gt; (length x, x ++ &quot;!&quot;)
</code></strong>(5,(&quot;hello&quot;,&quot;world!&quot;))
</pre></div></div><div class="top"><p class="src"><a id="v:-35--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 =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; b -&gt; m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%23%3D" class="link">Source</a> <a href="#v:-35--61-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Setter.html#v:.-61-">.=</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:-35--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 =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; (a -&gt; b) -&gt; m () <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%23%25%3D" class="link">Source</a> <a href="#v:-35--37--61-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Setter.html#v:-37--61-">%=</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:-60--35--37--126-" class="def">(&lt;#%~)</a> :: <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; (a -&gt; b) -&gt; s -&gt; (b, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%23%25~" class="link">Source</a> <a href="#v:-60--35--37--126-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Operators.html#v:-60--37--126-">&lt;%~</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;hello&quot;,&quot;world&quot;) &amp; _2 &lt;#%~ length
</code></strong>(5,(&quot;hello&quot;,5))
</pre></div></div><div class="top"><p class="src"><a id="v:-60--35--37--61-" class="def">(&lt;#%=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; (a -&gt; b) -&gt; m b <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%23%25%3D" class="link">Source</a> <a href="#v:-60--35--37--61-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Operators.html#v:-60--37--61-">&lt;%=</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:-35--37--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 =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; (a -&gt; (r, b)) -&gt; m r <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%23%25%25%3D" class="link">Source</a> <a href="#v:-35--37--37--61-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Operators.html#v:-37--37--61-">%%=</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:-60--35--126-" class="def">(&lt;#~)</a> :: <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s t a b -&gt; b -&gt; s -&gt; (b, t) <span class="fixity">infixr 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%23~" class="link">Source</a> <a href="#v:-60--35--126-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Setter.html#v:-60-.-126-">&lt;.~</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;hello&quot;,&quot;there&quot;) &amp; _2 &lt;#~ &quot;world&quot;
</code></strong>(&quot;world&quot;,(&quot;hello&quot;,&quot;world&quot;))
</pre></div></div><div class="top"><p class="src"><a id="v:-60--35--61-" class="def">(&lt;#=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Lens.html#t:ALens">ALens</a> s s a b -&gt; b -&gt; m b <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Control-Lens-Lens.html#%3C%23%3D" class="link">Source</a> <a href="#v:-60--35--61-" class="selflink">#</a></p><div class="doc"><p>A version of (<code><a href="Control-Lens-Setter.html#v:-60-.-61-">&lt;.=</a></code>) that works on <code><a href="Control-Lens-Lens.html#t:ALens">ALens</a></code>.</p></div></div><h1 id="g:6"><a href="Control-Lens-Plated.html">Control.Lens.Plated</a></h1><div class="top"><p class="src"><a id="v:..." class="def">(...)</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-Plated.html#t:Plated">Plated</a> c) =&gt; <a href="Control-Lens-Type.html#t:LensLike">LensLike</a> f s t c c -&gt; <a href="Control-Lens-Type.html#t:Over">Over</a> p f c c a b -&gt; <a href="Control-Lens-Type.html#t:Over">Over</a> p f s t a b <span class="fixity">infixr 9</span><span class="rightedge"></span> <a href="src/Control-Lens-Plated.html#..." class="link">Source</a> <a href="#v:..." class="selflink">#</a></p><div class="doc"><p>Compose through a plate</p></div></div><h1 id="g:7"><a href="Control-Lens-Review.html">Control.Lens.Review</a></h1><div class="top"><p class="src"><a id="v:-35-" class="def">(#)</a> :: <a href="Control-Lens-Type.html#t:AReview">AReview</a> t b -&gt; b -&gt; t <span class="fixity">infixr 8</span><span class="rightedge"></span> <a href="src/Control-Lens-Review.html#%23" class="link">Source</a> <a href="#v:-35-" class="selflink">#</a></p><div class="doc"><p>An infix alias for <code><a href="Control-Lens-Review.html#v:review">review</a></code>.</p><pre><code><a href="Control-Lens-Review.html#v:unto">unto</a></code> f # x &#8801; f x
l # x &#8801; x <code><a href="Control-Lens-Operators.html#v:-94-.">^.</a></code> <code><a href="Control-Lens-Review.html#v:re">re</a></code> l
</pre><p>This is commonly used when using a <code><a href="Control-Lens-Type.html#t:Prism">Prism</a></code> as a smart constructor.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>_Left # 4
</code></strong>Left 4
</pre><p>But it can be used for any <code><a href="Control-Lens-Type.html#t:Prism">Prism</a></code></p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>base 16 # 123
</code></strong>&quot;7b&quot;
</pre><pre>(#) :: <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code>      s a -&gt; a -&gt; s
(#) :: <code><a href="Control-Lens-Type.html#t:Prism-39-">Prism'</a></code>    s a -&gt; a -&gt; s
(#) :: <code><a href="Control-Lens-Type.html#t:Review">Review</a></code>    s a -&gt; a -&gt; s
(#) :: <code><a href="Control-Lens-Type.html#t:Equality-39-">Equality'</a></code> s a -&gt; a -&gt; s
</pre></div></div><h1 id="g:8"><a href="Control-Lens-Setter.html">Control.Lens.Setter</a></h1><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 -&gt; (a -&gt; b) -&gt; s -&gt; 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-Type.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 &#8801; <code><a href="Control-Lens-Setter.html#v:mapped">mapped</a></code> <code><a href="Control-Lens-Operators.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 &#8801; <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-Operators.html#v:-37--126-">%~</a></code> f
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b,c) &amp; _3 %~ f
</code></strong>(a,b,f c)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; both %~ f
</code></strong>(f a,f b)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>_2 %~ length $ (1,&quot;hello&quot;)
</code></strong>(1,5)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </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">&gt;&gt;&gt; </code><strong class="userinput"><code>traverse %~ even $ [1,2,3]
</code></strong>[False,True,False]
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>traverse.traverse %~ length $ [[&quot;hello&quot;,&quot;world&quot;],[&quot;!!!&quot;]]
</code></strong>[[5,5],[3]]
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-37--126-">%~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Setter">Setter</a></code> s t a b    -&gt; (a -&gt; b) -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:-37--126-">%~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a b       -&gt; (a -&gt; b) -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:-37--126-">%~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b      -&gt; (a -&gt; b) -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:-37--126-">%~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a b -&gt; (a -&gt; b) -&gt; s -&gt; 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 -&gt; b -&gt; s -&gt; 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-Type.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-Operators.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-">&lt;$</a></code> a &#8801; <code><a href="Control-Lens-Setter.html#v:mapped">mapped</a></code> <code><a href="Control-Lens-Operators.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">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b,c,d) &amp; _4 .~ e
</code></strong>(a,b,c,e)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(42,&quot;world&quot;) &amp; _1 .~ &quot;hello&quot;
</code></strong>(&quot;hello&quot;,&quot;world&quot;)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; both .~ c
</code></strong>(c,c)
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:.-126-">.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Setter">Setter</a></code> s t a b    -&gt; b -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:.-126-">.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a b       -&gt; b -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:.-126-">.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b      -&gt; b -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:.-126-">.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a b -&gt; b -&gt; s -&gt; 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) -&gt; b -&gt; s -&gt; 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-Type.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-Operators.html#v:-63--126-">?~</a></code> t &#8801; <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">&gt;&gt;&gt; </code><strong class="userinput"><code>Nothing &amp; id ?~ a
</code></strong>Just a
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Map.empty &amp; at 3 ?~ x
</code></strong>fromList [(3,x)]
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-63--126-">?~</a></code>) :: <code><a href="Control-Lens-Type.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)    -&gt; b -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.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)       -&gt; b -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.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)      -&gt; b -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.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) -&gt; b -&gt; s -&gt; t
</pre></div></div><div class="top"><p class="src"><a id="v:-60-.-126-" class="def">(&lt;.~)</a> :: <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a b -&gt; b -&gt; s -&gt; (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-Operators.html#v:.-126-">.~</a></code> t</code> directly is a good idea.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 &lt;.~ c
</code></strong>(c,(c,b))
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;good&quot;,&quot;morning&quot;,&quot;vietnam&quot;) &amp; _3 &lt;.~ &quot;world&quot;
</code></strong>(&quot;world&quot;,(&quot;good&quot;,&quot;morning&quot;,&quot;world&quot;))
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(42,Map.fromList [(&quot;goodnight&quot;,&quot;gracie&quot;)]) &amp; _2.at &quot;hello&quot; &lt;.~ Just &quot;world&quot;
</code></strong>(Just &quot;world&quot;,(42,fromList [(&quot;goodnight&quot;,&quot;gracie&quot;),(&quot;hello&quot;,&quot;world&quot;)]))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60-.-126-">&lt;.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Setter">Setter</a></code> s t a b    -&gt; b -&gt; s -&gt; (b, t)
(<code><a href="Control-Lens-Operators.html#v:-60-.-126-">&lt;.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a b       -&gt; b -&gt; s -&gt; (b, t)
(<code><a href="Control-Lens-Operators.html#v:-60-.-126-">&lt;.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a b      -&gt; b -&gt; s -&gt; (b, t)
(<code><a href="Control-Lens-Operators.html#v:-60-.-126-">&lt;.~</a></code>) :: <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a b -&gt; b -&gt; s -&gt; (b, t)
</pre></div></div><div class="top"><p class="src"><a id="v:-60--63--126-" class="def">(&lt;?~)</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) -&gt; b -&gt; s -&gt; (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-Operators.html#v:-63--126-">?~</a></code> d</code> directly is a good idea.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>import Data.Map as Map
</code></strong><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>_2.at &quot;hello&quot; &lt;?~ &quot;world&quot; $ (42,Map.fromList [(&quot;goodnight&quot;,&quot;gracie&quot;)])
</code></strong>(&quot;world&quot;,(42,fromList [(&quot;goodnight&quot;,&quot;gracie&quot;),(&quot;hello&quot;,&quot;world&quot;)]))
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--63--126-">&lt;?~</a></code>) :: <code><a href="Control-Lens-Type.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)    -&gt; b -&gt; s -&gt; (b, t)
(<code><a href="Control-Lens-Operators.html#v:-60--63--126-">&lt;?~</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)       -&gt; b -&gt; s -&gt; (b, t)
(<code><a href="Control-Lens-Operators.html#v:-60--63--126-">&lt;?~</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)      -&gt; b -&gt; s -&gt; (b, t)
(<code><a href="Control-Lens-Operators.html#v:-60--63--126-">&lt;?~</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) -&gt; b -&gt; s -&gt; (b, 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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-Type.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">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 +~ c
</code></strong>(a + c,b)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; both +~ c
</code></strong>(a + c,b + c)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(1,2) &amp; _2 +~ 1
</code></strong>(1,3)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>[(a,b),(c,d)] &amp; traverse.both +~ e
</code></strong>[(a + e,b + e),(c + e,d + e)]
</pre><pre>(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; s -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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-Type.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">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 *~ c
</code></strong>(a * c,b)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; both *~ c
</code></strong>(a * c,b * c)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(1,2) &amp; _2 *~ 4
</code></strong>(1,8)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>Just 24 &amp; mapped *~ 2
</code></strong>Just 48
</pre><pre>(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; s -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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-Type.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">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 -~ c
</code></strong>(a - c,b)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; both -~ c
</code></strong>(a - c,b - c)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>_1 -~ 2 $ (1,2)
</code></strong>(-1,2)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </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-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; s -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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-Type.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">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 //~ c
</code></strong>(a / c,b)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; both //~ c
</code></strong>(a / c,b / c)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(&quot;Hawaii&quot;,10) &amp; _2 //~ 2
</code></strong>(&quot;Hawaii&quot;,5.0)
</pre><pre>(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; s -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; e -&gt; s -&gt; 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-Type.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">&gt;&gt;&gt; </code><strong class="userinput"><code>(1,3) &amp; _2 ^~ 2
</code></strong>(1,9)
</pre><pre>(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; e -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; e -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; e -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; e -&gt; s -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; e -&gt; s -&gt; 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-Type.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">&gt;&gt;&gt; </code><strong class="userinput"><code>(1,2) &amp; _2 ^^~ (-1)
</code></strong>(1,0.5)
</pre><pre>(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; e -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; e -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; e -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; e -&gt; s -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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-Type.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">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; _1 **~ c
</code></strong>(a**c,b)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(a,b) &amp; both **~ c
</code></strong>(a**c,b**c)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>_2 **~ 10 $ (3,2)
</code></strong>(3,1024.0)
</pre><pre>(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; s -&gt; 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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; 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-Type.html#t:Setter">Setter</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>both ||~ True $ (False,True)
</code></strong>(True,True)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>both ||~ False $ (False,True)
</code></strong>(False,True)
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-124--124--126-">||~</a></code>) :: <code><a href="Control-Lens-Type.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>    -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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>       -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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>      -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; s
</pre></div></div><div class="top"><p class="src"><a id="v:-38--38--126-" class="def">(&amp;&amp;~)</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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; s -&gt; 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-">&amp;&amp;</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-Type.html#t:Setter">Setter</a></code>.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>both &amp;&amp;~ True $ (False, True)
</code></strong>(False,True)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>both &amp;&amp;~ False $ (False, True)
</code></strong>(False,False)
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-38--38--126-">&amp;&amp;~</a></code>) :: <code><a href="Control-Lens-Type.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>    -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.html#v:-38--38--126-">&amp;&amp;~</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>       -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.html#v:-38--38--126-">&amp;&amp;~</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>      -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; s
(<code><a href="Control-Lens-Operators.html#v:-38--38--126-">&amp;&amp;~</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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; s -&gt; s
</pre></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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -&gt; b -&gt; 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-Type.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">&gt;&gt;&gt; </code><strong class="userinput"><code>execState (do _1 .= c; _2 .= d) (a,b)
</code></strong>(c,d)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>execState (both .= c) (a,b)
</code></strong>(c,c)
</pre><pre>(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -&gt; (a -&gt; b) -&gt; 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-Type.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">&gt;&gt;&gt; </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">&gt;&gt;&gt; </code><strong class="userinput"><code>execState (do both %= f) (a,b)
</code></strong>(f a,f b)
</pre><pre>(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; (a -&gt; a) -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; (a -&gt; a) -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; (a -&gt; a) -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; (a -&gt; a) -&gt; m ()
</pre><pre>(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Setter.html#t:ASetter">ASetter</a></code> s s a b -&gt; (a -&gt; b) -&gt; m ()
</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 =&gt; <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) -&gt; b -&gt; 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-Type.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">&gt;&gt;&gt; </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">&gt;&gt;&gt; </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-Operators.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 =&gt; <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)       -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <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)      -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <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) -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.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)    -&gt; a -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; 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-Type.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 =&gt; 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-Operators.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">&gt;&gt;&gt; </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">&gt;&gt;&gt; </code><strong class="userinput"><code>execState (do _1.at 1.non 0 += 10) (Map.fromList [(2,100)],&quot;hello&quot;)
</code></strong>(fromList [(1,10),(2,100)],&quot;hello&quot;)
</pre><pre>(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; 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-Type.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">&gt;&gt;&gt; </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-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; 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-Type.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">&gt;&gt;&gt; </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-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; 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-Type.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">&gt;&gt;&gt; </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-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; e -&gt; 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-Type.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-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; e -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; e -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; e -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; e -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; e -&gt; 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-Type.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-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; e -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; e -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; e -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; e -&gt; 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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; 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-Type.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">&gt;&gt;&gt; </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-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a    -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a       -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a      -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.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) =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-38--38--61-" class="def">(&amp;&amp;=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; 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-Type.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-">&amp;&amp;</a></code> with a value.</p><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>execState (do _1 &amp;&amp;= True; _2 &amp;&amp;= False; _3 &amp;&amp;= True; _4 &amp;&amp;= False) (True,True,False,False)
</code></strong>(True,False,False,False)
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-38--38--61-">&amp;&amp;=</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 =&gt; <code><a href="Control-Lens-Type.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>    -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m ()
(<code><a href="Control-Lens-Operators.html#v:-38--38--61-">&amp;&amp;=</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 =&gt; <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>       -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m ()
(<code><a href="Control-Lens-Operators.html#v:-38--38--61-">&amp;&amp;=</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 =&gt; <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>      -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m ()
(<code><a href="Control-Lens-Operators.html#v:-38--38--61-">&amp;&amp;=</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 =&gt; <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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; 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 =&gt; <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> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; 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-Type.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">&gt;&gt;&gt; </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-Operators.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 =&gt; <code><a href="Control-Lens-Type.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>    -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <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>       -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <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>      -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <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> -&gt; <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></code> -&gt; m ()
</pre></div></div><div class="top"><p class="src"><a id="v:-60--126-" class="def">(&lt;~)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -&gt; m b -&gt; 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-Type.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-Operators.html#v:-60--126-">&lt;~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s s a b       -&gt; m b -&gt; m ()
(<code><a href="Control-Lens-Operators.html#v:-60--126-">&lt;~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s s a b      -&gt; m b -&gt; m ()
(<code><a href="Control-Lens-Operators.html#v:-60--126-">&lt;~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s s a b -&gt; m b -&gt; m ()
(<code><a href="Control-Lens-Operators.html#v:-60--126-">&lt;~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Setter">Setter</a></code> s s a b    -&gt; m b -&gt; 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 &lt;- bar
   ...
</pre><p>will store the result in a variable, while</p><pre>do foo <code><a href="Control-Lens-Operators.html#v:-60--126-">&lt;~</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-Type.html#t:Setter">Setter</a></code>, or <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:-60-.-61-" class="def">(&lt;.=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s s a b -&gt; b -&gt; 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 &lt;- <code><a href="Control-Lens-Tuple.html#v:_2">_2</a></code> <code><a href="Control-Lens-Operators.html#v:-60-.-61-">&lt;.=</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-Operators.html#v:.-61-">.=</a></code> d</code> will avoid unused binding warnings.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60-.-61-">&lt;.=</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 =&gt; <code><a href="Control-Lens-Type.html#t:Setter">Setter</a></code> s s a b    -&gt; b -&gt; m b
(<code><a href="Control-Lens-Operators.html#v:-60-.-61-">&lt;.=</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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s s a b       -&gt; b -&gt; m b
(<code><a href="Control-Lens-Operators.html#v:-60-.-61-">&lt;.=</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s s a b      -&gt; b -&gt; m b
(<code><a href="Control-Lens-Operators.html#v:-60-.-61-">&lt;.=</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 =&gt; <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s s a b -&gt; b -&gt; m b
</pre></div></div><div class="top"><p class="src"><a id="v:-60--63--61-" class="def">(&lt;?=)</a> :: <a href="file:///usr/share/doc/libghc-mtl-doc/html/Control-Monad-State-Class.html#t:MonadState">MonadState</a> s m =&gt; <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) -&gt; b -&gt; 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 &lt;- <code><a href="Control-Lens-At.html#v:at">at</a></code> &quot;foo&quot; <code><a href="Control-Lens-Operators.html#v:-60--63--61-">&lt;?=</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-Operators.html#v:-63--61-">?=</a></code> d</code> will avoid unused binding warnings.</p><pre>(<code><a href="Control-Lens-Operators.html#v:-60--63--61-">&lt;?=</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 =&gt; <code><a href="Control-Lens-Type.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)    -&gt; b -&gt; m b
(<code><a href="Control-Lens-Operators.html#v:-60--63--61-">&lt;?=</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 =&gt; <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)       -&gt; b -&gt; m b
(<code><a href="Control-Lens-Operators.html#v:-60--63--61-">&lt;?=</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 =&gt; <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)      -&gt; b -&gt; m b
(<code><a href="Control-Lens-Operators.html#v:-60--63--61-">&lt;?=</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 =&gt; <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) -&gt; b -&gt; m b
</pre></div></div><div class="top"><p class="src"><a id="v:-60--62--126-" class="def">(&lt;&gt;~)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Monoid.html#t:Monoid">Monoid</a> a =&gt; <a href="Control-Lens-Setter.html#t:ASetter">ASetter</a> s t a a -&gt; a -&gt; s -&gt; 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">&gt;&gt;&gt; </code><strong class="userinput"><code>(Sum a,b) &amp; _1 &lt;&gt;~ Sum c
</code></strong>(Sum {getSum = a + c},b)
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>(Sum a,Sum b) &amp; both &lt;&gt;~ Sum c
</code></strong>(Sum {getSum = a + c},Sum {getSum = b + c})
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>both &lt;&gt;~ &quot;!!!&quot; $ (&quot;hello&quot;,&quot;world&quot;)
</code></strong>(&quot;hello!!!&quot;,&quot;world!!!&quot;)
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--62--126-">&lt;&gt;~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Setter">Setter</a></code> s t a a    -&gt; a -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:-60--62--126-">&lt;&gt;~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Iso">Iso</a></code> s t a a       -&gt; a -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:-60--62--126-">&lt;&gt;~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Lens">Lens</a></code> s t a a      -&gt; a -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:-60--62--126-">&lt;&gt;~</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 =&gt; <code><a href="Control-Lens-Type.html#t:Traversal">Traversal</a></code> s t a a -&gt; a -&gt; s -&gt; t
</pre></div></div><div class="top"><p class="src"><a id="v:-60--62--61-" class="def">(&lt;&gt;=)</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) =&gt; <a href="Control-Lens-Setter.html#t:ASetter-39-">ASetter'</a> s a -&gt; a -&gt; 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-Type.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">&gt;&gt;&gt; </code><strong class="userinput"><code>execState (do _1 &lt;&gt;= Sum c; _2 &lt;&gt;= Product d) (Sum a,Product b)
</code></strong>(Sum {getSum = a + c},Product {getProduct = b * d})
</pre><pre class="screen"><code class="prompt">&gt;&gt;&gt; </code><strong class="userinput"><code>execState (both &lt;&gt;= &quot;!!!&quot;) (&quot;hello&quot;,&quot;world&quot;)
</code></strong>(&quot;hello!!!&quot;,&quot;world!!!&quot;)
</pre><pre>(<code><a href="Control-Lens-Operators.html#v:-60--62--61-">&lt;&gt;=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Setter-39-">Setter'</a></code> s a -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.html#v:-60--62--61-">&lt;&gt;=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Iso-39-">Iso'</a></code> s a -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.html#v:-60--62--61-">&lt;&gt;=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Lens-39-">Lens'</a></code> s a -&gt; a -&gt; m ()
(<code><a href="Control-Lens-Operators.html#v:-60--62--61-">&lt;&gt;=</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) =&gt; <code><a href="Control-Lens-Type.html#t:Traversal-39-">Traversal'</a></code> s a -&gt; a -&gt; m ()
</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 -&gt; (i -&gt; b) -&gt; s -&gt; 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-Type.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-Operators.html#v:.-64--126-">.@~</a></code>) &#8801; <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-Operators.html#v:.-126-">.~</a></code>) is more liberal in what it can accept.</p><pre>l <code><a href="Control-Lens-Operators.html#v:.-126-">.~</a></code> b &#8801; l <code><a href="Control-Lens-Operators.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-Operators.html#v:.-64--126-">.@~</a></code>) :: <code><a href="Control-Lens-Type.html#t:IndexedSetter">IndexedSetter</a></code> i s t a b    -&gt; (i -&gt; b) -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:.-64--126-">.@~</a></code>) :: <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b      -&gt; (i -&gt; b) -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:.-64--126-">.@~</a></code>) :: <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -&gt; (i -&gt; b) -&gt; s -&gt; t
</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 =&gt; <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a b -&gt; (i -&gt; b) -&gt; 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-Type.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-Operators.html#v:.-61-">.=</a></code>) is more liberal in what it can accept.</p><pre>l <code><a href="Control-Lens-Operators.html#v:.-61-">.=</a></code> b &#8801; l <code><a href="Control-Lens-Operators.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-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:IndexedSetter">IndexedSetter</a></code> i s s a b    -&gt; (i -&gt; b) -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s s a b      -&gt; (i -&gt; b) -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -&gt; (i -&gt; b) -&gt; m ()
</pre></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 -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; 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-Type.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-Operators.html#v:-37--64--126-">%@~</a></code>) &#8801; <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-Operators.html#v:-37--126-">%~</a></code>) is more liberal in what it can accept.</p><pre>l <code><a href="Control-Lens-Operators.html#v:-37--126-">%~</a></code> f &#8801; l <code><a href="Control-Lens-Operators.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-Operators.html#v:-37--64--126-">%@~</a></code>) :: <code><a href="Control-Lens-Type.html#t:IndexedSetter">IndexedSetter</a></code> i s t a b    -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:-37--64--126-">%@~</a></code>) :: <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s t a b      -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; t
(<code><a href="Control-Lens-Operators.html#v:-37--64--126-">%@~</a></code>) :: <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -&gt; (i -&gt; a -&gt; b) -&gt; s -&gt; 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 =&gt; <a href="Control-Lens-Setter.html#t:AnIndexedSetter">AnIndexedSetter</a> i s s a b -&gt; (i -&gt; a -&gt; b) -&gt; 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-Type.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-Operators.html#v:-37--61-">%=</a></code>) is more liberal in what it can accept.</p><pre>l <code><a href="Control-Lens-Operators.html#v:-37--61-">%=</a></code> f &#8801; l <code><a href="Control-Lens-Operators.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-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:IndexedSetter">IndexedSetter</a></code> i s s a b    -&gt; (i -&gt; a -&gt; b) -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:IndexedLens">IndexedLens</a></code> i s s a b      -&gt; (i -&gt; a -&gt; b) -&gt; m ()
(<code><a href="Control-Lens-Operators.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 =&gt; <code><a href="Control-Lens-Type.html#t:IndexedTraversal">IndexedTraversal</a></code> i s t a b -&gt; (i -&gt; a -&gt; b) -&gt; m ()
</pre></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.3</p></div></body></html>