mangrove 0.7.2 → 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 +1 -1
- 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 +145 -43
- data/docs/Mangrove/Result/Ok.html +127 -38
- data/docs/Mangrove/Result.html +99 -10
- data/docs/Mangrove.html +2 -2
- data/docs/_index.html +1 -1
- data/docs/file.README.html +15 -15
- data/docs/index.html +15 -15
- data/docs/method_list.html +128 -80
- data/docs/top-level-namespace.html +1 -1
- data/lib/mangrove/option.rb +15 -2
- data/lib/mangrove/result.rb +13 -0
- data/lib/mangrove/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3ade560b0dc327319be4fee46607f4b03375d6672b19955bfc7e024a425868d3
|
4
|
+
data.tar.gz: 913c9ce80834cf53e653d1d7bbcfb0213e0cc21435eb4a3acd741ffcacc0ada6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b39ce6a6a8dde42e1581d553e8f0019aa14273a608a62e612e95138e820cda90621a7ba754a5078a8774ebcf463b134d44be6c5253852fc3b7ef4a22310edeb1
|
7
|
+
data.tar.gz: 4a735957cb30d9419fb407d64d281d6bc8711c60079566b3b866528d9a2d582e57acaadd9da223954e4444f11527f3c4cac06fcf456cd77f079f1175ae67eb31
|
data/README.md
CHANGED
@@ -3,30 +3,30 @@ Mangrove provides type utility to use with Sorbet.
|
|
3
3
|
|
4
4
|
You can do something like this with the gem.
|
5
5
|
|
6
|
+
use `rubocop-mangrove`` to statically check rescuing ControlSignal is done
|
7
|
+
|
6
8
|
```ruby
|
7
|
-
class
|
9
|
+
class TransposeExample
|
8
10
|
extend T::Sig
|
9
11
|
|
10
|
-
include Mangrove::ControlFlow::Handler
|
11
|
-
|
12
12
|
sig { params(numbers: T::Enumerable[Integer]).returns(Mangrove::Result[T::Array[Integer], String]) }
|
13
13
|
def divide_arguments_by_3(numbers)
|
14
|
-
|
14
|
+
Mangrove::Result.from_results(numbers
|
15
15
|
.map { |number|
|
16
16
|
if number % 3 == 0
|
17
17
|
Mangrove::Result::Ok.new(number / 3)
|
18
18
|
else
|
19
19
|
Mangrove::Result::Err.new("number #{number} is not divisible by 3")
|
20
20
|
end
|
21
|
-
}
|
22
|
-
|
23
|
-
|
24
|
-
Mangrove::Result::Ok.new(divided_nubmers)
|
21
|
+
})
|
22
|
+
rescue ::Mangrove::ControlFlow::ControlSignal => e
|
23
|
+
Mangrove::Result::Err.new(e.inner_value)
|
25
24
|
end
|
26
25
|
end
|
26
|
+
# rubocop:enable Lint/ConstantDefinitionInBlock
|
27
27
|
|
28
|
-
expect(
|
29
|
-
expect(
|
28
|
+
expect(TransposeExample.new.divide_arguments_by_3([3, 4, 5])).to eq Mangrove::Result::Err.new(["number 4 is not divisible by 3", "number 5 is not divisible by 3"])
|
29
|
+
expect(TransposeExample.new.divide_arguments_by_3([3, 6, 9])).to eq Mangrove::Result::Ok.new([1, 2, 3])
|
30
30
|
```
|
31
31
|
|
32
32
|
Other examples are available at [`spec/**/**_spec.rb`](https://github.com/kazzix14/mangrove/tree/main/spec).
|
@@ -34,9 +34,9 @@ Other examples are available at [`spec/**/**_spec.rb`](https://github.com/kazzix
|
|
34
34
|
## Features
|
35
35
|
Most features are not implemented.
|
36
36
|
|
37
|
-
- [x] Option Type
|
38
|
-
- [x] Result Type
|
39
|
-
- [ ] Builder
|
37
|
+
- [x] Option Type
|
38
|
+
- [x] Result Type
|
39
|
+
- [ ] Builder Type Factory
|
40
40
|
- [ ] Auto Implementation
|
41
41
|
- [ ] TODO
|
42
42
|
|
@@ -213,7 +213,7 @@
|
|
213
213
|
</div>
|
214
214
|
|
215
215
|
<div id="footer">
|
216
|
-
Generated on
|
216
|
+
Generated on Wed Oct 18 11:45:16 2023 by
|
217
217
|
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
218
218
|
0.9.34 (ruby-3.2.2).
|
219
219
|
</div>
|
@@ -105,7 +105,7 @@
|
|
105
105
|
</div>
|
106
106
|
|
107
107
|
<div id="footer">
|
108
|
-
Generated on
|
108
|
+
Generated on Wed Oct 18 11:45:16 2023 by
|
109
109
|
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
110
110
|
0.9.34 (ruby-3.2.2).
|
111
111
|
</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>
|
@@ -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>
|
@@ -423,20 +445,20 @@
|
|
423
445
|
<pre class="lines">
|
424
446
|
|
425
447
|
|
426
|
-
107
|
427
|
-
108
|
428
|
-
109
|
429
|
-
110
|
430
|
-
111
|
431
448
|
112
|
432
449
|
113
|
433
450
|
114
|
434
451
|
115
|
435
452
|
116
|
436
|
-
117
|
453
|
+
117
|
454
|
+
118
|
455
|
+
119
|
456
|
+
120
|
457
|
+
121
|
458
|
+
122</pre>
|
437
459
|
</td>
|
438
460
|
<td>
|
439
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
461
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 112</span>
|
440
462
|
|
441
463
|
<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>
|
442
464
|
<span class='kw'>case</span> <span class='id identifier rubyid_other'>other</span>
|
@@ -519,15 +541,95 @@
|
|
519
541
|
<pre class="lines">
|
520
542
|
|
521
543
|
|
522
|
-
|
523
|
-
|
524
|
-
|
544
|
+
135
|
545
|
+
136
|
546
|
+
137</pre>
|
525
547
|
</td>
|
526
548
|
<td>
|
527
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
549
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 135</span>
|
528
550
|
|
529
551
|
<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>
|
530
|
-
<span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="../Option.html" title="Mangrove::Option (module)">Option</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ControlSignal.html" title="Mangrove::Option::ControlSignal (class)">ControlSignal</a></span></span><span class='comma'>,</span> <span class='
|
552
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="../Option.html" title="Mangrove::Option (module)">Option</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ControlSignal.html" title="Mangrove::Option::ControlSignal (class)">ControlSignal</a></span></span><span class='comma'>,</span> <span class='id identifier rubyid_message'>message</span>
|
553
|
+
<span class='kw'>end</span></pre>
|
554
|
+
</td>
|
555
|
+
</tr>
|
556
|
+
</table>
|
557
|
+
</div>
|
558
|
+
|
559
|
+
<div class="method_details ">
|
560
|
+
<h3 class="signature " id="expect_with!-instance_method">
|
561
|
+
|
562
|
+
#<strong>expect_with!</strong>(&block) ⇒ <tt><span class='object_link'><a href="#InnerType-constant" title="Mangrove::Option::None::InnerType (constant)">InnerType</a></span></tt>
|
563
|
+
|
564
|
+
|
565
|
+
|
566
|
+
|
567
|
+
|
568
|
+
</h3><div class="docstring">
|
569
|
+
<div class="discussion">
|
570
|
+
|
571
|
+
|
572
|
+
</div>
|
573
|
+
</div>
|
574
|
+
<div class="tags">
|
575
|
+
<p class="tag_title">Parameters:</p>
|
576
|
+
<ul class="param">
|
577
|
+
|
578
|
+
<li>
|
579
|
+
|
580
|
+
<span class='name'>block</span>
|
581
|
+
|
582
|
+
|
583
|
+
<span class='type'>(<tt>T.proc.returns(T.untyped)</tt>)</span>
|
584
|
+
|
585
|
+
|
586
|
+
|
587
|
+
</li>
|
588
|
+
|
589
|
+
</ul>
|
590
|
+
|
591
|
+
<p class="tag_title">Returns:</p>
|
592
|
+
<ul class="return">
|
593
|
+
|
594
|
+
<li>
|
595
|
+
|
596
|
+
|
597
|
+
<span class='type'>(<tt><span class='object_link'><a href="#InnerType-constant" title="Mangrove::Option::None::InnerType (constant)">InnerType</a></span></tt>)</span>
|
598
|
+
|
599
|
+
|
600
|
+
|
601
|
+
</li>
|
602
|
+
|
603
|
+
</ul>
|
604
|
+
<p class="tag_title">Raises:</p>
|
605
|
+
<ul class="raise">
|
606
|
+
|
607
|
+
<li>
|
608
|
+
|
609
|
+
|
610
|
+
<span class='type'>(<tt><span class='object_link'><a href="ControlSignal.html" title="Mangrove::Option::ControlSignal (class)">Option::ControlSignal</a></span></tt>)</span>
|
611
|
+
|
612
|
+
|
613
|
+
|
614
|
+
</li>
|
615
|
+
|
616
|
+
</ul>
|
617
|
+
|
618
|
+
</div><table class="source_code">
|
619
|
+
<tr>
|
620
|
+
<td>
|
621
|
+
<pre class="lines">
|
622
|
+
|
623
|
+
|
624
|
+
140
|
625
|
+
141
|
626
|
+
142</pre>
|
627
|
+
</td>
|
628
|
+
<td>
|
629
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 140</span>
|
630
|
+
|
631
|
+
<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>
|
632
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="../Option.html" title="Mangrove::Option (module)">Option</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ControlSignal.html" title="Mangrove::Option::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>
|
531
633
|
<span class='kw'>end</span></pre>
|
532
634
|
</td>
|
533
635
|
</tr>
|
@@ -586,12 +688,12 @@
|
|
586
688
|
<pre class="lines">
|
587
689
|
|
588
690
|
|
589
|
-
|
590
|
-
|
591
|
-
|
691
|
+
156
|
692
|
+
157
|
693
|
+
158</pre>
|
592
694
|
</td>
|
593
695
|
<td>
|
594
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
696
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 156</span>
|
595
697
|
|
596
698
|
<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>
|
597
699
|
<span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span>
|
@@ -653,12 +755,12 @@
|
|
653
755
|
<pre class="lines">
|
654
756
|
|
655
757
|
|
656
|
-
|
657
|
-
|
658
|
-
|
758
|
+
151
|
759
|
+
152
|
760
|
+
153</pre>
|
659
761
|
</td>
|
660
762
|
<td>
|
661
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
763
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 151</span>
|
662
764
|
|
663
765
|
<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>
|
664
766
|
<span class='kw'>self</span>
|
@@ -705,10 +807,10 @@
|
|
705
807
|
<pre class="lines">
|
706
808
|
|
707
809
|
|
708
|
-
|
810
|
+
148</pre>
|
709
811
|
</td>
|
710
812
|
<td>
|
711
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
813
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 148</span>
|
712
814
|
|
713
815
|
<span class='kw'>def</span> <span class='id identifier rubyid_none?'>none?</span> <span class='op'>=</span> <span class='kw'>true</span></pre>
|
714
816
|
</td>
|
@@ -753,10 +855,10 @@
|
|
753
855
|
<pre class="lines">
|
754
856
|
|
755
857
|
|
756
|
-
|
858
|
+
145</pre>
|
757
859
|
</td>
|
758
860
|
<td>
|
759
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
861
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 145</span>
|
760
862
|
|
761
863
|
<span class='kw'>def</span> <span class='id identifier rubyid_some?'>some?</span> <span class='op'>=</span> <span class='kw'>false</span></pre>
|
762
864
|
</td>
|
@@ -816,12 +918,12 @@
|
|
816
918
|
<pre class="lines">
|
817
919
|
|
818
920
|
|
819
|
-
|
820
|
-
|
821
|
-
|
921
|
+
161
|
922
|
+
162
|
923
|
+
163</pre>
|
822
924
|
</td>
|
823
925
|
<td>
|
824
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
926
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 161</span>
|
825
927
|
|
826
928
|
<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>
|
827
929
|
<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/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_err'>err</span><span class='rparen'>)</span>
|
@@ -881,15 +983,15 @@
|
|
881
983
|
<pre class="lines">
|
882
984
|
|
883
985
|
|
884
|
-
|
885
|
-
|
886
|
-
|
986
|
+
130
|
987
|
+
131
|
988
|
+
132</pre>
|
887
989
|
</td>
|
888
990
|
<td>
|
889
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
991
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 130</span>
|
890
992
|
|
891
993
|
<span class='kw'>def</span> <span class='id identifier rubyid_unwrap!'>unwrap!</span>
|
892
|
-
<span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="../Option.html" title="Mangrove::Option (module)">Option</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ControlSignal.html" title="Mangrove::Option::ControlSignal (class)">ControlSignal</a></span></span><span class='comma'>,</span> <span class='
|
994
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="../Option.html" title="Mangrove::Option (module)">Option</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ControlSignal.html" title="Mangrove::Option::ControlSignal (class)">ControlSignal</a></span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>called `Option#unwrap!` on an `None` value: </span><span class='embexpr_beg'>#{</span><span class='kw'>self</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
893
995
|
<span class='kw'>end</span></pre>
|
894
996
|
</td>
|
895
997
|
</tr>
|
@@ -948,12 +1050,12 @@
|
|
948
1050
|
<pre class="lines">
|
949
1051
|
|
950
1052
|
|
951
|
-
|
952
|
-
|
953
|
-
|
1053
|
+
125
|
1054
|
+
126
|
1055
|
+
127</pre>
|
954
1056
|
</td>
|
955
1057
|
<td>
|
956
|
-
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line
|
1058
|
+
<pre class="code"><span class="info file"># File 'lib/mangrove/option.rb', line 125</span>
|
957
1059
|
|
958
1060
|
<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>
|
959
1061
|
<span class='id identifier rubyid_default'>default</span>
|
@@ -968,7 +1070,7 @@
|
|
968
1070
|
</div>
|
969
1071
|
|
970
1072
|
<div id="footer">
|
971
|
-
Generated on
|
1073
|
+
Generated on Wed Oct 18 11:45:16 2023 by
|
972
1074
|
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
973
1075
|
0.9.34 (ruby-3.2.2).
|
974
1076
|
</div>
|
@@ -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>
|