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.
@@ -166,6 +166,28 @@
166
166
  <li class="public ">
167
167
  <span class="summary_signature">
168
168
 
169
+ <a href="#err-class_method" title="err (class method)">.<strong>err</strong>(inner) &#x21d2; Result::Err[OkType, ErrType] </a>
170
+
171
+
172
+
173
+ </span>
174
+
175
+
176
+
177
+
178
+
179
+
180
+
181
+
182
+
183
+ <span class="summary_desc"><div class='inline'></div></span>
184
+
185
+ </li>
186
+
187
+
188
+ <li class="public ">
189
+ <span class="summary_signature">
190
+
169
191
  <a href="#from_results-class_method" title="from_results (class method)">.<strong>from_results</strong>(results) &#x21d2; Result[OkType, ErrType] </a>
170
192
 
171
193
 
@@ -180,6 +202,28 @@
180
202
 
181
203
 
182
204
 
205
+ <span class="summary_desc"><div class='inline'></div></span>
206
+
207
+ </li>
208
+
209
+
210
+ <li class="public ">
211
+ <span class="summary_signature">
212
+
213
+ <a href="#ok-class_method" title="ok (class method)">.<strong>ok</strong>(inner) &#x21d2; Result::Ok[OkType, ErrType] </a>
214
+
215
+
216
+
217
+ </span>
218
+
219
+
220
+
221
+
222
+
223
+
224
+
225
+
226
+
183
227
  <span class="summary_desc"><div class='inline'></div></span>
184
228
 
185
229
  </li>
@@ -206,6 +250,72 @@
206
250
 
207
251
 
208
252
 
253
+ <span class="abstract note title">abstract</span>
254
+
255
+
256
+
257
+
258
+ <span class="summary_desc"><div class='inline'></div></span>
259
+
260
+ </li>
261
+
262
+
263
+ <li class="public ">
264
+ <span class="summary_signature">
265
+
266
+ <a href="#and-instance_method" title="#and (instance method)">#<strong>and</strong>(other) &#x21d2; Result[T.type_parameter(:NewOkType), ErrType] </a>
267
+
268
+
269
+
270
+ </span>
271
+
272
+
273
+
274
+
275
+ <span class="abstract note title">abstract</span>
276
+
277
+
278
+
279
+
280
+ <span class="summary_desc"><div class='inline'></div></span>
281
+
282
+ </li>
283
+
284
+
285
+ <li class="public ">
286
+ <span class="summary_signature">
287
+
288
+ <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>
289
+
290
+
291
+
292
+ </span>
293
+
294
+
295
+
296
+
297
+ <span class="abstract note title">abstract</span>
298
+
299
+
300
+
301
+
302
+ <span class="summary_desc"><div class='inline'></div></span>
303
+
304
+ </li>
305
+
306
+
307
+ <li class="public ">
308
+ <span class="summary_signature">
309
+
310
+ <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>
311
+
312
+
313
+
314
+ </span>
315
+
316
+
317
+
318
+
209
319
  <span class="abstract note title">abstract</span>
210
320
 
211
321
 
@@ -272,6 +382,28 @@
272
382
 
273
383
 
274
384
 
385
+ <span class="abstract note title">abstract</span>
386
+
387
+
388
+
389
+
390
+ <span class="summary_desc"><div class='inline'></div></span>
391
+
392
+ </li>
393
+
394
+
395
+ <li class="public ">
396
+ <span class="summary_signature">
397
+
398
+ <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>
399
+
400
+
401
+
402
+ </span>
403
+
404
+
405
+
406
+
275
407
  <span class="abstract note title">abstract</span>
276
408
 
277
409
 
@@ -294,6 +426,28 @@
294
426
 
295
427
 
296
428
 
429
+ <span class="abstract note title">abstract</span>
430
+
431
+
432
+
433
+
434
+ <span class="summary_desc"><div class='inline'></div></span>
435
+
436
+ </li>
437
+
438
+
439
+ <li class="public ">
440
+ <span class="summary_signature">
441
+
442
+ <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>
443
+
444
+
445
+
446
+ </span>
447
+
448
+
449
+
450
+
297
451
  <span class="abstract note title">abstract</span>
298
452
 
299
453
 
@@ -316,6 +470,50 @@
316
470
 
317
471
 
318
472
 
473
+ <span class="abstract note title">abstract</span>
474
+
475
+
476
+
477
+
478
+ <span class="summary_desc"><div class='inline'></div></span>
479
+
480
+ </li>
481
+
482
+
483
+ <li class="public ">
484
+ <span class="summary_signature">
485
+
486
+ <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>
487
+
488
+
489
+
490
+ </span>
491
+
492
+
493
+
494
+
495
+ <span class="abstract note title">abstract</span>
496
+
497
+
498
+
499
+
500
+ <span class="summary_desc"><div class='inline'></div></span>
501
+
502
+ </li>
503
+
504
+
505
+ <li class="public ">
506
+ <span class="summary_signature">
507
+
508
+ <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>
509
+
510
+
511
+
512
+ </span>
513
+
514
+
515
+
516
+
319
517
  <span class="abstract note title">abstract</span>
320
518
 
321
519
 
@@ -338,6 +536,72 @@
338
536
 
339
537
 
340
538
 
