mangrove 0.12.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -162,6 +162,72 @@
162
162
 
163
163
 
164
164
 
165
+ <span class="summary_desc"><div class='inline'></div></span>
166
+
167
+ </li>
168
+
169
+
170
+ <li class="public ">
171
+ <span class="summary_signature">
172
+
173
+ <a href="#and-instance_method" title="#and (instance method)">#<strong>and</strong>(other) &#x21d2; Result[T.type_parameter(:NewOkType), ErrType] </a>
174
+
175
+
176
+
177
+ </span>
178
+
179
+
180
+
181
+
182
+
183
+
184
+
185
+
186
+
187
+ <span class="summary_desc"><div class='inline'></div></span>
188
+
189
+ </li>
190
+
191
+
192
+ <li class="public ">
193
+ <span class="summary_signature">
194
+
195
+ <a href="#and_then-instance_method" title="#and_then (instance method)">#<strong>and_then</strong>(&amp;block) &#x21d2; Result[T.type_parameter(:NewOkType), ErrType] </a>
196
+
197
+
198
+
199
+ </span>
200
+
201
+
202
+
203
+
204
+
205
+
206
+
207
+
208
+
209
+ <span class="summary_desc"><div class='inline'></div></span>
210
+
211
+ </li>
212
+
213
+
214
+ <li class="public ">
215
+ <span class="summary_signature">
216
+
217
+ <a href="#and_then_wt-instance_method" title="#and_then_wt (instance method)">#<strong>and_then_wt</strong>(_t_new_ok, &amp;block) &#x21d2; Result[T.type_parameter(:NewOkType), ErrType] </a>
218
+
219
+
220
+
221
+ </span>
222
+
223
+
224
+
225
+
226
+
227
+
228
+
229
+
230
+
165
231
  <span class="summary_desc"><div class='inline'></div></span>
166
232
 
167
233
  </li>
@@ -252,6 +318,28 @@
252
318
 
253
319
 
254
320
 
321
+ <span class="summary_desc"><div class='inline'></div></span>
322
+
323
+ </li>
324
+
325
+
326
+ <li class="public ">
327
+ <span class="summary_signature">
328
+
329
+ <a href="#map-instance_method" title="#map (instance method)">#<strong>map</strong>(&amp;block) &#x21d2; Result[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)] </a>
330
+
331
+
332
+
333
+ </span>
334
+
335
+
336
+
337
+
338
+
339
+
340
+
341
+
342
+
255
343
  <span class="summary_desc"><div class='inline'></div></span>
256
344
 
257
345
  </li>
@@ -276,6 +364,30 @@
276
364
 
277
365
  <span class="summary_desc"><div class='inline'></div></span>
278
366
 
367
+ </li>
368
+
369
+
370
+ <li class="public ">
371
+ <span class="summary_signature">
372
+
373
+ <a href="#map_err_wt-instance_method" title="#map_err_wt (instance method)">#<strong>map_err_wt</strong>(_t_new_err, &amp;_block) &#x21d2; Result[OkType, T.type_parameter(:NewErrType)] </a>
374
+
375
+
376
+
377
+ </span>
378
+
379
+
380
+
381
+
382
+
383
+
384
+
385
+
386
+
387
+ <span class="summary_desc"><div class='inline'>
388
+ <p>Because sorbet deduct types from return values well.</p>
389
+ </div></span>
390
+
279
391
  </li>
280
392
 
281
393
 
@@ -296,6 +408,52 @@
296
408
 
297
409
 
298
410
 
411
+ <span class="summary_desc"><div class='inline'></div></span>
412
+
413
+ </li>
414
+
415
+
416
+ <li class="public ">
417
+ <span class="summary_signature">
418
+
419
+ <a href="#map_ok_wt-instance_method" title="#map_ok_wt (instance method)">#<strong>map_ok_wt</strong>(_t_new_ok, &amp;block) &#x21d2; Result[T.type_parameter(:NewOkType), ErrType] </a>
420
+
421
+
422
+
423
+ </span>
424
+
425
+
426
+
427
+
428
+
429
+
430
+
431
+
432
+
433
+ <span class="summary_desc"><div class='inline'>
434
+ <p>Because sorbet deduct types from return values well.</p>
435
+ </div></span>
436
+
437
+ </li>
438
+
439
+
440
+ <li class="public ">
441
+ <span class="summary_signature">
442
+
443
+ <a href="#map_wt-instance_method" title="#map_wt (instance method)">#<strong>map_wt</strong>(_t_new_ok, _t_new_err, &amp;block) &#x21d2; Result[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)] </a>
444
+
445
+
446
+
447
+ </span>
448
+
449
+
450
+
451
+
452
+
453
+
454
+
455
+
456
+
299
457
  <span class="summary_desc"><div class='inline'></div></span>
300
458
 
301
459
  </li>
@@ -340,6 +498,72 @@
340
498
 
341
499
 
342
500
 
