diff options
author | Louis Pilfold <louis@lpil.uk> | 2020-03-05 11:48:13 +0000 |
---|---|---|
committer | Louis Pilfold <louis@lpil.uk> | 2020-03-05 11:48:13 +0000 |
commit | bec6ab98b6c139f3074028e71707208d51eb3f9b (patch) | |
tree | bef66ede3737089b3db8969845347f9ef4c75946 | |
parent | f11cb990283fbd47b418a94c6840efe03954d28e (diff) | |
download | gleam_stdlib-bec6ab98b6c139f3074028e71707208d51eb3f9b.tar.gz gleam_stdlib-bec6ab98b6c139f3074028e71707208d51eb3f9b.zip |
int.is_odd
-rw-r--r-- | gen/src/gleam@int.erl | 5 | ||||
-rw-r--r-- | gen/test/gleam@int_test.erl | 11 | ||||
-rw-r--r-- | src/gleam/int.gleam | 4 | ||||
-rw-r--r-- | test/gleam/int_test.gleam | 23 |
4 files changed, 41 insertions, 2 deletions
diff --git a/gen/src/gleam@int.erl b/gen/src/gleam@int.erl index 4e2d785..f256d0f 100644 --- a/gen/src/gleam@int.erl +++ b/gen/src/gleam@int.erl @@ -1,7 +1,7 @@ -module(gleam@int). -compile(no_auto_import). --export([parse/1, to_string/1, to_base_string/2, compare/2, min/2, max/2, is_even/1]). +-export([parse/1, to_string/1, to_base_string/2, compare/2, min/2, max/2, is_even/1, is_odd/1]). parse(A) -> gleam_stdlib:parse_int(A). @@ -47,3 +47,6 @@ max(A, B) -> is_even(X) -> X rem 2 =:= 0. + +is_odd(X) -> + X rem 2 /= 0. diff --git a/gen/test/gleam@int_test.erl b/gen/test/gleam@int_test.erl index 691074a..83f946b 100644 --- a/gen/test/gleam@int_test.erl +++ b/gen/test/gleam@int_test.erl @@ -1,7 +1,7 @@ -module(gleam@int_test). -compile(no_auto_import). --export([to_string/0, parse/0, to_base_string/0, compare_test/0, min_test/0, max_test/0, is_even_test/0]). +-export([to_string/0, parse/0, to_base_string/0, compare_test/0, min_test/0, max_test/0, is_even_test/0, is_odd_test/0]). to_string() -> gleam@expect:equal(gleam@int:to_string(123), <<"123">>), @@ -52,3 +52,12 @@ is_even_test() -> gleam@expect:false(gleam@int:is_even(1)), gleam@expect:false(gleam@int:is_even(-3)), gleam@expect:false(gleam@int:is_even(10005)). + +is_odd_test() -> + gleam@expect:false(gleam@int:is_odd(0)), + gleam@expect:false(gleam@int:is_odd(2)), + gleam@expect:false(gleam@int:is_odd(-2)), + gleam@expect:false(gleam@int:is_odd(10006)), + gleam@expect:true(gleam@int:is_odd(1)), + gleam@expect:true(gleam@int:is_odd(-3)), + gleam@expect:true(gleam@int:is_odd(10005)). diff --git a/src/gleam/int.gleam b/src/gleam/int.gleam index 6a93e2f..9ff5328 100644 --- a/src/gleam/int.gleam +++ b/src/gleam/int.gleam @@ -35,3 +35,7 @@ pub fn max(a: Int, b: Int) -> Int { pub fn is_even(x: Int) -> Bool { x % 2 == 0 } + +pub fn is_odd(x: Int) -> Bool { + x % 2 != 0 +} diff --git a/test/gleam/int_test.gleam b/test/gleam/int_test.gleam index be02072..98428d1 100644 --- a/test/gleam/int_test.gleam +++ b/test/gleam/int_test.gleam @@ -134,3 +134,26 @@ pub fn is_even_test() { int.is_even(10005) |> expect.false } + +pub fn is_odd_test() { + int.is_odd(0) + |> expect.false + + int.is_odd(2) + |> expect.false + + int.is_odd(-2) + |> expect.false + + int.is_odd(10006) + |> expect.false + + int.is_odd(1) + |> expect.true + + int.is_odd(-3) + |> expect.true + + int.is_odd(10005) + |> expect.true +} |