mangrove 0.7.1 → 0.8.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.
- checksums.yaml +4 -4
- data/README.md +13 -13
- data/docs/Mangrove/ControlFlow/ControlSignal.html +1 -1
- data/docs/Mangrove/ControlFlow.html +2 -130
- data/docs/Mangrove/Option/ControlSignal.html +1 -1
- data/docs/Mangrove/Option/None.html +140 -38
- data/docs/Mangrove/Option/Some.html +106 -17
- data/docs/Mangrove/Option.html +108 -19
- data/docs/Mangrove/Result/ControlSignal.html +1 -1
- data/docs/Mangrove/Result/Err.html +216 -40
- data/docs/Mangrove/Result/Ok.html +197 -34
- data/docs/Mangrove/Result.html +99 -10
- data/docs/Mangrove.html +3 -3
- data/docs/_index.html +1 -8
- data/docs/class_list.html +1 -1
- data/docs/file.README.html +15 -15
- data/docs/index.html +15 -15
- data/docs/method_list.html +138 -106
- data/docs/top-level-namespace.html +1 -1
- data/lib/mangrove/option.rb +15 -2
- data/lib/mangrove/result.rb +23 -0
- data/lib/mangrove/version.rb +1 -1
- data/lib/mangrove.rb +0 -1
- metadata +2 -3
- data/lib/mangrove/control_flow/rewriter.rb +0 -158
@@ -190,6 +190,28 @@
|
|
190
190
|
|
191
191
|
|
192
192
|
|
193
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
194
|
+
|
195
|
+
</li>
|
196
|
+
|
197
|
+
|
198
|
+
<li class="public ">
|
199
|
+
<span class="summary_signature">
|
200
|
+
|
201
|
+
<a href="#expect_with!-instance_method" title="#expect_with! (instance method)">#<strong>expect_with!</strong>(&_block) ⇒ InnerType </a>
|
202
|
+
|
203
|
+
|
204
|
+
|
205
|
+
</span>
|
206
|
+
|
207
|
+
|
208
|
+
|
209
|
+
|
210
|
+
|
211
|
+
|
212
|
+
|
213
|
+
|
214
|
+
|
193
215
|
<span class="summary_desc"><div class='inline'></div></span>
|
194
216
|
|
195
217
|
</li>
|
@@ -623,6 +645,73 @@
|
|
623
645
|
</td>
|
624
646
|
</tr>
|
625
647
|
</table>
|
648
|
+
</div>
|
649
|
+
|
650
|
+
<div class="method_details ">
|
651
|
+
<h3 class="signature " id="expect_with!-instance_method">
|
652
|
+
|
653
|
+
#<strong>expect_with!</strong>(&_block) ⇒ <tt><span class='object_link'><a href="#InnerType-constant" title="Mangrove::Option::Some::InnerType (constant)">InnerType</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'>_block</span>
|
672
|
+
|
673
|
+
|
674
|
+
<span class='type'>(<tt>T.proc.returns(T.untyped)</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="#InnerType-constant" title="Mangrove::Option::Some::InnerType (constant)">InnerType</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
|
+
70
|
703
|
+
71
|
704
|
+
72</pre>
|
705
|
+
</td>
|
706
|
+
<td>
|
707
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 70</span>
|
708
|
+
|
709
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_expect_with!'>expect_with!</span><span class='lparen'>(</span><span class='op'>&</span><span class='id identifier rubyid__block'>_block</span><span class='rparen'>)</span>
|
710
|
+
<span class='ivar'>@inner</span>
|
711
|
+
<span class='kw'>end</span></pre>
|
712
|
+
</td>
|
713
|
+
</tr>
|
714
|
+
</table>
|
626
715
|
</div>
|
627
716
|
|
628
717
|
<div class="method_details ">
|
@@ -677,12 +766,12 @@
|
|
677
766
|
<pre class="lines">
|
678
767
|
|
679
768
|
|
680
|
-
|
681
|
-
|
682
|
-
|
769
|
+
86
|
770
|
+
87
|
771
|
+
88</pre>
|
683
772
|
</td>
|
684
773
|
<td>
|
685
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
774
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 86</span>
|
686
775
|
|
687
776
|
<span class='kw'>def</span> <span class='id identifier rubyid_map_none'>map_none</span><span class='lparen'>(</span><span class='op'>&</span><span class='id identifier rubyid__block'>_block</span><span class='rparen'>)</span>
|
688
777
|
<span class='kw'>self</span>
|
@@ -744,12 +833,12 @@
|
|
744
833
|
<pre class="lines">
|
745
834
|
|
746
835
|
|
747
|
-
|
748
|
-
|
749
|
-
|
836
|
+
81
|
837
|
+
82
|
838
|
+
83</pre>
|
750
839
|
</td>
|
751
840
|
<td>
|
752
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
841
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 81</span>
|
753
842
|
|
754
843
|
<span class='kw'>def</span> <span class='id identifier rubyid_map_some'>map_some</span><span class='lparen'>(</span><span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
|
755
844
|
<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>
|
@@ -796,10 +885,10 @@
|
|
796
885
|
<pre class="lines">
|
797
886
|
|
798
887
|
|
799
|
-
|
888
|
+
78</pre>
|
800
889
|
</td>
|
801
890
|
<td>
|
802
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
891
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 78</span>
|
803
892
|
|
804
893
|
<span class='kw'>def</span> <span class='id identifier rubyid_none?'>none?</span> <span class='op'>=</span> <span class='kw'>false</span></pre>
|
805
894
|
</td>
|
@@ -844,10 +933,10 @@
|
|
844
933
|
<pre class="lines">
|
845
934
|
|
846
935
|
|
847
|
-
|
936
|
+
75</pre>
|
848
937
|
</td>
|
849
938
|
<td>
|
850
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
939
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 75</span>
|
851
940
|
|
852
941
|
<span class='kw'>def</span> <span class='id identifier rubyid_some?'>some?</span> <span class='op'>=</span> <span class='kw'>true</span></pre>
|
853
942
|
</td>
|
@@ -907,12 +996,12 @@
|
|
907
996
|
<pre class="lines">
|
908
997
|
|
909
998
|
|
910
|
-
|
911
|
-
|
912
|
-
|
999
|
+
91
|
1000
|
+
92
|
1001
|
+
93</pre>
|
913
1002
|
</td>
|
914
1003
|
<td>
|
915
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
1004
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 91</span>
|
916
1005
|
|
917
1006
|
<span class='kw'>def</span> <span class='id identifier rubyid_transpose'>transpose</span><span class='lparen'>(</span><span class='id identifier rubyid__err'>_err</span><span class='rparen'>)</span>
|
918
1007
|
<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="../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='ivar'>@inner</span><span class='rparen'>)</span>
|
@@ -1098,7 +1187,7 @@
|
|
1098
1187
|
</div>
|
1099
1188
|
|
1100
1189
|
<div id="footer">
|
1101
|
-
Generated on
|
1190
|
+
Generated on Wed Oct 18 11:45:16 2023 by
|
1102
1191
|
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
1103
1192
|
0.9.34 (ruby-3.2.2).
|
1104
1193
|
</div>
|
data/docs/Mangrove/Option.html
CHANGED
@@ -192,6 +192,28 @@
|
|
192
192
|
|
193
193
|
|
194
194
|
|
195
|
+
<span class="abstract note title">abstract</span>
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
|
200
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
201
|
+
|
202
|
+
</li>
|
203
|
+
|
204
|
+
|
205
|
+
<li class="public ">
|
206
|
+
<span class="summary_signature">
|
207
|
+
|
208
|
+
<a href="#expect_with!-instance_method" title="#expect_with! (instance method)">#<strong>expect_with!</strong>(&block) ⇒ InnerType </a>
|
209
|
+
|
210
|
+
|
211
|
+
|
212
|
+
</span>
|
213
|
+
|
214
|
+
|
215
|
+
|
216
|
+
|
195
217
|
<span class="abstract note title">abstract</span>
|
196
218
|
|
197
219
|
|
@@ -425,10 +447,10 @@
|
|
425
447
|
<pre class="lines">
|
426
448
|
|
427
449
|
|
428
|
-
|
450
|
+
167</pre>
|
429
451
|
</td>
|
430
452
|
<td>
|
431
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
453
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 167</span>
|
432
454
|
|
433
455
|
<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>
|
434
456
|
</td>
|
@@ -492,15 +514,82 @@
|
|
492
514
|
<pre class="lines">
|
493
515
|
|
494
516
|
|
495
|
-
|
517
|
+
176</pre>
|
496
518
|
</td>
|
497
519
|
<td>
|
498
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
520
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 176</span>
|
499
521
|
|
500
522
|
<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>
|
501
523
|
</td>
|
502
524
|
</tr>
|
503
525
|
</table>
|
526
|
+
</div>
|
527
|
+
|
528
|
+
<div class="method_details ">
|
529
|
+
<h3 class="signature " id="expect_with!-instance_method">
|
530
|
+
|
531
|
+
#<strong>expect_with!</strong>(&block) ⇒ <tt><span class='object_link'><a href="#InnerType-constant" title="Mangrove::Option::InnerType (constant)">InnerType</a></span></tt>
|
532
|
+
|
533
|
+
|
534
|
+
|
535
|
+
|
536
|
+
|
537
|
+
</h3><div class="docstring">
|
538
|
+
<div class="discussion">
|
539
|
+
<div class="note abstract">
|
540
|
+
<strong>This method is abstract.</strong>
|
541
|
+
<div class='inline'></div>
|
542
|
+
</div>
|
543
|
+
|
544
|
+
|
545
|
+
</div>
|
546
|
+
</div>
|
547
|
+
<div class="tags">
|
548
|
+
<p class="tag_title">Parameters:</p>
|
549
|
+
<ul class="param">
|
550
|
+
|
551
|
+
<li>
|
552
|
+
|
553
|
+
<span class='name'>block</span>
|
554
|
+
|
555
|
+
|
556
|
+
<span class='type'>(<tt>T.proc.returns(T.untyped)</tt>)</span>
|
557
|
+
|
558
|
+
|
559
|
+
|
560
|
+
</li>
|
561
|
+
|
562
|
+
</ul>
|
563
|
+
|
564
|
+
<p class="tag_title">Returns:</p>
|
565
|
+
<ul class="return">
|
566
|
+
|
567
|
+
<li>
|
568
|
+
|
569
|
+
|
570
|
+
<span class='type'>(<tt><span class='object_link'><a href="#InnerType-constant" title="Mangrove::Option::InnerType (constant)">InnerType</a></span></tt>)</span>
|
571
|
+
|
572
|
+
|
573
|
+
|
574
|
+
</li>
|
575
|
+
|
576
|
+
</ul>
|
577
|
+
|
578
|
+
</div><table class="source_code">
|
579
|
+
<tr>
|
580
|
+
<td>
|
581
|
+
<pre class="lines">
|
582
|
+
|
583
|
+
|
584
|
+
179</pre>
|
585
|
+
</td>
|
586
|
+
<td>
|
587
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 179</span>
|
588
|
+
|
589
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_expect_with!'>expect_with!</span><span class='lparen'>(</span><span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
|
590
|
+
</td>
|
591
|
+
</tr>
|
592
|
+
</table>
|
504
593
|
</div>
|
505
594
|
|
506
595
|
<div class="method_details ">
|
@@ -559,10 +648,10 @@
|
|
559
648
|
<pre class="lines">
|
560
649
|
|
561
650
|
|
562
|
-
|
651
|
+
191</pre>
|
563
652
|
</td>
|
564
653
|
<td>
|
565
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
654
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 191</span>
|
566
655
|
|
567
656
|
<span class='kw'>def</span> <span class='id identifier rubyid_map_none'>map_none</span><span class='lparen'>(</span><span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
|
568
657
|
</td>
|
@@ -626,10 +715,10 @@
|
|
626
715
|
<pre class="lines">
|
627
716
|
|
628
717
|
|
629
|
-
|
718
|
+
188</pre>
|
630
719
|
</td>
|
631
720
|
<td>
|
632
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
721
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 188</span>
|
633
722
|
|
634
723
|
<span class='kw'>def</span> <span class='id identifier rubyid_map_some'>map_some</span><span class='lparen'>(</span><span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
|
635
724
|
</td>
|
@@ -678,10 +767,10 @@
|
|
678
767
|
<pre class="lines">
|
679
768
|
|
680
769
|
|
681
|
-
|
770
|
+
185</pre>
|
682
771
|
</td>
|
683
772
|
<td>
|
684
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
773
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 185</span>
|
685
774
|
|
686
775
|
<span class='kw'>def</span> <span class='id identifier rubyid_none?'>none?</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
|
687
776
|
</td>
|
@@ -730,10 +819,10 @@
|
|
730
819
|
<pre class="lines">
|
731
820
|
|
732
821
|
|
733
|
-
|
822
|
+
182</pre>
|
734
823
|
</td>
|
735
824
|
<td>
|
736
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
825
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 182</span>
|
737
826
|
|
738
827
|
<span class='kw'>def</span> <span class='id identifier rubyid_some?'>some?</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
|
739
828
|
</td>
|
@@ -797,10 +886,10 @@
|
|
797
886
|
<pre class="lines">
|
798
887
|
|
799
888
|
|
800
|
-
|
889
|
+
194</pre>
|
801
890
|
</td>
|
802
891
|
<td>
|
803
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
892
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 194</span>
|
804
893
|
|
805
894
|
<span class='kw'>def</span> <span class='id identifier rubyid_transpose'>transpose</span><span class='lparen'>(</span><span class='id identifier rubyid_err'>err</span><span class='rparen'>)</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
|
806
895
|
</td>
|
@@ -849,10 +938,10 @@
|
|
849
938
|
<pre class="lines">
|
850
939
|
|
851
940
|
|
852
|
-
|
941
|
+
173</pre>
|
853
942
|
</td>
|
854
943
|
<td>
|
855
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
944
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 173</span>
|
856
945
|
|
857
946
|
<span class='kw'>def</span> <span class='id identifier rubyid_unwrap!'>unwrap!</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
|
858
947
|
</td>
|
@@ -916,10 +1005,10 @@
|
|
916
1005
|
<pre class="lines">
|
917
1006
|
|
918
1007
|
|
919
|
-
|
1008
|
+
170</pre>
|
920
1009
|
</td>
|
921
1010
|
<td>
|
922
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
1011
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 170</span>
|
923
1012
|
|
924
1013
|
<span class='kw'>def</span> <span class='id identifier rubyid_unwrap_or'>unwrap_or</span><span class='lparen'>(</span><span class='id identifier rubyid_default'>default</span><span class='rparen'>)</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
|
925
1014
|
</td>
|
@@ -932,7 +1021,7 @@
|
|
932
1021
|
</div>
|
933
1022
|
|
934
1023
|
<div id="footer">
|
935
|
-
Generated on
|
1024
|
+
Generated on Wed Oct 18 11:45:16 2023 by
|
936
1025
|
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
937
1026
|
0.9.34 (ruby-3.2.2).
|
938
1027
|
</div>
|
@@ -424,7 +424,7 @@
|
|
424
424
|
</div>
|
425
425
|
|
426
426
|
<div id="footer">
|
427
|
-
Generated on
|
427
|
+
Generated on Wed Oct 18 11:45:16 2023 by
|
428
428
|
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
429
429
|
0.9.34 (ruby-3.2.2).
|
430
430
|
</div>
|