501
+ <span class="summary_desc"><div class='inline'></div></span>
502
+
503
+ </li>
504
+
505
+
506
+ <li class="public ">
507
+ <span class="summary_signature">
508
+
509
+ <a href="#or-instance_method" title="#or (instance method)">#<strong>or</strong>(_other) &#x21d2; Result[OkType, ErrType] </a>
510
+
511
+
512
+
513
+ </span>
514
+
515
+
516
+
517
+
518
+
519
+
520
+
521
+
522
+
523
+ <span class="summary_desc"><div class='inline'></div></span>
524
+
525
+ </li>
526
+
527
+
528
+ <li class="public ">
529
+ <span class="summary_signature">
530
+
531
+ <a href="#or_else-instance_method" title="#or_else (instance method)">#<strong>or_else</strong>(&amp;_block) &#x21d2; Result[OkType, T.type_parameter(:NewErrType)] </a>
532
+
533
+
534
+
535
+ </span>
536
+
537
+
538
+
539
+
540
+
541
+
542
+
543
+
544
+
545
+ <span class="summary_desc"><div class='inline'></div></span>
546
+
547
+ </li>
548
+
549
+
550
+ <li class="public ">
551
+ <span class="summary_signature">
552
+
553
+ <a href="#or_else_wt-instance_method" title="#or_else_wt (instance method)">#<strong>or_else_wt</strong>(_t_new_err, &amp;_block) &#x21d2; Result[OkType, T.type_parameter(:NewErrType)] </a>
554
+
555
+
556
+
557
+ </span>
558
+
559
+
560
+
561
+
562
+
563
+
564
+
565
+
566
+
343
567
  <span class="summary_desc"><div class='inline'></div></span>
344
568
 
345
569
  </li>
@@ -405,7 +629,7 @@
405
629
 
406
630
 
407
631
  <h3 class="inherited">Methods included from <span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Mangrove::Result</a></span></h3>
408
- <p class="inherited"><span class='object_link'><a href="../Result.html#from_results-class_method" title="Mangrove::Result.from_results (method)">from_results</a></span></p>
632
+ <p class="inherited"><span class='object_link'><a href="../Result.html#err-class_method" title="Mangrove::Result.err (method)">err</a></span>, <span class='object_link'><a href="../Result.html#from_results-class_method" title="Mangrove::Result.from_results (method)">from_results</a></span>, <span class='object_link'><a href="../Result.html#ok-class_method" title="Mangrove::Result.ok (method)">ok</a></span></p>
409
633
 
410
634
 
411
635
 
@@ -452,12 +676,12 @@
452
676
  <pre class="lines">
453
677
 
454
678
 
455
- 77
456
- 78
457
- 79</pre>
679
+ 117
680
+ 118
681
+ 119</pre>
458
682
  </td>
459
683
  <td>
460
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 77</span>
684
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 117</span>
461
685
 
462
686
  <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_inner'>inner</span><span class='rparen'>)</span>
463
687
  <span class='ivar'>@inner</span> <span class='op'>=</span> <span class='id identifier rubyid_inner'>inner</span>
@@ -526,19 +750,19 @@
526
750
  <pre class="lines">
527
751
 
528
752
 
529
- 82
530
- 83
531
- 84
532
- 85
533
- 86
534
- 87
535
- 88
536
- 89
537
- 90
538
- 91</pre>
753
+ 122
754
+ 123
755
+ 124
756
+ 125
757
+ 126
758
+ 127
759
+ 128
760
+ 129
761
+ 130
762
+ 131</pre>
539
763
  </td>
540
764
  <td>
541
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 82</span>
765
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 122</span>
542
766
 
543
767
  <span class='kw'>def</span> <span class='op'>==</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='rparen'>)</span>
544
768
  <span class='kw'>case</span> <span class='id identifier rubyid_other'>other</span>
@@ -556,9 +780,9 @@
556
780
  </div>
557
781
 
558
782
  <div class="method_details ">
559
- <h3 class="signature " id="err?-instance_method">
783
+ <h3 class="signature " id="and-instance_method">
560
784
 
561
- #<strong>err?</strong> &#x21d2; <tt>Boolean</tt>
785
+ #<strong>and</strong>(other) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>
562
786
 
563
787
 
564
788
 
@@ -571,14 +795,29 @@
571
795
  </div>
572
796
  </div>
573
797
  <div class="tags">
798
+ <p class="tag_title">Parameters:</p>
799
+ <ul class="param">
800
+
801
+ <li>
802
+
803
+ <span class='name'>other</span>
804
+
805
+
806
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>)</span>
807
+
808
+
809
+
810
+ </li>
574
811
 
812
+ </ul>
813
+
575
814
  <p class="tag_title">Returns:</p>
576
815
  <ul class="return">
577
816
 
578
817
  <li>
579
818
 
580
819
 
581
- <span class='type'>(<tt>Boolean</tt>)</span>
820
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>)</span>
582
821
 
583
822
 
584
823
 
@@ -592,21 +831,25 @@
592
831
  <pre class="lines">
593
832
 
594
833
 
595
- 117</pre>
834
+ 192
835
+ 193
836
+ 194</pre>
596
837
  </td>
597
838
  <td>
598
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 117</span>
839
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 192</span>
599
840
 
600
- <span class='kw'>def</span> <span class='id identifier rubyid_err?'>err?</span> <span class='op'>=</span> <span class='kw'>false</span></pre>
841
+ <span class='kw'>def</span> <span class='kw'>and</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='rparen'>)</span>
842
+ <span class='id identifier rubyid_other'>other</span>
843
+ <span class='kw'>end</span></pre>
601
844
  </td>
602
845
  </tr>
603
846
  </table>
604
847
  </div>
605
848
 
606
849
  <div class="method_details ">
607
- <h3 class="signature " id="expect!-instance_method">
850
+ <h3 class="signature " id="and_then-instance_method">
608
851
 
609
- #<strong>expect!</strong>(_message) &#x21d2; <tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></tt>
852
+ #<strong>and_then</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>
610
853
 