539
+ <span class="abstract note title">abstract</span>
540
+
541
+
542
+
543
+
544
+ <span class="summary_desc"><div class='inline'></div></span>
545
+
546
+ </li>
547
+
548
+
549
+ <li class="public ">
550
+ <span class="summary_signature">
551
+
552
+ <a href="#or-instance_method" title="#or (instance method)">#<strong>or</strong>(other) &#x21d2; Result[OkType, ErrType] </a>
553
+
554
+
555
+
556
+ </span>
557
+
558
+
559
+
560
+
561
+ <span class="abstract note title">abstract</span>
562
+
563
+
564
+
565
+
566
+ <span class="summary_desc"><div class='inline'></div></span>
567
+
568
+ </li>
569
+
570
+
571
+ <li class="public ">
572
+ <span class="summary_signature">
573
+
574
+ <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>
575
+
576
+
577
+
578
+ </span>
579
+
580
+
581
+
582
+
583
+ <span class="abstract note title">abstract</span>
584
+
585
+
586
+
587
+
588
+ <span class="summary_desc"><div class='inline'></div></span>
589
+
590
+ </li>
591
+
592
+
593
+ <li class="public ">
594
+ <span class="summary_signature">
595
+
596
+ <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>
597
+
598
+
599
+
600
+ </span>
601
+
602
+
603
+
604
+
341
605
  <span class="abstract note title">abstract</span>
342
606
 
343
607
 
@@ -367,26 +631,781 @@
367
631
 
368
632
  <span class="summary_desc"><div class='inline'></div></span>
369
633
 
