diff options
author | MainShayne233 <shaynetremblay@hotmail.com> | 2019-04-07 00:24:24 -0400 |
---|---|---|
committer | Louis Pilfold <louis@lpil.uk> | 2019-04-07 08:54:53 +0000 |
commit | 8cf56dae7043c25b152e10aa02d0a7ead7454380 (patch) | |
tree | 150e46aab0d7741e0eec8c7e31d80d658939366f /src/str.gleam | |
parent | 673e9e907093bd448db3b108b3d654c13cdc66f7 (diff) | |
download | gleam_stdlib-8cf56dae7043c25b152e10aa02d0a7ead7454380.tar.gz gleam_stdlib-8cf56dae7043c25b152e10aa02d0a7ead7454380.zip |
Implement parse_float
Diffstat (limited to 'src/str.gleam')
-rw-r--r-- | src/str.gleam | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/str.gleam b/src/str.gleam index 6ee8235..bd027a1 100644 --- a/src/str.gleam +++ b/src/str.gleam @@ -121,6 +121,34 @@ test parse_int { |> expect:equal(_, Error(ParseError)) } +pub external fn parse_float(String) -> Result(Float, ParseError) = "gleam__stdlib" "parse_float"; + +test parse_float { + "1.23" + |> parse_float + |> expect:equal(_, Ok(1.23)) + + "5.0" + |> parse_float + |> expect:equal(_, Ok(5.0)) + + "0.123456789" + |> parse_float + |> expect:equal(_, Ok(0.123456789)) + + "" + |> parse_float + |> expect:equal(_, Error(ParseError)) + + "what" + |> parse_float + |> expect:equal(_, Error(ParseError)) + + "1" + |> parse_float + |> expect:equal(_, Error(ParseError)) +} + pub external fn base_from_int(Int, Int) -> String = "erlang" "integer_to_binary" test base_from_int { |