611
854
 
612
855
 
@@ -624,10 +867,10 @@
624
867
 
625
868
  <li>
626
869
 
627
- <span class='name'>_message</span>
870
+ <span class='name'>block</span>
628
871
 
629
872
 
630
- <span class='type'>(<tt>String</tt>)</span>
873
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>).returns(<span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>])</tt>)</span>
631
874
 
632
875
 
633
876
 
@@ -641,7 +884,7 @@
641
884
  <li>
642
885
 
643
886
 
644
- <span class='type'>(<tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></tt>)</span>
887
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>)</span>
645
888
 
646
889
 
647
890
 
@@ -655,15 +898,15 @@
655
898
  <pre class="lines">
656
899
 
657
900
 
658
- 104
659
- 105
660
- 106</pre>
901
+ 197
902
+ 198
903
+ 199</pre>
661
904
  </td>
662
905
  <td>
663
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 104</span>
906
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 197</span>
664
907
 
665
- <span class='kw'>def</span> <span class='id identifier rubyid_expect!'>expect!</span><span class='lparen'>(</span><span class='id identifier rubyid__message'>_message</span><span class='rparen'>)</span>
666
- <span class='ivar'>@inner</span>
908
+ <span class='kw'>def</span> <span class='id identifier rubyid_and_then'>and_then</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
909
+ <span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='ivar'>@inner</span><span class='rparen'>)</span>
667
910
  <span class='kw'>end</span></pre>
668
911
  </td>
669
912
  </tr>
@@ -671,9 +914,9 @@
671
914
  </div>
672
915
 
673
916
  <div class="method_details ">
674
- <h3 class="signature " id="expect_with!-instance_method">
917
+ <h3 class="signature " id="and_then_wt-instance_method">
675
918
 
676
- #<strong>expect_with!</strong>(&amp;_block) &#x21d2; <tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></tt>
919
+ #<strong>and_then_wt</strong>(_t_new_ok, &amp;block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>
677
920
 
678
921
 
679
922
 
@@ -691,24 +934,498 @@
691
934
 
692
935
  <li>
693
936
 
694
- <span class='name'>_block</span>
937
+ <span class='name'>_t_new_ok</span>
695
938
 
696
939
 
697
- <span class='type'>(<tt>T.proc.returns(T.untyped)</tt>)</span>
940
+ <span class='type'>(<tt>T::Class[T.type_parameter(:NewOkType)]</tt>)</span>
698
941
 
699
942
 
700
943
 
701
944
  </li>
702
945
 
703
- </ul>
704
-
705
- <p class="tag_title">Returns:</p>
706
- <ul class="return">
707
-
708
946
  <li>
709
947
 
948
+ <span class='name'>block</span>
710
949
 