370
- </li>
371
-
634
+ </li>
635
+
636
+
637
+ </ul>
638
+
639
+
640
+
641
+
642
+
643
+
644
+
645
+
646
+ <div id="class_method_details" class="method_details_list">
647
+ <h2>Class Method Details</h2>
648
+
649
+
650
+ <div class="method_details first">
651
+ <h3 class="signature first" id="err-class_method">
652
+
653
+ .<strong>err</strong>(inner) &#x21d2; <tt><span class='object_link'><a href="Result/Err.html" title="Mangrove::Result::Err (class)">Result::Err</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
654
+
655
+
656
+
657
+
658
+
659
+ </h3><div class="docstring">
660
+ <div class="discussion">
661
+
662
+
663
+ </div>
664
+ </div>
665
+ <div class="tags">
666
+ <p class="tag_title">Parameters:</p>
667
+ <ul class="param">
668
+
669
+ <li>
670
+
671
+ <span class='name'>inner</span>
672
+
673
+
674
+ <span class='type'>(<tt><span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span></tt>)</span>
675
+
676
+
677
+
678
+ </li>
679
+
680
+ </ul>
681
+
682
+ <p class="tag_title">Returns:</p>
683
+ <ul class="return">
684
+
685
+ <li>
686
+
687
+
688
+ <span class='type'>(<tt><span class='object_link'><a href="Result/Err.html" title="Mangrove::Result::Err (class)">Result::Err</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
689
+
690
+
691
+
692
+ </li>
693
+
694
+ </ul>
695
+
696
+ </div><table class="source_code">
697
+ <tr>
698
+ <td>
699
+ <pre class="lines">
700
+
701
+
702
+ 101
703
+ 102
704
+ 103</pre>
705
+ </td>
706
+ <td>
707
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 101</span>
708
+
709
+ <span class='kw'>def</span> <span class='id identifier rubyid_err'>err</span><span class='lparen'>(</span><span class='id identifier rubyid_inner'>inner</span><span class='rparen'>)</span>
710
+ <span class='const'><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Result/Err.html" title="Mangrove::Result::Err (class)">Err</a></span></span><span class='lbracket'>[</span><span class='const'><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::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_inner'>inner</span><span class='rparen'>)</span>
711
+ <span class='kw'>end</span></pre>
712
+ </td>
713
+ </tr>
714
+ </table>
715
+ </div>
716
+
717
+ <div class="method_details ">
718
+ <h3 class="signature " id="from_results-class_method">
719
+
720
+ .<strong>from_results</strong>(results) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
721
+
722
+
723
+
724
+
725
+
726
+ </h3><div class="docstring">
727
+ <div class="discussion">
728
+
729
+
730
+ </div>
731
+ </div>
732
+ <div class="tags">
733
+ <p class="tag_title">Parameters:</p>
734
+ <ul class="param">
735
+
736
+ <li>
737
+
738
+ <span class='name'>results</span>
739
+
740
+
741
+ <span class='type'>(<tt>Enumerable&lt;<span class='object_link'><a href="" title="Mangrove::Result (module)">Mangrove::Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]&gt;</tt>)</span>
742
+
743
+
744
+
745
+ </li>
746
+
747
+ </ul>
748
+
749
+ <p class="tag_title">Returns:</p>
750
+ <ul class="return">
751
+
752
+ <li>
753
+
754
+
755
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
756
+
757
+
758
+
759
+ </li>
760
+
761
+ </ul>
762
+
763
+ </div><table class="source_code">
764
+ <tr>
765
+ <td>
766
+ <pre class="lines">
767
+
768
+
769
+ 83
770
+ 84
771
+ 85
772
+ 86
773
+ 87
774
+ 88
775
+ 89
776
+ 90
777
+ 91
778
+ 92
779
+ 93</pre>
780
+ </td>
781
+ <td>
782
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 83</span>
783
+
784
+ <span class='kw'>def</span> <span class='id identifier rubyid_from_results'>from_results</span><span class='lparen'>(</span><span class='id identifier rubyid_results'>results</span><span class='rparen'>)</span>
785
+ <span class='id identifier rubyid_errs'>errs</span> <span class='op'>=</span> <span class='id identifier rubyid_results'>results</span><span class='period'>.</span><span class='id identifier rubyid_filter'>filter</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='symbol'>:err?</span><span class='rparen'>)</span>
786
+
787
+ <span class='kw'>if</span> <span class='id identifier rubyid_errs'>errs</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
788
+ <span class='comment'># This is safe as errs is empty.
789
+ </span> <span class='const'><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Result/Ok.html" title="Mangrove::Result::Ok (class)">Ok</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Result/Ok.html#initialize-instance_method" title="Mangrove::Result::Ok#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_results'>results</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_r'>r</span><span class='op'>|</span> <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_cast'>cast</span><span class='lparen'>(</span><span class='id identifier rubyid_r'>r</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Result/Ok.html" 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::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span></span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_ok_inner'>ok_inner</span> <span class='rbrace'>}</span><span class='rparen'>)</span>
790
+ <span class='kw'>else</span>
791
+ <span class='comment'># This is safe as errs is results where err? is true
792
+ </span> <span class='const'><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Result/Err.html" title="Mangrove::Result::Err (class)">Err</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Result/Err.html#initialize-instance_method" title="Mangrove::Result::Err#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_errs'>errs</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_r'>r</span><span class='op'>|</span> <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_cast'>cast</span><span class='lparen'>(</span><span class='id identifier rubyid_r'>r</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Result/Err.html" title="Mangrove::Result::Err (class)">Err</a></span></span><span class='lbracket'>[</span><span class='const'><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span></span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_err_inner'>err_inner</span> <span class='rbrace'>}</span><span class='rparen'>)</span>
793
+ <span class='kw'>end</span>
794
+ <span class='kw'>end</span></pre>
795
+ </td>
796
+ </tr>
797
+ </table>
798
+ </div>
799
+
800
+ <div class="method_details ">
801
+ <h3 class="signature " id="ok-class_method">
802
+
803
+ .<strong>ok</strong>(inner) &#x21d2; <tt><span class='object_link'><a href="Result/Ok.html" title="Mangrove::Result::Ok (class)">Result::Ok</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
804
+
805
+
806
+
807
+
808
+
809
+ </h3><div class="docstring">
810
+ <div class="discussion">
811
+
812
+
813
+ </div>
814
+ </div>
815
+ <div class="tags">
816
+ <p class="tag_title">Parameters:</p>
817
+ <ul class="param">
818
+
819
+ <li>
820
+
821
+ <span class='name'>inner</span>
822
+
823
+
824
+ <span class='type'>(<tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></tt>)</span>
825
+
826
+
827
+
828
+ </li>
829
+
830
+ </ul>
831
+
832
+ <p class="tag_title">Returns:</p>
833
+ <ul class="return">
834
+
835
+ <li>
836
+
837
+
838
+ <span class='type'>(<tt><span class='object_link'><a href="Result/Ok.html" title="Mangrove::Result::Ok (class)">Result::Ok</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
839
+
840
+
841
+
842
+ </li>
843
+
844
+ </ul>
845
+
846
+ </div><table class="source_code">
847
+ <tr>
848
+ <td>
849
+ <pre class="lines">
850
+
851
+
852
+ 96
853
+ 97
854
+ 98</pre>
855
+ </td>
856
+ <td>
857
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 96</span>
858
+
859
+ <span class='kw'>def</span> <span class='id identifier rubyid_ok'>ok</span><span class='lparen'>(</span><span class='id identifier rubyid_inner'>inner</span><span class='rparen'>)</span>
860
+ <span class='const'><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Result/Ok.html" 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::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::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_inner'>inner</span><span class='rparen'>)</span>
861
+ <span class='kw'>end</span></pre>
862
+ </td>
863
+ </tr>
864
+ </table>
865
+ </div>
866
+
867
+ </div>
868
+
869
+ <div id="instance_method_details" class="method_details_list">
870
+ <h2>Instance Method Details</h2>
871
+
872
+
873
+ <div class="method_details first">
874
+ <h3 class="signature first" id="==-instance_method">
875
+
876
+ #<strong>==</strong>(other) &#x21d2; <tt>Boolean</tt>
877
+
878
+
879
+
880
+
881
+
882
+ </h3><div class="docstring">
883
+ <div class="discussion">
884
+ <div class="note abstract">
885
+ <strong>This method is abstract.</strong>
886
+ <div class='inline'></div>
887
+ </div>
888
+
889
+
890
+ </div>
891
+ </div>
892
+ <div class="tags">
893
+ <p class="tag_title">Parameters:</p>
894
+ <ul class="param">
895
+
896
+ <li>
897
+
898
+ <span class='name'>other</span>
899
+
900
+
901
+ <span class='type'>(<tt>BasicObject</tt>)</span>
902
+
903
+
904
+
905
+ </li>
906
+
907
+ </ul>
908
+
909
+ <p class="tag_title">Returns:</p>
910
+ <ul class="return">
911
+
912
+ <li>
913
+
914
+
915
+ <span class='type'>(<tt>Boolean</tt>)</span>
916
+
917
+
918
+
919
+ </li>
920
+
921
+ </ul>
922
+
923
+ </div><table class="source_code">
924
+ <tr>
925
+ <td>
926
+ <pre class="lines">
927
+
928
+
929
+ 22</pre>
930
+ </td>
931
+ <td>
932
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 22</span>
933
+
934
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
935
+ </td>
936
+ </tr>
937
+ </table>
938
+ </div>
939
+
940
+ <div class="method_details ">
941
+ <h3 class="signature " id="and-instance_method">
942
+
943
+ #<strong>and</strong>(other) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
944
+
945
+
946
+
947
+
948
+
949
+ </h3><div class="docstring">
950
+ <div class="discussion">
951
+ <div class="note abstract">
952
+ <strong>This method is abstract.</strong>
953
+ <div class='inline'></div>
954
+ </div>
955
+
956
+
957
+ </div>
958
+ </div>
959
+ <div class="tags">
960
+ <p class="tag_title">Parameters:</p>
961
+ <ul class="param">
962
+
963
+ <li>
964
+
965
+ <span class='name'>other</span>
966
+
967
+
968
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
969
+
970
+
971
+
972
+ </li>
973
+
974
+ </ul>
975
+
976
+ <p class="tag_title">Returns:</p>
977
+ <ul class="return">
978
+
979
+ <li>
980
+
981
+
982
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
983
+
984
+
985
+
986
+ </li>
987
+
988
+ </ul>
989
+
990
+ </div><table class="source_code">
991
+ <tr>
992
+ <td>
993
+ <pre class="lines">
994
+
995
+
996
+ 58</pre>
997
+ </td>
998
+ <td>
999
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 58</span>
1000
+
1001
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1002
+ </td>
1003
+ </tr>
1004
+ </table>
1005
+ </div>
1006
+
1007
+ <div class="method_details ">
1008
+ <h3 class="signature " id="and_then-instance_method">
1009
+
1010
+ #<strong>and_then</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
1011
+
1012
+
1013
+
1014
+
1015
+
1016
+ </h3><div class="docstring">
1017
+ <div class="discussion">
1018
+ <div class="note abstract">
1019
+ <strong>This method is abstract.</strong>
1020
+ <div class='inline'></div>
1021
+ </div>
1022
+
1023
+
1024
+ </div>
1025
+ </div>
1026
+ <div class="tags">
1027
+ <p class="tag_title">Parameters:</p>
1028
+ <ul class="param">
1029
+
1030
+ <li>
1031
+
1032
+ <span class='name'>block</span>
1033
+
1034
+
1035
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>).returns(<span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>])</tt>)</span>
1036
+
1037
+
1038
+
1039
+ </li>
1040
+
1041
+ </ul>
1042
+
1043
+ <p class="tag_title">Returns:</p>
1044
+ <ul class="return">
1045
+
1046
+ <li>
1047
+
1048
+
1049
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
1050
+
1051
+
1052
+
1053
+ </li>
1054
+
1055
+ </ul>
1056
+
1057
+ </div><table class="source_code">
1058
+ <tr>
1059
+ <td>
1060
+ <pre class="lines">
1061
+
1062
+
1063
+ 61</pre>
1064
+ </td>
1065
+ <td>
1066
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 61</span>
1067
+
1068
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1069
+ </td>
1070
+ </tr>
1071
+ </table>
1072
+ </div>
1073
+
1074
+ <div class="method_details ">
1075
+ <h3 class="signature " id="and_then_wt-instance_method">
1076
+
1077
+ #<strong>and_then_wt</strong>(_t_new_ok, &amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
1078
+
1079
+
1080
+
1081
+
1082
+
1083
+ </h3><div class="docstring">
1084
+ <div class="discussion">
1085
+ <div class="note abstract">
1086
+ <strong>This method is abstract.</strong>
1087
+ <div class='inline'></div>
1088
+ </div>
1089
+
1090
+
1091
+ </div>
1092
+ </div>
1093
+ <div class="tags">
1094
+ <p class="tag_title">Parameters:</p>
1095
+ <ul class="param">
1096
+
1097
+ <li>
1098
+
1099
+ <span class='name'>_t_new_ok</span>
1100
+
1101
+
1102
+ <span class='type'>(<tt>T::Class[T.type_parameter(:NewOkType)]</tt>)</span>
1103
+
1104
+
1105
+
1106
+ </li>
1107
+
1108
+ <li>
1109
+
1110
+ <span class='name'>block</span>
1111
+
1112
+
1113
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>).returns(<span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>])</tt>)</span>
1114
+
1115
+
1116
+
1117
+ </li>
1118
+
1119
+ </ul>
1120
+
1121
+ <p class="tag_title">Returns:</p>
1122
+ <ul class="return">
1123
+
1124
+ <li>
1125
+
1126
+
1127
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
1128
+
1129
+
1130
+
1131
+ </li>
1132
+
1133
+ </ul>
1134
+
1135
+ </div><table class="source_code">
1136
+ <tr>
1137
+ <td>
1138
+ <pre class="lines">
1139
+
1140
+
1141
+ 64</pre>
1142
+ </td>
1143
+ <td>
1144
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 64</span>
1145
+
1146
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1147
+ </td>
1148
+ </tr>
1149
+ </table>
1150
+ </div>
1151
+
1152
+ <div class="method_details ">
1153
+ <h3 class="signature " id="err?-instance_method">
1154
+
1155
+ #<strong>err?</strong> &#x21d2; <tt>Boolean</tt>
1156
+
1157
+
1158
+
1159
+
1160
+
1161
+ </h3><div class="docstring">
1162
+ <div class="discussion">
1163
+ <div class="note abstract">
1164
+ <strong>This method is abstract.</strong>
1165
+ <div class='inline'></div>
1166
+ </div>
1167
+
1168
+
1169
+ </div>
1170
+ </div>
1171
+ <div class="tags">
1172
+
1173
+ <p class="tag_title">Returns:</p>
1174
+ <ul class="return">
1175
+
1176
+ <li>
1177
+
1178
+
1179
+ <span class='type'>(<tt>Boolean</tt>)</span>
1180
+
1181
+
1182
+
1183
+ </li>
1184
+
1185
+ </ul>
1186
+
1187
+ </div><table class="source_code">
1188
+ <tr>
1189
+ <td>
1190
+ <pre class="lines">
1191
+
1192
+
1193
+ 28</pre>
1194
+ </td>
1195
+ <td>
1196
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 28</span>
1197
+
1198
+ <span class='kw'>def</span> <span class='id identifier rubyid_err?'>err?</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1199
+ </td>
1200
+ </tr>
1201
+ </table>
1202
+ </div>
1203
+
1204
+ <div class="method_details ">
1205
+ <h3 class="signature " id="expect!-instance_method">
1206
+
1207
+ #<strong>expect!</strong>(message) &#x21d2; <tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></tt>
1208
+
1209
+
1210
+
1211
+
1212
+
1213
+ </h3><div class="docstring">
1214
+ <div class="discussion">
1215
+ <div class="note abstract">
1216
+ <strong>This method is abstract.</strong>
1217
+ <div class='inline'></div>
1218
+ </div>
1219
+
1220
+
1221
+ </div>
1222
+ </div>
1223
+ <div class="tags">
1224
+ <p class="tag_title">Parameters:</p>
1225
+ <ul class="param">
1226
+
1227
+ <li>
1228
+
1229
+ <span class='name'>message</span>
1230
+
1231
+
1232
+ <span class='type'>(<tt>String</tt>)</span>
1233
+
1234
+
1235
+
1236
+ </li>
1237
+
1238
+ </ul>
1239
+
1240
+ <p class="tag_title">Returns:</p>
1241
+ <ul class="return">
1242
+
1243
+ <li>
1244
+
1245
+
1246
+ <span class='type'>(<tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></tt>)</span>
1247
+
1248
+
1249
+
1250
+ </li>
1251
+
1252
+ </ul>
1253
+
1254
+ </div><table class="source_code">
1255
+ <tr>
1256
+ <td>
1257
+ <pre class="lines">
1258
+
1259
+
1260
+ 34</pre>
1261
+ </td>
1262
+ <td>
1263
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 34</span>
1264
+
1265
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1266
+ </td>
1267
+ </tr>
1268
+ </table>
1269
+ </div>
1270
+
1271
+ <div class="method_details ">
1272
+ <h3 class="signature " id="expect_with!-instance_method">
1273
+
1274
+ #<strong>expect_with!</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></tt>
1275
+
1276
+
1277
+
1278
+
1279
+
1280
+ </h3><div class="docstring">
1281
+ <div class="discussion">
1282
+ <div class="note abstract">
1283
+ <strong>This method is abstract.</strong>
1284
+ <div class='inline'></div>
1285
+ </div>
1286
+
1287
+
1288
+ </div>
1289
+ </div>
1290
+ <div class="tags">
1291
+ <p class="tag_title">Parameters:</p>
1292
+ <ul class="param">
1293
+
1294
+ <li>
1295
+
1296
+ <span class='name'>block</span>
1297
+
1298
+
1299
+ <span class='type'>(<tt>T.proc.returns(T.untyped)</tt>)</span>
1300
+
1301
+
1302
+
1303
+ </li>
1304
+
1305
+ </ul>
1306
+
1307
+ <p class="tag_title">Returns:</p>
1308
+ <ul class="return">
1309
+
1310
+ <li>
1311
+
1312
+
1313
+ <span class='type'>(<tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></tt>)</span>
1314
+
1315
+
1316
+
1317
+ </li>
1318
+
1319
+ </ul>
1320
+
1321
+ </div><table class="source_code">
1322
+ <tr>
1323
+ <td>
1324
+ <pre class="lines">
1325
+
1326
+
1327
+ 37</pre>
1328
+ </td>
1329
+ <td>
1330
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 37</span>
1331
+
1332
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1333
+ </td>
1334
+ </tr>
1335
+ </table>
1336
+ </div>
1337
+
1338
+ <div class="method_details ">
1339
+ <h3 class="signature " id="map-instance_method">
1340
+
1341
+ #<strong>map</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)]</tt>
1342
+
1343
+
1344
+
1345
+
1346
+
1347
+ </h3><div class="docstring">
1348
+ <div class="discussion">
1349
+ <div class="note abstract">
1350
+ <strong>This method is abstract.</strong>
1351
+ <div class='inline'></div>
1352
+ </div>
1353
+
1354
+
1355
+ </div>
1356
+ </div>
1357
+ <div class="tags">
1358
+ <p class="tag_title">Parameters:</p>
1359
+ <ul class="param">
1360
+
1361
+ <li>
1362
+
1363
+ <span class='name'>block</span>
1364
+
1365
+
1366
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]).returns(<span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)])</tt>)</span>
1367
+
1368
+
1369
+
1370
+ </li>
1371
+
1372
+ </ul>
1373
+
1374
+ <p class="tag_title">Returns:</p>
1375
+ <ul class="return">
1376
+
1377
+ <li>
372
1378
 
