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
@@ -228,6 +228,28 @@
|
|
228
228
|
|
229
229
|
|
230
230
|
|
231
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
232
|
+
|
233
|
+
</li>
|
234
|
+
|
235
|
+
|
236
|
+
<li class="public ">
|
237
|
+
<span class="summary_signature">
|
238
|
+
|
239
|
+
<a href="#expect_with!-instance_method" title="#expect_with! (instance method)">#<strong>expect_with!</strong>(&block) ⇒ OkType </a>
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
</span>
|
244
|
+
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
|
249
|
+
|
250
|
+
|
251
|
+
|
252
|
+
|
231
253
|
<span class="summary_desc"><div class='inline'></div></span>
|
232
254
|
|
233
255
|
</li>
|
@@ -318,6 +340,28 @@
|
|
318
340
|
|
319
341
|
|
320
342
|
|
343
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
344
|
+
|
345
|
+
</li>
|
346
|
+
|
347
|
+
|
348
|
+
<li class="public ">
|
349
|
+
<span class="summary_signature">
|
350
|
+
|
351
|
+
<a href="#to_s-instance_method" title="#to_s (instance method)">#<strong>to_s</strong> ⇒ String </a>
|
352
|
+
|
353
|
+
|
354
|
+
|
355
|
+
</span>
|
356
|
+
|
357
|
+
|
358
|
+
|
359
|
+
|
360
|
+
|
361
|
+
|
362
|
+
|
363
|
+
|
364
|
+
|
321
365
|
<span class="summary_desc"><div class='inline'></div></span>
|
322
366
|
|
323
367
|
</li>
|
@@ -408,12 +452,12 @@
|
|
408
452
|
<pre class="lines">
|
409
453
|
|
410
454
|
|
411
|
-
|
412
|
-
|
413
|
-
|
455
|
+
146
|
456
|
+
147
|
457
|
+
148</pre>
|
414
458
|
</td>
|
415
459
|
<td>
|
416
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line
|
460
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 146</span>
|
417
461
|
|
418
462
|
<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>
|
419
463
|
<span class='ivar'>@inner</span> <span class='op'>=</span> <span class='id identifier rubyid_inner'>inner</span>
|
@@ -482,19 +526,19 @@
|
|
482
526
|
<pre class="lines">
|
483
527
|
|
484
528
|
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
529
|
+
151
|
530
|
+
152
|
531
|
+
153
|
532
|
+
154
|
533
|
+
155
|
534
|
+
156
|
535
|
+
157
|
536
|
+
158
|
537
|
+
159
|
538
|
+
160</pre>
|
495
539
|
</td>
|
496
540
|
<td>
|
497
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line
|
541
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 151</span>
|
498
542
|
|
499
543
|
<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>
|
500
544
|
<span class='kw'>case</span> <span class='id identifier rubyid_other'>other</span>
|
@@ -548,10 +592,10 @@
|
|
548
592
|
<pre class="lines">
|
549
593
|
|
550
594
|
|
551
|
-
|
595
|
+
186</pre>
|
552
596
|
</td>
|
553
597
|
<td>
|
554
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line
|
598
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 186</span>
|
555
599
|
|
556
600
|
<span class='kw'>def</span> <span class='id identifier rubyid_err?'>err?</span> <span class='op'>=</span> <span class='kw'>true</span></pre>
|
557
601
|
</td>
|
@@ -596,12 +640,12 @@
|
|
596
640
|
<pre class="lines">
|
597
641
|
|
598
642
|
|
599
|
-
|
600
|
-
|
601
|
-
|
643
|
+
163
|
644
|
+
164
|
645
|
+
165</pre>
|
602
646
|
</td>
|
603
647
|
<td>
|
604
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line
|
648
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 163</span>
|
605
649
|
|
606
650
|
<span class='kw'>def</span> <span class='id identifier rubyid_err_inner'>err_inner</span>
|
607
651
|
<span class='ivar'>@inner</span>
|
@@ -676,12 +720,12 @@
|
|
676
720
|
<pre class="lines">
|
677
721
|
|
678
722
|
|
679
|
-
|
680
|
-
|
681
|
-
|
723
|
+
173
|
724
|
+
174
|
725
|
+
175</pre>
|
682
726
|
</td>
|
683
727
|
<td>
|
684
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line
|
728
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 173</span>
|
685
729
|
|
686
730
|
<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>
|
687
731
|
<span class='id identifier rubyid_raise'>raise</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="ControlSignal.html" title="Mangrove::Result::ControlSignal (class)">ControlSignal</a></span></span><span class='comma'>,</span> <span class='id identifier rubyid_message'>message</span>
|
@@ -689,6 +733,86 @@
|
|
689
733
|
</td>
|
690
734
|
</tr>
|
691
735
|
</table>
|
736
|
+
</div>
|
737
|
+
|
738
|
+
<div class="method_details ">
|
739
|
+
<h3 class="signature " id="expect_with!-instance_method">
|
740
|
+
|
741
|
+
#<strong>expect_with!</strong>(&block) ⇒ <tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Err::OkType (constant)">OkType</a></span></tt>
|
742
|
+
|
743
|
+
|
744
|
+
|
745
|
+
|
746
|
+
|
747
|
+
</h3><div class="docstring">
|
748
|
+
<div class="discussion">
|
749
|
+
|
750
|
+
|
751
|
+
</div>
|
752
|
+
</div>
|
753
|
+
<div class="tags">
|
754
|
+
<p class="tag_title">Parameters:</p>
|
755
|
+
<ul class="param">
|
756
|
+
|
757
|
+
<li>
|
758
|
+
|
759
|
+
<span class='name'>block</span>
|
760
|
+
|
761
|
+
|
762
|
+
<span class='type'>(<tt>T.proc.returns(T.untyped)</tt>)</span>
|
763
|
+
|
764
|
+
|
765
|
+
|
766
|
+
</li>
|
767
|
+
|
768
|
+
</ul>
|
769
|
+
|
770
|
+
<p class="tag_title">Returns:</p>
|
771
|
+
<ul class="return">
|
772
|
+
|
773
|
+
<li>
|
774
|
+
|
775
|
+
|
776
|
+
<span class='type'>(<tt><span class='object_link'><a href="#OkType-constant" title="Mangrove::Result::Err::OkType (constant)">OkType</a></span></tt>)</span>
|
777
|
+
|
778
|
+
|
779
|
+
|
780
|
+
</li>
|
781
|
+
|
782
|
+
</ul>
|
783
|
+
<p class="tag_title">Raises:</p>
|
784
|
+
<ul class="raise">
|
785
|
+
|
786
|
+
<li>
|
787
|
+
|
788
|
+
|
789
|
+
<span class='type'>(<tt><span class='object_link'><a href="ControlSignal.html" title="Mangrove::Result::ControlSignal (class)">Result::ControlSignal</a></span></tt>)</span>
|
790
|
+
|
791
|
+
|
792
|
+
|
793
|
+
</li>
|
794
|
+
|
795
|
+
</ul>
|
796
|
+
|
797
|
+
</div><table class="source_code">
|
798
|
+
<tr>
|
799
|
+
<td>
|
800
|
+
<pre class="lines">
|
801
|
+
|
802
|
+
|
803
|
+
178
|
804
|
+
179
|
805
|
+
180</pre>
|
806
|
+
</td>
|
807
|
+
<td>
|
808
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 178</span>
|
809
|
+
|
810
|
+
<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>
|
811
|
+
<span class='id identifier rubyid_raise'>raise</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="ControlSignal.html" title="Mangrove::Result::ControlSignal (class)">ControlSignal</a></span></span><span class='comma'>,</span> <span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span>
|
812
|
+
<span class='kw'>end</span></pre>
|
813
|
+
</td>
|
814
|
+
</tr>
|
815
|
+
</table>
|
692
816
|
</div>
|
693
817
|
|
694
818
|
<div class="method_details ">
|
@@ -743,12 +867,12 @@
|
|
743
867
|
<pre class="lines">
|
744
868
|
|
745
869
|
|
746
|
-
|
747
|
-
|
748
|
-
|
870
|
+
194
|
871
|
+
195
|
872
|
+
196</pre>
|
749
873
|
</td>
|
750
874
|
<td>
|
751
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line
|
875
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 194</span>
|
752
876
|
|
753
877
|
<span class='kw'>def</span> <span class='id identifier rubyid_map_err'>map_err</span><span class='lparen'>(</span><span class='op'>&</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
|
754
878
|
<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>
|
@@ -810,12 +934,12 @@
|
|
810
934
|
<pre class="lines">
|
811
935
|
|
812
936
|
|
813
|
-
|
814
|
-
|
815
|
-
|
937
|
+
189
|
938
|
+
190
|
939
|
+
191</pre>
|
816
940
|
</td>
|
817
941
|
<td>
|
818
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line
|
942
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 189</span>
|
819
943
|
|
820
944
|
<span class='kw'>def</span> <span class='id identifier rubyid_map_ok'>map_ok</span><span class='lparen'>(</span><span class='op'>&</span><span class='id identifier rubyid__block'>_block</span><span class='rparen'>)</span>
|
821
945
|
<span class='kw'>self</span>
|
@@ -862,15 +986,67 @@
|
|
862
986
|
<pre class="lines">
|
863
987
|
|
864
988
|
|
865
|
-
|
989
|
+
183</pre>
|
866
990
|
</td>
|
867
991
|
<td>
|
868
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line
|
992
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 183</span>
|
869
993
|
|
870
994
|
<span class='kw'>def</span> <span class='id identifier rubyid_ok?'>ok?</span> <span class='op'>=</span> <span class='kw'>false</span></pre>
|
871
995
|
</td>
|
872
996
|
</tr>
|
873
997
|
</table>
|
998
|
+
</div>
|
999
|
+
|
1000
|
+
<div class="method_details ">
|
1001
|
+
<h3 class="signature " id="to_s-instance_method">
|
1002
|
+
|
1003
|
+
#<strong>to_s</strong> ⇒ <tt>String</tt>
|
1004
|
+
|
1005
|
+
|
1006
|
+
|
1007
|
+
|
1008
|
+
|
1009
|
+
</h3><div class="docstring">
|
1010
|
+
<div class="discussion">
|
1011
|
+
|
1012
|
+
|
1013
|
+
</div>
|
1014
|
+
</div>
|
1015
|
+
<div class="tags">
|
1016
|
+
|
1017
|
+
<p class="tag_title">Returns:</p>
|
1018
|
+
<ul class="return">
|
1019
|
+
|
1020
|
+
<li>
|
1021
|
+
|
1022
|
+
|
1023
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1024
|
+
|
1025
|
+
|
1026
|
+
|
1027
|
+
</li>
|
1028
|
+
|
1029
|
+
</ul>
|
1030
|
+
|
1031
|
+
</div><table class="source_code">
|
1032
|
+
<tr>
|
1033
|
+
<td>
|
1034
|
+
<pre class="lines">
|
1035
|
+
|
1036
|
+
|
1037
|
+
199
|
1038
|
+
200
|
1039
|
+
201</pre>
|
1040
|
+
</td>
|
1041
|
+
<td>
|
1042
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 199</span>
|
1043
|
+
|
1044
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_to_s'>to_s</span>
|
1045
|
+
<span class='tstring'><span class='tstring_beg'>"</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'>"</span></span>
|
1046
|
+
<span class='kw'>end</span></pre>
|
1047
|
+
</td>
|
1048
|
+
</tr>
|
1049
|
+
</table>
|
874
1050
|
</div>
|
875
1051
|
|
876
1052
|
<div class="method_details ">
|
@@ -923,12 +1099,12 @@
|
|
923
1099
|
<pre class="lines">
|
924
1100
|
|
925
1101
|
|
926
|
-
|
927
|
-
|
928
|
-
|
1102
|
+
168
|
1103
|
+
169
|
1104
|
+
170</pre>
|
929
1105
|
</td>
|
930
1106
|
<td>
|
931
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line
|
1107
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/result.rb', line 168</span>
|
932
1108
|
|
933
1109
|
<span class='kw'>def</span> <span class='id identifier rubyid_unwrap!'>unwrap!</span>
|
934
1110
|
<span class='id identifier rubyid_raise'>raise</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="ControlSignal.html" title="Mangrove::Result::ControlSignal (class)">ControlSignal</a></span></span><span class='comma'>,</span> <span class='ivar'>@inner</span>
|
@@ -943,7 +1119,7 @@
|
|
943
1119
|
</div>
|
944
1120
|
|
945
1121
|
<div id="footer">
|
946
|
-
Generated on
|
1122
|
+
Generated on Wed Oct 18 11:45:16 2023 by
|
947
1123
|
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
948
1124
|
0.9.34 (ruby-3.2.2).
|
949
1125
|
</div>
|