711
- <span class='type'>(<tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></tt>)</span>
950
+
951
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>).returns(<span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>])</tt>)</span>
952
+
953
+
954
+
955
+ </li>
956
+
957
+ </ul>
958
+
959
+ <p class="tag_title">Returns:</p>
960
+ <ul class="return">
961
+
962
+ <li>
963
+
964
+
965
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>)</span>
966
+
967
+
968
+
969
+ </li>
970
+
971
+ </ul>
972
+
973
+ </div><table class="source_code">
974
+ <tr>
975
+ <td>
976
+ <pre class="lines">
977
+
978
+
979
+ 202
980
+ 203
981
+ 204</pre>
982
+ </td>
983
+ <td>
984
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 202</span>
985
+
986
+ <span class='kw'>def</span> <span class='id identifier rubyid_and_then_wt'>and_then_wt</span><span class='lparen'>(</span><span class='id identifier rubyid__t_new_ok'>_t_new_ok</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
987
+ <span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='ivar'>@inner</span><span class='rparen'>)</span>
988
+ <span class='kw'>end</span></pre>
989
+ </td>
990
+ </tr>
991
+ </table>
992
+ </div>
993
+
994
+ <div class="method_details ">
995
+ <h3 class="signature " id="err?-instance_method">
996
+
997
+ #<strong>err?</strong> &#x21d2; <tt>Boolean</tt>
998
+
999
+
1000
+
1001
+
1002
+
1003
+ </h3><div class="docstring">
1004
+ <div class="discussion">
1005
+
1006
+
1007
+ </div>
1008
+ </div>
1009
+ <div class="tags">
1010
+
1011
+ <p class="tag_title">Returns:</p>
1012
+ <ul class="return">
1013
+
1014
+ <li>
1015
+
1016
+
1017
+ <span class='type'>(<tt>Boolean</tt>)</span>
1018
+
1019
+
1020
+
1021
+ </li>
1022
+
1023
+ </ul>
1024
+
1025
+ </div><table class="source_code">
1026
+ <tr>
1027
+ <td>
1028
+ <pre class="lines">
1029
+
1030
+
1031
+ 157</pre>
1032
+ </td>
1033
+ <td>
1034
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 157</span>
1035
+
1036
+ <span class='kw'>def</span> <span class='id identifier rubyid_err?'>err?</span> <span class='op'>=</span> <span class='kw'>false</span></pre>
1037
+ </td>
1038
+ </tr>
1039
+ </table>
1040
+ </div>
1041
+
1042
+ <div class="method_details ">
1043
+ <h3 class="signature " id="expect!-instance_method">
1044
+
1045
+ #<strong>expect!</strong>(_message) &#x21d2; <tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></tt>
1046
+
1047
+
1048
+
1049
+
1050
+
1051
+ </h3><div class="docstring">
1052
+ <div class="discussion">
1053
+
1054
+
1055
+ </div>
1056
+ </div>
1057
+ <div class="tags">
1058
+ <p class="tag_title">Parameters:</p>
1059
+ <ul class="param">
1060
+
1061
+ <li>
1062
+
1063
+ <span class='name'>_message</span>
1064
+
1065
+
1066
+ <span class='type'>(<tt>String</tt>)</span>
1067
+
1068
+
1069
+
1070
+ </li>
1071
+
1072
+ </ul>
1073
+
1074
+ <p class="tag_title">Returns:</p>
1075
+ <ul class="return">
1076
+
1077
+ <li>
1078
+
1079
+
1080
+ <span class='type'>(<tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></tt>)</span>
1081
+
1082
+
1083
+
1084
+ </li>
1085
+
1086
+ </ul>
1087
+
1088
+ </div><table class="source_code">
1089
+ <tr>
1090
+ <td>
1091
+ <pre class="lines">
1092
+
1093
+
1094
+ 144
1095
+ 145
1096
+ 146</pre>
1097
+ </td>
1098
+ <td>
1099
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 144</span>
1100
+
1101
+ <span class='kw'>def</span> <span class='id identifier rubyid_expect!'>expect!</span><span class='lparen'>(</span><span class='id identifier rubyid__message'>_message</span><span class='rparen'>)</span>
1102
+ <span class='ivar'>@inner</span>
1103
+ <span class='kw'>end</span></pre>
1104
+ </td>
1105
+ </tr>
1106
+ </table>
1107
+ </div>
1108
+
1109
+ <div class="method_details ">
1110
+ <h3 class="signature " id="expect_with!-instance_method">
1111
+
1112
+ #<strong>expect_with!</strong>(&amp;_block) &#x21d2; <tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></tt>
1113
+
1114
+
1115
+
1116
+
1117
+
1118
+ </h3><div class="docstring">
1119
+ <div class="discussion">
1120
+
1121
+
1122
+ </div>
1123
+ </div>
1124
+ <div class="tags">
1125
+ <p class="tag_title">Parameters:</p>
1126
+ <ul class="param">
1127
+
1128
+ <li>
1129
+
1130
+ <span class='name'>_block</span>
1131
+
1132
+
1133
+ <span class='type'>(<tt>T.proc.returns(T.untyped)</tt>)</span>
1134
+
1135
+
1136
+
1137
+ </li>
1138
+
1139
+ </ul>
1140
+
1141
+ <p class="tag_title">Returns:</p>
1142
+ <ul class="return">
1143
+
1144
+ <li>
1145
+
1146
+
1147
+ <span class='type'>(<tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></tt>)</span>
1148
+
1149
+
1150
+
1151
+ </li>
1152
+
1153
+ </ul>
1154
+
1155
+ </div><table class="source_code">
1156
+ <tr>
1157
+ <td>
1158
+ <pre class="lines">
1159
+
1160
+
1161
+ 149
1162
+ 150
1163
+ 151</pre>
1164
+ </td>
1165
+ <td>
1166
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 149</span>
1167
+
1168
+ <span class='kw'>def</span> <span class='id identifier rubyid_expect_with!'>expect_with!</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid__block'>_block</span><span class='rparen'>)</span>
1169
+ <span class='ivar'>@inner</span>
1170
+ <span class='kw'>end</span></pre>
1171
+ </td>
1172
+ </tr>
1173
+ </table>
1174
+ </div>
1175
+
1176
+ <div class="method_details ">
1177
+ <h3 class="signature " id="map-instance_method">
1178
+
1179
+ #<strong>map</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)]</tt>
1180
+
1181
+
1182
+
1183
+
1184
+
1185
+ </h3><div class="docstring">
1186
+ <div class="discussion">
1187
+
1188
+
1189
+ </div>
1190
+ </div>
1191
+ <div class="tags">
1192
+ <p class="tag_title">Parameters:</p>
1193
+ <ul class="param">
1194
+
1195
+ <li>
1196
+
1197
+ <span class='name'>block</span>
1198
+
1199
+
1200
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]).returns(<span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)])</tt>)</span>
1201
+
1202
+
1203
+
1204
+ </li>
1205
+
1206
+ </ul>
1207
+
1208
+ <p class="tag_title">Returns:</p>
1209
+ <ul class="return">
1210
+
1211
+ <li>
1212
+
1213
+
1214
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)]</tt>)</span>
1215
+
1216
+
1217
+
1218
+ </li>
1219
+
1220
+ </ul>
1221
+
1222
+ </div><table class="source_code">
1223
+ <tr>
1224
+ <td>
1225
+ <pre class="lines">
1226
+
1227
+
1228
+ 160
1229
+ 161
1230
+ 162</pre>
1231
+ </td>
1232
+ <td>
1233
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 160</span>
1234
+
1235
+ <span class='kw'>def</span> <span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
1236
+ <span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
1237
+ <span class='kw'>end</span></pre>
1238
+ </td>
1239
+ </tr>
1240
+ </table>
1241
+ </div>
1242
+
1243
+ <div class="method_details ">
1244
+ <h3 class="signature " id="map_err-instance_method">
1245
+
1246
+ #<strong>map_err</strong>(&amp;_block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>
1247
+
1248
+
1249
+
1250
+
1251
+
1252
+ </h3><div class="docstring">
1253
+ <div class="discussion">
1254
+
1255
+
1256
+ </div>
1257
+ </div>
1258
+ <div class="tags">
1259
+ <p class="tag_title">Parameters:</p>
1260
+ <ul class="param">
1261
+
1262
+ <li>
1263
+
1264
+ <span class='name'>_block</span>
1265
+
1266
+
1267
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>).returns(T.type_parameter(:NewErrType))</tt>)</span>
1268
+
1269
+
1270
+
1271
+ </li>
1272
+
1273
+ </ul>
1274
+
1275
+ <p class="tag_title">Returns:</p>
1276
+ <ul class="return">
1277
+
1278
+ <li>
1279
+
1280
+
1281
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>)</span>
1282
+
1283
+
1284
+
1285
+ </li>
1286
+
1287
+ </ul>
1288
+
1289
+ </div><table class="source_code">
1290
+ <tr>
1291
+ <td>
1292
+ <pre class="lines">
1293
+
1294
+
1295
+ 181
1296
+ 182
1297
+ 183</pre>
1298
+ </td>
1299
+ <td>
1300
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 181</span>
1301
+
1302
+ <span class='kw'>def</span> <span class='id identifier rubyid_map_err'>map_err</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid__block'>_block</span><span class='rparen'>)</span>
1303
+ <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_cast'>cast</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Mangrove::Result::Ok (class)">Ok</a></span></span><span class='lbracket'>[</span><span class='const'><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_type_parameter'>type_parameter</span><span class='lparen'>(</span><span class='symbol'>:NewErrType</span><span class='rparen'>)</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1304
+ <span class='kw'>end</span></pre>
1305
+ </td>
1306
+ </tr>
1307
+ </table>
1308
+ </div>
1309
+
1310
+ <div class="method_details ">
1311
+ <h3 class="signature " id="map_err_wt-instance_method">
1312
+
1313
+ #<strong>map_err_wt</strong>(_t_new_err, &amp;_block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>
1314
+
1315
+
1316
+
1317
+
1318
+
1319
+ </h3><div class="docstring">
1320
+ <div class="discussion">
1321
+
1322
+ <p>Because sorbet deduct types from return values well. This method takes a type of new inner values.</p>
1323
+
1324
+
1325
+ </div>
1326
+ </div>
1327
+ <div class="tags">
1328
+ <p class="tag_title">Parameters:</p>
1329
+ <ul class="param">
1330
+
1331
+ <li>
1332
+
1333
+ <span class='name'>_t_new_err</span>
1334
+
1335
+
1336
+ <span class='type'>(<tt>T::Class[T.type_parameter(:NewErrType)]</tt>)</span>
1337
+
1338
+
1339
+
1340
+ </li>
1341
+
1342
+ <li>
1343
+
1344
+ <span class='name'>_block</span>
1345
+
1346
+
1347
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>).returns(T.type_parameter(:NewErrType))</tt>)</span>
1348
+
1349
+
1350
+
1351
+ </li>
1352
+
1353
+ </ul>
1354
+
1355
+ <p class="tag_title">Returns:</p>
1356
+ <ul class="return">
1357
+
1358
+ <li>
1359
+
1360
+
1361
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>)</span>
1362
+
1363
+
1364
+
1365
+ </li>
1366
+
1367
+ </ul>
1368
+
1369
+ </div><table class="source_code">
1370
+ <tr>
1371
+ <td>
1372
+ <pre class="lines">
1373
+
1374
+
1375
+ 187
1376
+ 188
1377
+ 189</pre>
1378
+ </td>
1379
+ <td>
1380
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 187</span>
1381
+
1382
+ <span class='kw'>def</span> <span class='id identifier rubyid_map_err_wt'>map_err_wt</span><span class='lparen'>(</span><span class='id identifier rubyid__t_new_err'>_t_new_err</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid__block'>_block</span><span class='rparen'>)</span>
1383
+ <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_cast'>cast</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Mangrove::Result::Ok (class)">Ok</a></span></span><span class='lbracket'>[</span><span class='const'><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_type_parameter'>type_parameter</span><span class='lparen'>(</span><span class='symbol'>:NewErrType</span><span class='rparen'>)</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1384
+ <span class='kw'>end</span></pre>
1385
+ </td>
1386
+ </tr>
1387
+ </table>
1388
+ </div>
1389
+
1390
+ <div class="method_details ">
1391
+ <h3 class="signature " id="map_ok-instance_method">
1392
+
1393
+ #<strong>map_ok</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>
1394
+
1395
+
1396
+
1397
+
1398
+
1399
+ </h3><div class="docstring">
1400
+ <div class="discussion">
1401
+
1402
+
1403
+ </div>
1404
+ </div>
1405
+ <div class="tags">
1406
+ <p class="tag_title">Parameters:</p>
1407
+ <ul class="param">
1408
+
1409
+ <li>
1410
+
1411
+ <span class='name'>block</span>
1412
+
1413
+
1414
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>).returns(T.type_parameter(:NewOkType))</tt>)</span>
1415
+
1416
+
1417
+
1418
+ </li>
1419
+
1420
+ </ul>
1421
+
1422
+ <p class="tag_title">Returns:</p>
1423
+ <ul class="return">
1424
+
1425
+ <li>
1426
+
1427
+
1428
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>)</span>
712
1429
 