373
- </ul>
1379
+
1380
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)]</tt>)</span>
1381
+
1382
+
1383
+
1384
+ </li>
374
1385
 
1386
+ </ul>
375
1387
 
1388
+ </div><table class="source_code">
1389
+ <tr>
1390
+ <td>
1391
+ <pre class="lines">
376
1392
 
377
-
378
-
379
-
380
-
381
1393
 
382
- <div id="class_method_details" class="method_details_list">
383
- <h2>Class Method Details</h2>
1394
+ 40</pre>
1395
+ </td>
1396
+ <td>
1397
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 40</span>
384
1398
 
1399
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1400
+ </td>
1401
+ </tr>
1402
+ </table>
1403
+ </div>
385
1404
 
386
- <div class="method_details first">
387
- <h3 class="signature first" id="from_results-class_method">
1405
+ <div class="method_details ">
1406
+ <h3 class="signature " id="map_err-instance_method">
388
1407
 
389
- .<strong>from_results</strong>(results) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
1408
+ #<strong>map_err</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>
390
1409
 
391
1410
 
392
1411
 
@@ -394,7 +1413,11 @@
394
1413
 
395
1414
  </h3><div class="docstring">
396
1415
  <div class="discussion">
397
-
1416
+ <div class="note abstract">
1417
+ <strong>This method is abstract.</strong>
1418
+ <div class='inline'></div>
1419
+ </div>
1420
+
398
1421
 
