Add hope_option:of_result/1
[hope.git] / src / hope_option.erl
index c461d04..ab6eab7 100644 (file)
@@ -9,6 +9,8 @@
     [ put/2
     , get/2
     , map/2
+    , iter/2
+    , of_result/1
     ]).
 
 
@@ -35,3 +37,13 @@ get(none     , Y) -> Y.
     t(B).
 map({some, X}, F) -> {some, F(X)};
 map(none     , _) -> none.
+
+-spec iter(t(A), fun((A) -> (ok))) ->
+    ok.
+iter({some, X}, F) -> ok = F(X);
+iter(none     , _) -> ok.
+
+-spec of_result(hope_result:t(A, _B)) ->
+    t(A).
+of_result({ok, X})    -> {some, X};
+of_result({error, _}) -> none.
This page took 0.025336 seconds and 4 git commands to generate.