713
1430
 
714
1431
 
@@ -722,15 +1439,15 @@
722
1439
  <pre class="lines">
723
1440
 
724
1441
 
725
- 109
726
- 110
727
- 111</pre>
1442
+ 170
1443
+ 171
1444
+ 172</pre>
728
1445
  </td>
729
1446
  <td>
730
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 109</span>
1447
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 170</span>
731
1448
 
732
- <span class='kw'>def</span> <span class='id identifier rubyid_expect_with!'>expect_with!</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid__block'>_block</span><span class='rparen'>)</span>
733
- <span class='ivar'>@inner</span>
1449
+ <span class='kw'>def</span> <span class='id identifier rubyid_map_ok'>map_ok</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
1450
+ <span class='const'><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Mangrove::Result::Ok (class)">Ok</a></span></span><span class='lbracket'>[</span><span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_type_parameter'>type_parameter</span><span class='lparen'>(</span><span class='symbol'>:NewOkType</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='ivar'>@inner</span><span class='rparen'>)</span><span class='rparen'>)</span>
734
1451
  <span class='kw'>end</span></pre>
735
1452
  </td>
736
1453
  </tr>
@@ -738,9 +1455,9 @@
738
1455
  </div>
739
1456
 
740
1457
  <div class="method_details ">
741
- <h3 class="signature " id="map_err-instance_method">
1458
+ <h3 class="signature " id="map_ok_wt-instance_method">
742
1459
 