399
1422
  </div>
400
1423
  </div>
@@ -404,10 +1427,10 @@
404
1427
 
405
1428
  <li>
406
1429
 
407
- <span class='name'>results</span>
1430
+ <span class='name'>block</span>
408
1431
 
409
1432
 
410
- <span class='type'>(<tt>Enumerable&lt;<span class='object_link'><a href="" title="Mangrove::Result (module)">Mangrove::Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]&gt;</tt>)</span>
1433
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>).returns(T.type_parameter(:NewErrType))</tt>)</span>
411
1434
 
412
1435
 
413
1436
 
@@ -421,7 +1444,7 @@
421
1444
  <li>
422
1445
 
423
1446
 
424
- <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
1447
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>)</span>
425
1448
 
426
1449
 
427
1450
 
@@ -435,47 +1458,21 @@
435
1458
  <pre class="lines">
436
1459
 
437
1460
 
438
- 53
439
- 54
440
- 55
441
- 56
442
- 57
443
- 58
444
- 59
445
- 60
446
- 61
447
- 62
448
- 63</pre>
1461
+ 52</pre>
449
1462
  </td>
450
1463
  <td>
451
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 53</span>
1464
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 52</span>
452
1465
 
453
- <span class='kw'>def</span> <span class='id identifier rubyid_from_results'>from_results</span><span class='lparen'>(</span><span class='id identifier rubyid_results'>results</span><span class='rparen'>)</span>
454
- <span class='id identifier rubyid_errs'>errs</span> <span class='op'>=</span> <span class='id identifier rubyid_results'>results</span><span class='period'>.</span><span class='id identifier rubyid_filter'>filter</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='symbol'>:err?</span><span class='rparen'>)</span>
455
-
456
- <span class='kw'>if</span> <span class='id identifier rubyid_errs'>errs</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
457
- <span class='comment'># This is safe as errs is empty.
458
- </span> <span class='const'><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Result/Ok.html" title="Mangrove::Result::Ok (class)">Ok</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Result/Ok.html#initialize-instance_method" title="Mangrove::Result::Ok#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_results'>results</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_r'>r</span><span class='op'>|</span> <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_cast'>cast</span><span class='lparen'>(</span><span class='id identifier rubyid_r'>r</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Result/Ok.html" 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::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span></span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_ok_inner'>ok_inner</span> <span class='rbrace'>}</span><span class='rparen'>)</span>
459
- <span class='kw'>else</span>
460
- <span class='comment'># This is safe as errs is results where err? is true
461
- </span> <span class='const'><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Result/Err.html" title="Mangrove::Result::Err (class)">Err</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Result/Err.html#initialize-instance_method" title="Mangrove::Result::Err#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_errs'>errs</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_r'>r</span><span class='op'>|</span> <span class='const'>T</span><span class='period'>.</span><span class='id identifier rubyid_cast'>cast</span><span class='lparen'>(</span><span class='id identifier rubyid_r'>r</span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Result/Err.html" title="Mangrove::Result::Err (class)">Err</a></span></span><span class='lbracket'>[</span><span class='const'><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></span><span class='comma'>,</span> <span class='const'><span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span></span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_err_inner'>err_inner</span> <span class='rbrace'>}</span><span class='rparen'>)</span>
462
- <span class='kw'>end</span>
463
- <span class='kw'>end</span></pre>
1466
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
464
1467
  </td>
465
1468
  </tr>
466
1469
  </table>
467
1470
  </div>
468
1471
 
469
- </div>
470
-
471
- <div id="instance_method_details" class="method_details_list">
472
- <h2>Instance Method Details</h2>
473
-
474
-
475
- <div class="method_details first">
476
- <h3 class="signature first" id="==-instance_method">
1472
+ <div class="method_details ">
1473
+ <h3 class="signature " id="map_err_wt-instance_method">
477
1474
 
478
- #<strong>==</strong>(other) &#x21d2; <tt>Boolean</tt>
1475
+ #<strong>map_err_wt</strong>(_t_new_err, &amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>
479
1476
 
480
1477
 
481
1478
 
@@ -497,10 +1494,21 @@
497
1494
 
498
1495
  <li>
499
1496
 
500
- <span class='name'>other</span>
1497
+ <span class='name'>_t_new_err</span>
501
1498
 
502
1499
 
503
- <span class='type'>(<tt>BasicObject</tt>)</span>
1500
+ <span class='type'>(<tt>T::Class[T.type_parameter(:NewErrType)]</tt>)</span>
1501
+
1502
+
1503
+
1504
+ </li>
1505
+
1506
+ <li>
1507
+
1508
+ <span class='name'>block</span>
1509
+
1510
+
1511
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>).returns(T.type_parameter(:NewErrType))</tt>)</span>
504
1512
 
