From 5a1f3494eb9517a7b7a332cb74dd10a6a7d32d31 Mon Sep 17 00:00:00 2001 From: Louis Pilfold Date: Wed, 29 May 2019 21:02:55 +0100 Subject: Enable namespaced modules --- gen/src/std@tuple.erl | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 gen/src/std@tuple.erl (limited to 'gen/src/std@tuple.erl') diff --git a/gen/src/std@tuple.erl b/gen/src/std@tuple.erl new file mode 100644 index 0000000..0c9e89d --- /dev/null +++ b/gen/src/std@tuple.erl @@ -0,0 +1,28 @@ +-module(std@tuple). +-compile(no_auto_import). + +-export([new/2, first/1, second/1, swap/1, fetch/2]). + +new(A, B) -> + {A, B}. + +first(Tup) -> + {A, _} = Tup, + A. + +second(Tup) -> + {_, A} = Tup, + A. + +swap(Tup) -> + {A, B} = Tup, + {B, A}. + +fetch(Haystack, Needle) -> + std@list:find(Haystack, fun(Tuple) -> case first(Tuple) =:= Needle of + true -> + {ok, second(Tuple)}; + + false -> + {error, []} + end end). -- cgit v1.2.3