743
- #<strong>map_err</strong>(&amp;_block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>
1460
+ #<strong>map_ok_wt</strong>(_t_new_ok, &amp;block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>
744
1461
 
745
1462
 
746
1463
 
@@ -749,6 +1466,8 @@
749
1466
  </h3><div class="docstring">
750
1467
  <div class="discussion">
751
1468
 
1469
+ <p>Because sorbet deduct types from return values well. This method takes a type of new inner values.</p>
1470
+
752
1471
 
753
1472
  </div>
754
1473
  </div>
@@ -758,10 +1477,21 @@
758
1477
 
759
1478
  <li>
760
1479
 
761
- <span class='name'>_block</span>
1480
+ <span class='name'>_t_new_ok</span>
1481
+
1482
+
1483
+ <span class='type'>(<tt>T::Class[T.type_parameter(:NewOkType)]</tt>)</span>
762
1484
 
763
1485
 
764
- <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>).returns(<span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)])</tt>)</span>
1486
+
1487
+ </li>
1488
+
1489
+ <li>
1490
+
1491
+ <span class='name'>block</span>
1492
+
1493
+
1494
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>).returns(T.type_parameter(:NewOkType))</tt>)</span>
765
1495
 
766
1496
 
767
1497
 
@@ -775,7 +1505,7 @@
775
1505
  <li>
776
1506
 
777
1507
 
778
- <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>)</span>
1508
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>)</span>
779
1509
 
780
1510
 
781
1511
 
@@ -789,15 +1519,15 @@
789
1519
  <pre class="lines">
790
1520
 
791
1521
 
792
- 125
793
- 126
794
- 127</pre>
1522
+ 176
1523
+ 177
1524
+ 178</pre>
795
1525
  </td>
796
1526
  <td>
797
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 125</span>
1527
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 176</span>
798
1528
 
799
- <span class='kw'>def</span> <span class='id identifier rubyid_map_err'>map_err</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid__block'>_block</span><span class='rparen'>)</span>
800
- <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_cast'>cast</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Mangrove::Result::Ok (class)">Ok</a></span></span><span class='lbracket'>[</span><span class='const'><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_type_parameter'>type_parameter</span><span class='lparen'>(</span><span class='symbol'>:NewErrType</span><span class='rparen'>)</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1529
+ <span class='kw'>def</span> <span class='id identifier rubyid_map_ok_wt'>map_ok_wt</span><span class='lparen'>(</span><span class='id identifier rubyid__t_new_ok'>_t_new_ok</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
1530
+ <span class='const'><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Mangrove::Result::Ok (class)">Ok</a></span></span><span class='lbracket'>[</span><span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_type_parameter'>type_parameter</span><span class='lparen'>(</span><span class='symbol'>:NewOkType</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='ivar'>@inner</span><span class='rparen'>)</span><span class='rparen'>)</span>
801
1531
  <span class='kw'>end</span></pre>
802
1532
  </td>
803
1533
  </tr>
@@ -805,9 +1535,9 @@
805
1535
  </div>
806
1536
 
807
1537
  <div class="method_details ">
808
- <h3 class="signature " id="map_ok-instance_method">
1538
+ <h3 class="signature " id="map_wt-instance_method">
809
1539
 
810
- #<strong>map_ok</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>
1540
+ #<strong>map_wt</strong>(_t_new_ok, _t_new_err, &amp;block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)]</tt>
811
1541
 
812
1542
 
813
1543
 
@@ -823,12 +1553,34 @@
823
1553
  <p class="tag_title">Parameters:</p>
824
1554
  <ul class="param">
825
1555
 
1556
+ <li>
1557
+
1558
+ <span class='name'>_t_new_ok</span>
1559
+
1560
+
1561
+ <span class='type'>(<tt>T.type_parameter(:NewOkType)</tt>)</span>
1562
+
1563
+
1564
+
1565
+ </li>
1566
+
1567
+ <li>
1568
+
1569
+ <span class='name'>_t_new_err</span>
1570
+
1571
+
1572
+ <span class='type'>(<tt>T.type_parameter(:NewErrType)</tt>)</span>
1573
+
1574
+
1575
+
1576
+ </li>
1577
+
826
1578
  <li>
827
1579
 
828
1580
  <span class='name'>block</span>
829
1581
 
830
1582
 
831
- <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>).returns(<span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>])</tt>)</span>
1583
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]).returns(<span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)])</tt>)</span>
832
1584
 