505
1513
 
506
1514
 
@@ -514,7 +1522,7 @@
514
1522
  <li>
515
1523
 
516
1524
 
517
- <span class='type'>(<tt>Boolean</tt>)</span>
1525
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>)</span>
518
1526
 
519
1527
 
520
1528
 
@@ -528,21 +1536,21 @@
528
1536
  <pre class="lines">
529
1537
 
530
1538
 
531
- 22</pre>
1539
+ 55</pre>
532
1540
  </td>
533
1541
  <td>
534
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 22</span>
1542
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 55</span>
535
1543
 
536
- <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1544
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
537
1545
  </td>
538
1546
  </tr>
539
1547
  </table>
540
1548
  </div>
541
1549
 
542
1550
  <div class="method_details ">
543
- <h3 class="signature " id="err?-instance_method">
1551
+ <h3 class="signature " id="map_ok-instance_method">
544
1552
 
545
- #<strong>err?</strong> &#x21d2; <tt>Boolean</tt>
1553
+ #<strong>map_ok</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
546
1554
 
547
1555
 
548
1556
 
@@ -559,14 +1567,29 @@
559
1567
  </div>
560
1568
  </div>
561
1569
  <div class="tags">
1570
+ <p class="tag_title">Parameters:</p>
1571
+ <ul class="param">
1572
+
1573
+ <li>
1574
+
1575
+ <span class='name'>block</span>
1576
+
1577
+
1578
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>).returns(T.type_parameter(:NewOkType))</tt>)</span>
1579
+
1580
+
1581
+
1582
+ </li>
562
1583
 
