diff options
Diffstat (limited to 'gen')
-rw-r--r-- | gen/src/float.erl | 5 | ||||
-rw-r--r-- | gen/test/float_test.erl | 10 |
2 files changed, 13 insertions, 2 deletions
diff --git a/gen/src/float.erl b/gen/src/float.erl index f9e4064..cd1385c 100644 --- a/gen/src/float.erl +++ b/gen/src/float.erl @@ -1,7 +1,7 @@ -module(float). -compile(no_auto_import). --export([parse/1, to_string/1, ceiling/1, floor/1, round/1]). +-export([parse/1, to_string/1, ceiling/1, floor/1, round/1, truncate/1]). parse(A) -> gleam__stdlib:parse_float(A). @@ -17,3 +17,6 @@ floor(A) -> round(A) -> erlang:round(A). + +truncate(A) -> + erlang:trunc(A). diff --git a/gen/test/float_test.erl b/gen/test/float_test.erl index ecd210b..36eb3ad 100644 --- a/gen/test/float_test.erl +++ b/gen/test/float_test.erl @@ -1,7 +1,7 @@ -module(float_test). -compile(no_auto_import). --export([parse_test/0, to_string_test/0, ceiling_test/0, floor_test/0, round_test/0]). +-export([parse_test/0, to_string_test/0, ceiling_test/0, floor_test/0, round_test/0, truncate_test/0]). parse_test() -> expect:equal(float:parse(<<"1.23">>), {ok, 1.23}), @@ -32,3 +32,11 @@ round_test() -> expect:equal(float:round(8.5), 9), expect:equal(float:round(-8.1), -8), expect:equal(float:round(-7.5), -8). + +truncate_test() -> + expect:equal(float:truncate(8.1), 8), + expect:equal(float:truncate(8.4), 8), + expect:equal(float:truncate(8.499), 8), + expect:equal(float:truncate(8.5), 8), + expect:equal(float:truncate(-8.1), -8), + expect:equal(float:truncate(-7.5), -7). |