833
1585
 
834
1586
 
@@ -842,7 +1594,7 @@
842
1594
  <li>
843
1595
 
844
1596
 
845
- <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>)</span>
1597
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)]</tt>)</span>
846
1598
 
847
1599
 
848
1600
 
@@ -856,15 +1608,15 @@
856
1608
  <pre class="lines">
857
1609
 
858
1610
 
859
- 120
860
- 121
861
- 122</pre>
1611
+ 165
1612
+ 166
1613
+ 167</pre>
862
1614
  </td>
863
1615
  <td>
864
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 120</span>
1616
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 165</span>
865
1617
 
866
- <span class='kw'>def</span> <span class='id identifier rubyid_map_ok'>map_ok</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
867
- <span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='ivar'>@inner</span><span class='rparen'>)</span>
1618
+ <span class='kw'>def</span> <span class='id identifier rubyid_map_wt'>map_wt</span><span class='lparen'>(</span><span class='id identifier rubyid__t_new_ok'>_t_new_ok</span><span class='comma'>,</span> <span class='id identifier rubyid__t_new_err'>_t_new_err</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
1619
+ <span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
868
1620
  <span class='kw'>end</span></pre>
869
1621
  </td>
870
1622
  </tr>
@@ -908,10 +1660,10 @@
908
1660
  <pre class="lines">
909
1661
 
910
1662
 
911
- 114</pre>
1663
+ 154</pre>
912
1664
  </td>
913
1665
  <td>
914
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 114</span>
1666
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 154</span>
915
1667
 
916
1668
  <span class='kw'>def</span> <span class='id identifier rubyid_ok?'>ok?</span> <span class='op'>=</span> <span class='kw'>true</span></pre>
917
1669
  </td>
@@ -956,12 +1708,12 @@
956
1708
  <pre class="lines">
957
1709
 
958
1710
 
959
- 94
960
- 95
961
- 96</pre>
1711
+ 134
1712
+ 135
1713
+ 136</pre>
962
1714
  </td>
963
1715
  <td>
964
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 94</span>
1716
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 134</span>
965
1717
 
966
1718
  <span class='kw'>def</span> <span class='id identifier rubyid_ok_inner'>ok_inner</span>
967
1719
  <span class='ivar'>@inner</span>
@@ -969,6 +1721,218 @@
969
1721
  </td>
970
1722
  </tr>
971
1723
  </table>
1724
+ </div>
1725
+
1726
+ <div class="method_details ">
1727
+ <h3 class="signature " id="or-instance_method">
1728
+
1729
+ #<strong>or</strong>(_other) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>
1730
+
1731
+
1732
+
1733
+
1734
+
1735
+ </h3><div class="docstring">
1736
+ <div class="discussion">
1737
+
1738
+
1739
+ </div>
1740
+ </div>
1741
+ <div class="tags">
1742
+ <p class="tag_title">Parameters:</p>
1743
+ <ul class="param">
1744
+
1745
+ <li>
1746
+
1747
+ <span class='name'>_other</span>
1748
+
1749
+
1750
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>)</span>
1751
+
1752
+
1753
+
1754
+ </li>
1755
+
1756
+ </ul>
1757
+
1758
+ <p class="tag_title">Returns:</p>
1759
+ <ul class="return">
1760
+
1761
+ <li>
1762
+
1763
+
1764
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>]</tt>)</span>
1765
+
1766
+
1767
+
1768
+ </li>
1769
+
1770
+ </ul>
1771
+
1772
+ </div><table class="source_code">
1773
+ <tr>
1774
+ <td>
1775
+ <pre class="lines">
1776
+
1777
+
1778
+ 207
1779
+ 208
1780
+ 209</pre>
1781
+ </td>
1782
+ <td>
1783
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 207</span>
1784
+
1785
+ <span class='kw'>def</span> <span class='kw'>or</span><span class='lparen'>(</span><span class='id identifier rubyid__other'>_other</span><span class='rparen'>)</span>
1786
+ <span class='kw'>self</span>
1787
+ <span class='kw'>end</span></pre>
1788
+ </td>
1789
+ </tr>
1790
+ </table>
1791
+ </div>
1792
+
1793
+ <div class="method_details ">
1794
+ <h3 class="signature " id="or_else-instance_method">
1795
+
1796
+ #<strong>or_else</strong>(&amp;_block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>
1797
+
1798
+
1799
+
1800
+
1801
+
1802
+ </h3><div class="docstring">
1803
+ <div class="discussion">
1804
+
1805
+
1806
+ </div>
1807
+ </div>
1808
+ <div class="tags">
1809
+ <p class="tag_title">Parameters:</p>
1810
+ <ul class="param">
1811
+
1812
+ <li>
1813
+
1814
+ <span class='name'>_block</span>
1815
+
1816
+
1817
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>).returns(<span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)])</tt>)</span>
1818
+
1819
+
1820
+
1821
+ </li>
1822
+
1823
+ </ul>
1824
+
1825
+ <p class="tag_title">Returns:</p>
1826
+ <ul class="return">
1827
+
1828
+ <li>
1829
+
1830
+
1831
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>)</span>
1832
+
1833
+
1834
+
1835
+ </li>
1836
+
1837
+ </ul>
1838
+
1839
+ </div><table class="source_code">
1840
+ <tr>
1841
+ <td>
1842
+ <pre class="lines">
1843
+
1844
+
1845
+ 212
1846
+ 213
1847
+ 214</pre>
1848
+ </td>
1849
+ <td>
1850
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 212</span>
1851
+
1852
+ <span class='kw'>def</span> <span class='id identifier rubyid_or_else'>or_else</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid__block'>_block</span><span class='rparen'>)</span>
1853
+ <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_cast'>cast</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Mangrove::Result::Ok (class)">Ok</a></span></span><span class='lbracket'>[</span><span class='const'><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_type_parameter'>type_parameter</span><span class='lparen'>(</span><span class='symbol'>:NewErrType</span><span class='rparen'>)</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1854
+ <span class='kw'>end</span></pre>
1855
+ </td>
1856
+ </tr>
1857
+ </table>
1858
+ </div>
1859
+
1860
+ <div class="method_details ">
1861
+ <h3 class="signature " id="or_else_wt-instance_method">
1862
+
1863
+ #<strong>or_else_wt</strong>(_t_new_err, &amp;_block) &#x21d2; <tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>
1864
+
1865
+
1866
+
1867
+
1868
+
1869
+ </h3><div class="docstring">
1870
+ <div class="discussion">
1871
+
1872
+
1873
+ </div>
1874
+ </div>
1875
+ <div class="tags">
1876
+ <p class="tag_title">Parameters:</p>
1877
+ <ul class="param">
1878
+
1879
+ <li>
1880
+
1881
+ <span class='name'>_t_new_err</span>
1882
+
1883
+
1884
+ <span class='type'>(<tt>T::Class[T.type_parameter(:NewErrType)]</tt>)</span>
1885
+
1886
+
1887
+
1888
+ </li>
1889
+
1890
+ <li>
1891
+
1892
+ <span class='name'>_block</span>
1893
+
1894
+
1895
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::Ok::ErrType (constant)">ErrType</a></span>).returns(<span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)])</tt>)</span>
1896
+
1897
+
1898
+
1899
+ </li>
1900
+
1901
+ </ul>
1902
+
1903
+ <p class="tag_title">Returns:</p>
1904
+ <ul class="return">
1905
+
1906
+ <li>
1907
+
1908
+
1909
+ <span class='type'>(<tt><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>)</span>
1910
+
1911
+
1912
+
1913
+ </li>
1914
+
1915
+ </ul>
1916
+
1917
+ </div><table class="source_code">
1918
+ <tr>
1919
+ <td>
1920
+ <pre class="lines">
1921
+
1922
+
1923
+ 217
1924
+ 218
1925
+ 219</pre>
1926
+ </td>
1927
+ <td>
1928
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 217</span>
1929
+
1930
+ <span class='kw'>def</span> <span class='id identifier rubyid_or_else_wt'>or_else_wt</span><span class='lparen'>(</span><span class='id identifier rubyid__t_new_err'>_t_new_err</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid__block'>_block</span><span class='rparen'>)</span>
1931
+ <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_cast'>cast</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="../Result.html" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Mangrove::Result::Ok (class)">Ok</a></span></span><span class='lbracket'>[</span><span class='const'><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Ok::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_type_parameter'>type_parameter</span><span class='lparen'>(</span><span class='symbol'>:NewErrType</span><span class='rparen'>)</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1932
+ <span class='kw'>end</span></pre>
1933
+ </td>
1934
+ </tr>
1935
+ </table>
972
1936
  </div>
973
1937
 
974
1938
  <div class="method_details ">
@@ -1008,12 +1972,12 @@
1008
1972
  <pre class="lines">
1009
1973
 
1010
1974
 
1011
- 130
1012
- 131
1013
- 132</pre>
1975
+ 222
1976
+ 223
1977
+ 224</pre>
1014
1978
  </td>
1015
1979
  <td>
1016
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 130</span>
1980
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 222</span>
1017
1981
 
1018
1982
  <span class='kw'>def</span> <span class='id identifier rubyid_to_s'>to_s</span>
1019
1983
  <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='kw'>super</span><span class='embexpr_end'>}</span><span class='tstring_content'>: inner=`</span><span class='embexpr_beg'>#{</span><span class='ivar'>@inner</span><span class='embexpr_end'>}</span><span class='tstring_content'>`</span><span class='tstring_end'>&quot;</span></span>
@@ -1060,12 +2024,12 @@
1060
2024
  <pre class="lines">
1061
2025
 
1062
2026
 
1063
- 99
1064
- 100
1065
- 101</pre>
2027
+ 139
2028
+ 140
2029
+ 141</pre>
1066
2030
  </td>
1067
2031
  <td>
1068
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 99</span>
2032
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 139</span>
1069
2033
 
1070
2034
  <span class='kw'>def</span> <span class='id identifier rubyid_unwrap!'>unwrap!</span>
1071
2035
  <span class='ivar'>@inner</span>
@@ -1080,7 +2044,7 @@
1080
2044
  </div>
1081
2045
 
1082
2046
  <div id="footer">
1083
- Generated on Tue Oct 24 20:44:49 2023 by
2047
+ Generated on Thu Oct 26 12:34:23 2023 by
1084
2048
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1085
2049
  0.9.34 (ruby-3.1.2).
1086
2050
  </div>