1584
+ </ul>
1585
+
563
1586
  <p class="tag_title">Returns:</p>
564
1587
  <ul class="return">
565
1588
 
566
1589
  <li>
567
1590
 
568
1591
 
569
- <span class='type'>(<tt>Boolean</tt>)</span>
1592
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
570
1593
 
571
1594
 
572
1595
 
@@ -580,21 +1603,21 @@
580
1603
  <pre class="lines">
581
1604
 
582
1605
 
583
- 28</pre>
1606
+ 46</pre>
584
1607
  </td>
585
1608
  <td>
586
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 28</span>
1609
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 46</span>
587
1610
 
588
- <span class='kw'>def</span> <span class='id identifier rubyid_err?'>err?</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1611
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
589
1612
  </td>
590
1613
  </tr>
591
1614
  </table>
592
1615
  </div>
593
1616
 
594
1617
  <div class="method_details ">
595
- <h3 class="signature " id="expect!-instance_method">
1618
+ <h3 class="signature " id="map_ok_wt-instance_method">
596
1619
 
597
- #<strong>expect!</strong>(message) &#x21d2; <tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></tt>
1620
+ #<strong>map_ok_wt</strong>(_t_new_ok, &amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
598
1621
 
599
1622
 
600
1623
 
@@ -616,10 +1639,21 @@
616
1639
 
617
1640
  <li>
618
1641
 
619
- <span class='name'>message</span>
1642
+ <span class='name'>_t_new_ok</span>
620
1643
 
621
1644
 
622
- <span class='type'>(<tt>String</tt>)</span>
1645
+ <span class='type'>(<tt>T::Class[T.type_parameter(:NewOkType)]</tt>)</span>
1646
+
1647
+
1648
+
1649
+ </li>
1650
+
1651
+ <li>
1652
+
1653
+ <span class='name'>block</span>
1654
+
1655
+
1656
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>).returns(T.type_parameter(:NewOkType))</tt>)</span>
623
1657
 
624
1658
 
625
1659
 
@@ -633,7 +1667,7 @@
633
1667
  <li>
634
1668
 
635
1669
 
636
- <span class='type'>(<tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></tt>)</span>
1670
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
637
1671
 
638
1672
 
639
1673
 
@@ -647,21 +1681,21 @@
647
1681
  <pre class="lines">
648
1682
 
649
1683
 
650
- 34</pre>
1684
+ 49</pre>
651
1685
  </td>
652
1686
  <td>
653
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 34</span>
1687
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 49</span>
654
1688
 
655
- <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1689
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
656
1690
  </td>
657
1691
  </tr>
658
1692
  </table>
659
1693
  </div>
660
1694
 
661
1695
  <div class="method_details ">
662
- <h3 class="signature " id="expect_with!-instance_method">
1696
+ <h3 class="signature " id="map_wt-instance_method">
663
1697
 
664
- #<strong>expect_with!</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></tt>
1698
+ #<strong>map_wt</strong>(_t_new_ok, _t_new_err, &amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)]</tt>
665
1699
 
666
1700
 
667
1701
 
@@ -681,12 +1715,34 @@
681
1715
  <p class="tag_title">Parameters:</p>
682
1716
  <ul class="param">
683
1717
 
1718
+ <li>
1719
+
1720
+ <span class='name'>_t_new_ok</span>
1721
+
1722
+
1723
+ <span class='type'>(<tt>T.type_parameter(:NewOkType)</tt>)</span>
1724
+
1725
+
1726
+
1727
+ </li>
1728
+
1729
+ <li>
1730
+
1731
+ <span class='name'>_t_new_err</span>
1732
+
1733
+
1734
+ <span class='type'>(<tt>T.type_parameter(:NewErrType)</tt>)</span>
1735
+
1736
+
1737
+
1738
+ </li>
1739
+
684
1740
  <li>
685
1741
 
686
1742
  <span class='name'>block</span>
687
1743
 
688
1744
 
689
- <span class='type'>(<tt>T.proc.returns(T.untyped)</tt>)</span>
1745
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]).returns(<span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)])</tt>)</span>
690
1746
 
691
1747
 
692
1748
 
@@ -700,7 +1756,7 @@
700
1756
  <li>
701
1757
 
702
1758
 
703
- <span class='type'>(<tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span></tt>)</span>
1759
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), T.type_parameter(:NewErrType)]</tt>)</span>
704
1760
 
705
1761
 
706
1762
 
@@ -714,21 +1770,73 @@
714
1770
  <pre class="lines">
715
1771
 
716
1772
 
717
- 37</pre>
1773
+ 43</pre>
718
1774
  </td>
719
1775
  <td>
720
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 37</span>
1776
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 43</span>
721
1777
 
722
- <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1778
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
723
1779
  </td>
724
1780
  </tr>
725
1781
  </table>
726
1782
  </div>
727
1783
 
728
1784
  <div class="method_details ">
729
- <h3 class="signature " id="map_err-instance_method">
1785
+ <h3 class="signature " id="ok?-instance_method">
730
1786
 
731
- #<strong>map_err</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>
1787
+ #<strong>ok?</strong> &#x21d2; <tt>Boolean</tt>
1788
+
1789
+
1790
+
1791
+
1792
+
1793
+ </h3><div class="docstring">
1794
+ <div class="discussion">
1795
+ <div class="note abstract">
1796
+ <strong>This method is abstract.</strong>
1797
+ <div class='inline'></div>
1798
+ </div>
1799
+
1800
+
1801
+ </div>
1802
+ </div>
1803
+ <div class="tags">
1804
+
1805
+ <p class="tag_title">Returns:</p>
1806
+ <ul class="return">
1807
+
1808
+ <li>
1809
+
1810
+
1811
+ <span class='type'>(<tt>Boolean</tt>)</span>
1812
+
1813
+
1814
+
1815
+ </li>
1816
+
1817
+ </ul>
1818
+
1819
+ </div><table class="source_code">
1820
+ <tr>
1821
+ <td>
1822
+ <pre class="lines">
1823
+
1824
+
1825
+ 25</pre>
1826
+ </td>
1827
+ <td>
1828
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 25</span>
1829
+
1830
+ <span class='kw'>def</span> <span class='id identifier rubyid_ok?'>ok?</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1831
+ </td>
1832
+ </tr>
1833
+ </table>
1834
+ </div>
1835
+
1836
+ <div class="method_details ">
1837
+ <h3 class="signature " id="or-instance_method">
1838
+
1839
+ #<strong>or</strong>(other) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
732
1840
 
