From 0f0f3df21b71678504cd8c0fb0e55dfd7af5f176 Mon Sep 17 00:00:00 2001 From: Louis Pilfold Date: Sun, 17 Mar 2019 22:12:37 +0000 Subject: Unify tuple patterns with type vars --- gen/result.erl | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'gen/result.erl') diff --git a/gen/result.erl b/gen/result.erl index 19d87ed..e793c6b 100644 --- a/gen/result.erl +++ b/gen/result.erl @@ -85,22 +85,18 @@ flatten_test() -> then(Result, Fun) -> case Result of {ok, X} -> - case Fun(X) of - {ok, Y} -> - {ok, Y}; + Fun(X); - {error, Y1} -> - {error, Y1} - end; - - {error, _} -> - Result + {error, E} -> + {error, E} end. -ifdef(TEST). then_test() -> expect:equal(then({error, 1}, fun(X) -> {ok, X + 1} end), {error, 1}), expect:equal(then({ok, 1}, fun(X) -> {ok, X + 1} end), {ok, 2}), + expect:equal(then({ok, 1}, fun(_) -> {ok, <<"type change">>} end), + {ok, <<"type change">>}), expect:equal(then({ok, 1}, fun(_) -> {error, 1} end), {error, 1}). -endif. -- cgit v1.2.3