From 00ff9767dc61e698aac791b43704cfce1ab33600 Mon Sep 17 00:00:00 2001 From: Louis Pilfold Date: Sun, 17 Mar 2019 14:34:07 +0000 Subject: stdlib atom --- gen/atom.erl | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 gen/atom.erl (limited to 'gen/atom.erl') diff --git a/gen/atom.erl b/gen/atom.erl new file mode 100644 index 0000000..70c899b --- /dev/null +++ b/gen/atom.erl @@ -0,0 +1,38 @@ +-module(atom). +-compile(no_auto_import). +-include_lib("eunit/include/eunit.hrl"). + +-export([from_string/1, create_from_string/1, to_string/1]). + +from_string(A) -> + gleam__stdlib:atom_from_string(A). + +-ifdef(TEST). +from_string_test() -> + expect:is_ok(from_string(<<"ok">>)), + expect:is_ok(from_string(<<"expect">>)), + expect:equal(from_string(<<"this is not an atom we have seen before">>), + {error, atom_not_loaded}). +-endif. + +create_from_string(A) -> + gleam__stdlib:atom_create_from_string(A). + +-ifdef(TEST). +create_from_string_test() -> + Ok = fun(X) -> {ok, X} end, + expect:equal(Ok(create_from_string(<<"ok">>)), from_string(<<"ok">>)), + expect:equal(Ok(create_from_string(<<"expect">>)), + from_string(<<"expect">>)), + expect:equal(Ok(create_from_string(<<"this is another atom we have not seen before">>)), + from_string(<<"this is another atom we have not seen before">>)). +-endif. + +to_string(A) -> + gleam__stdlib:atom_to_string(A). + +-ifdef(TEST). +to_string_test() -> + expect:equal(to_string(create_from_string(<<"ok">>)), <<"ok">>), + expect:equal(to_string(create_from_string(<<"expect">>)), <<"expect">>). +-endif. -- cgit v1.2.3