aboutsummaryrefslogtreecommitdiff
path: root/gen
diff options
context:
space:
mode:
authorMainShayne233 <shaynetremblay@hotmail.com>2019-04-07 00:24:24 -0400
committerLouis Pilfold <louis@lpil.uk>2019-04-07 08:54:53 +0000
commit8cf56dae7043c25b152e10aa02d0a7ead7454380 (patch)
tree150e46aab0d7741e0eec8c7e31d80d658939366f /gen
parent673e9e907093bd448db3b108b3d654c13cdc66f7 (diff)
downloadgleam_stdlib-8cf56dae7043c25b152e10aa02d0a7ead7454380.tar.gz
gleam_stdlib-8cf56dae7043c25b152e10aa02d0a7ead7454380.zip
Implement parse_float
Diffstat (limited to 'gen')
-rw-r--r--gen/str.erl15
1 files changed, 14 insertions, 1 deletions
diff --git a/gen/str.erl b/gen/str.erl
index 3b1497e..b403187 100644
--- a/gen/str.erl
+++ b/gen/str.erl
@@ -2,7 +2,7 @@
-compile(no_auto_import).
-include_lib("eunit/include/eunit.hrl").
--export([length/1, lowercase/1, uppercase/1, reverse/1, split/2, replace/3, from_int/1, parse_int/1, base_from_int/2, from_float/1]).
+-export([length/1, lowercase/1, uppercase/1, reverse/1, split/2, replace/3, from_int/1, parse_int/1, parse_float/1, base_from_int/2, from_float/1]).
length(A) ->
string:length(A).
@@ -81,6 +81,19 @@ parse_int_test() ->
expect:equal(parse_int(<<"1.23">>), {error, parse_error}).
-endif.
+parse_float(A) ->
+ gleam__stdlib:parse_float(A).
+
+-ifdef(TEST).
+parse_float_test() ->
+ expect:equal(parse_float(<<"1.23">>), {ok, 1.23}),
+ expect:equal(parse_float(<<"5.0">>), {ok, 5.0}),
+ expect:equal(parse_float(<<"0.123456789">>), {ok, 0.123456789}),
+ expect:equal(parse_float(<<"">>), {error, parse_error}),
+ expect:equal(parse_float(<<"what">>), {error, parse_error}),
+ expect:equal(parse_float(<<"1">>), {error, parse_error}).
+-endif.
+
base_from_int(A, B) ->
erlang:integer_to_binary(A, B).