733
1841
 
734
1842
 
@@ -750,10 +1858,10 @@
750
1858
 
751
1859
  <li>
752
1860
 
753
- <span class='name'>block</span>
1861
+ <span class='name'>other</span>
754
1862
 
755
1863
 
756
- <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>).returns(<span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)])</tt>)</span>
1864
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
757
1865
 
758
1866
 
759
1867
 
@@ -767,7 +1875,7 @@
767
1875
  <li>
768
1876
 
769
1877
 
770
- <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>)</span>
1878
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
771
1879
 
772
1880
 
773
1881
 
@@ -781,21 +1889,21 @@
781
1889
  <pre class="lines">
782
1890
 
783
1891
 
784
- 43</pre>
1892
+ 67</pre>
785
1893
  </td>
786
1894
  <td>
787
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 43</span>
1895
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 67</span>
788
1896
 
789
- <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1897
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
790
1898
  </td>
791
1899
  </tr>
792
1900
  </table>
793
1901
  </div>
794
1902
 
795
1903
  <div class="method_details ">
796
- <h3 class="signature " id="map_ok-instance_method">
1904
+ <h3 class="signature " id="or_else-instance_method">
797
1905
 
798
- #<strong>map_ok</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>
1906
+ #<strong>or_else</strong>(&amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>
799
1907
 
800
1908
 
801
1909
 
@@ -820,7 +1928,7 @@
820
1928
  <span class='name'>block</span>
821
1929
 
822
1930
 
823
- <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>).returns(<span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>])</tt>)</span>
1931
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>).returns(<span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)])</tt>)</span>
824
1932
 
825
1933
 
826
1934
 
@@ -834,7 +1942,7 @@
834
1942
  <li>
835
1943
 
836
1944
 
837
- <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[T.type_parameter(:NewOkType), <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>]</tt>)</span>
1945
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>)</span>
838
1946
 
839
1947
 
840
1948
 
@@ -848,21 +1956,21 @@
848
1956
  <pre class="lines">
849
1957
 
850
1958
 
851
- 40</pre>
1959
+ 70</pre>
852
1960
  </td>
853
1961
  <td>
854
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 40</span>
1962
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 70</span>
855
1963
 
856
- <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
1964
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
857
1965
  </td>
858
1966
  </tr>
859
1967
  </table>
860
1968
  </div>
861
1969
 
862
1970
  <div class="method_details ">
863
- <h3 class="signature " id="ok?-instance_method">
1971
+ <h3 class="signature " id="or_else_wt-instance_method">
864
1972
 
865
- #<strong>ok?</strong> &#x21d2; <tt>Boolean</tt>
1973
+ #<strong>or_else_wt</strong>(_t_new_err, &amp;block) &#x21d2; <tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>
866
1974
 
867
1975
 
868
1976
 
@@ -879,14 +1987,40 @@
879
1987
  </div>
880
1988
  </div>
881
1989
  <div class="tags">
1990
+ <p class="tag_title">Parameters:</p>
1991
+ <ul class="param">
1992
+
1993
+ <li>
1994
+
1995
+ <span class='name'>_t_new_err</span>
1996
+
1997
+
1998
+ <span class='type'>(<tt>T::Class[T.type_parameter(:NewErrType)]</tt>)</span>
1999
+
2000
+
2001
+
2002
+ </li>
2003
+
2004
+ <li>
2005
+
2006
+ <span class='name'>block</span>
2007
+
2008
+
2009
+ <span class='type'>(<tt>T.proc.params(this: <span class='object_link'><a href="#ErrType-constant" title="Mangrove::Result::ErrType (constant)">ErrType</a></span>).returns(<span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)])</tt>)</span>
2010
+
2011
+
2012
+
2013
+ </li>
882
2014
 
2015
+ </ul>
2016
+
883
2017
  <p class="tag_title">Returns:</p>
884
2018
  <ul class="return">
885
2019
 
886
2020
  <li>
887
2021
 
888
2022
 
889
- <span class='type'>(<tt>Boolean</tt>)</span>
2023
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Mangrove::Result (module)">Result</a></span>[<span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::OkType (constant)">OkType</a></span>, T.type_parameter(:NewErrType)]</tt>)</span>
890
2024
 
891
2025
 
892
2026
 
@@ -900,12 +2034,12 @@
900
2034
  <pre class="lines">
901
2035
 
902
2036
 
903
- 25</pre>
2037
+ 73</pre>
904
2038
  </td>
905
2039
  <td>
906
- <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 25</span>
2040
+ <pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 73</span>
907
2041
 
908
- <span class='kw'>def</span> <span class='id identifier rubyid_ok?'>ok?</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
2042
+ <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><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
909
2043
  </td>
910
2044
  </tr>
911
2045
  </table>
@@ -968,7 +2102,7 @@
968
2102
  </div>
969
2103
 
970
2104
  <div id="footer">
971
- Generated on Tue Oct 24 20:44:48 2023 by
2105
+ Generated on Thu Oct 26 12:34:21 2023 by
972
2106
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
973
2107
  0.9.34 (ruby-3.1.2).
974
2108
  </div>