aboutsummaryrefslogtreecommitdiff
path: root/gen
diff options
context:
space:
mode:
authorLouis Pilfold <louis@lpil.uk>2019-03-12 18:30:12 +0000
committerLouis Pilfold <louis@lpil.uk>2019-03-12 18:32:51 +0000
commit80a8083b143eaa24218ec5fda16f947658fb823d (patch)
tree32b64f2327e30270e0f2126ee0f80363956d4527 /gen
parent2a7d9061e4ec9c763053b078db2d98400bd08dd5 (diff)
downloadgleam_stdlib-80a8083b143eaa24218ec5fda16f947658fb823d.tar.gz
gleam_stdlib-80a8083b143eaa24218ec5fda16f947658fb823d.zip
Compile map module
Diffstat (limited to 'gen')
-rw-r--r--gen/any.erl1
-rw-r--r--gen/bool.erl1
-rw-r--r--gen/expect.erl1
-rw-r--r--gen/iodata.erl3
-rw-r--r--gen/list.erl3
-rw-r--r--gen/map.erl62
-rw-r--r--gen/order.erl1
-rw-r--r--gen/result.erl1
8 files changed, 63 insertions, 10 deletions
diff --git a/gen/any.erl b/gen/any.erl
index 9ea0087..bfca689 100644
--- a/gen/any.erl
+++ b/gen/any.erl
@@ -1,4 +1,5 @@
-module(any).
+-compile(no_auto_import).
-export([from/1, unsafeCoerce/1]).
diff --git a/gen/bool.erl b/gen/bool.erl
index 9024a16..8b9c1c4 100644
--- a/gen/bool.erl
+++ b/gen/bool.erl
@@ -1,4 +1,5 @@
-module(bool).
+-compile(no_auto_import).
-include_lib("eunit/include/eunit.hrl").
-export([max/2, min/2, to_int/1]).
diff --git a/gen/expect.erl b/gen/expect.erl
index 2152c4f..4d42f10 100644
--- a/gen/expect.erl
+++ b/gen/expect.erl
@@ -1,4 +1,5 @@
-module(expect).
+-compile(no_auto_import).
-export([equal/2, not_equal/2, true/1, false/1, fail/0]).
diff --git a/gen/iodata.erl b/gen/iodata.erl
index 0eaaca2..9704413 100644
--- a/gen/iodata.erl
+++ b/gen/iodata.erl
@@ -1,9 +1,10 @@
-module(iodata).
+-compile(no_auto_import).
-export([prepend/2, append/2, from/1, to_string/1, byte_size/1]).
prepend(A, B) ->
- gleam__stdlib:iodata_prepend(A, B).
+ gleam__stdlib:iodata_concat(A, B).
append(A, B) ->
gleam__stdlib:iodata_append(A, B).
diff --git a/gen/list.erl b/gen/list.erl
index 0e5f1f2..964dc69 100644
--- a/gen/list.erl
+++ b/gen/list.erl
@@ -1,4 +1,5 @@
-module(list).
+-compile(no_auto_import).
-include_lib("eunit/include/eunit.hrl").
-export([length/1, reverse/1, is_empty/1, has_member/2, head/1, tail/1, map/2, do_traverse/3, traverse/2, new/0, foldl/3, foldr/3]).
@@ -15,7 +16,7 @@ length_test() ->
-endif.
reverse(A) ->
- erlang:reverse(A).
+ lists:reverse(A).
-ifdef(TEST).
reverse_test() ->
diff --git a/gen/map.erl b/gen/map.erl
index db29fd0..c2a07d4 100644
--- a/gen/map.erl
+++ b/gen/map.erl
@@ -1,10 +1,8 @@
-module(map).
+-compile(no_auto_import).
-include_lib("eunit/include/eunit.hrl").
--export([new/0, size/1, to_list/1, from_list/1, fetch/2, map_values/2, keys/1, values/1, filter/2]).
-
-new() ->
- maps:new().
+-export([size/1, to_list/1, from_list/1, has_key/2, new/0, fetch/2, put/3, map_values/2, keys/1, values/1, filter/2]).
size(A) ->
maps:size(A).
@@ -19,8 +17,38 @@ from_list(A) ->
from_list_test() ->
Proplist = [{4, 0}, {1, 0}],
Map = from_list(Proplist),
- _ = (fun(Capture1) -> expect:equal(Capture1, 2) end)(size(Map)),
- (fun(Capture1) -> expect:equal(Capture1, Proplist) end)(to_list(Map)).
+ (fun(Capture1) -> expect:equal(Capture1, 2) end)(size(Map)).
+-endif.
+
+is_key(A, B) ->
+ maps:is_key(A, B).
+
+has_key(Map, Key) ->
+ is_key(Key, Map).
+
+-ifdef(TEST).
+has_key_test() ->
+ _ = expect:false((fun(Capture1) ->
+ has_key(Capture1, 1)
+ end)(from_list([]))),
+ _ = expect:true((fun(Capture1) ->
+ has_key(Capture1, 1)
+ end)(from_list([{1, 0}]))),
+ _ = expect:true((fun(Capture1) ->
+ has_key(Capture1, 1)
+ end)(from_list([{4, 0}, {1, 0}]))),
+ expect:false((fun(Capture1) ->
+ has_key(Capture1, 0)
+ end)(from_list([{4, 0}, {1, 0}]))).
+-endif.
+
+new() ->
+ maps:new().
+
+-ifdef(TEST).
+new_test() ->
+ _ = (fun(Capture1) -> expect:equal(Capture1, 0) end)(size(new())),
+ (fun(Capture1) -> expect:equal(Capture1, []) end)(to_list(new())).
-endif.
fetch(A, B) ->
@@ -38,6 +66,24 @@ fetch_test() ->
end)((fun(Capture1) -> fetch(Capture1, 1) end)(Map)).
-endif.
+erl_put(A, B, C) ->
+ maps:put(A, B, C).
+
+put(Map, Key, Value) ->
+ erl_put(Key, Value, Map).
+
+-ifdef(TEST).
+put_test() ->
+ (fun(Capture1) ->
+ expect:equal(Capture1,
+ from_list([{<<"a">>, 0}, {<<"b">>, 1}, {<<"c">>, 2}]))
+ end)((fun(Capture1) ->
+ put(Capture1, <<"c">>, 2)
+ end)((fun(Capture1) ->
+ put(Capture1, <<"b">>, 1)
+ end)((fun(Capture1) -> put(Capture1, <<"a">>, 0) end)(new())))).
+-endif.
+
erl_map_values(A, B) ->
maps:map(A, B).
@@ -47,7 +93,7 @@ map_values(Map, Fun) ->
-ifdef(TEST).
map_values_test() ->
(fun(Capture1) ->
- expect:equal(Capture1, from_list([{1, 0}, {2, 3}, {3, 5}]))
+ expect:equal(Capture1, from_list([{1, 1}, {2, 3}, {3, 5}]))
end)((fun(Capture1) ->
map_values(Capture1, fun(K, V) -> K + V end)
end)(from_list([{1, 0}, {2, 1}, {3, 2}]))).
@@ -77,4 +123,4 @@ erl_filter(A, B) ->
maps:filter(A, B).
filter(Map, Fun) ->
- filter(Fun, Map).
+ erl_filter(Fun, Map).
diff --git a/gen/order.erl b/gen/order.erl
index edf63a7..69f0eb8 100644
--- a/gen/order.erl
+++ b/gen/order.erl
@@ -1,4 +1,5 @@
-module(order).
+-compile(no_auto_import).
-include_lib("eunit/include/eunit.hrl").
-export([reverse/1, to_int/1, compare/2, max/2, min/2]).
diff --git a/gen/result.erl b/gen/result.erl
index 9bbf1e1..101b56a 100644
--- a/gen/result.erl
+++ b/gen/result.erl
@@ -1,4 +1,5 @@
-module(result).
+-compile(no_auto_import).
-include_lib("eunit/include/eunit.hrl").
-export([is_ok/1, is_error/1, map/2, map_error/2, flatten/1, flat_map/2, unwrap/2]).