diff options
author | Louis Pilfold <louis@lpil.uk> | 2019-04-22 22:33:15 +0000 |
---|---|---|
committer | Louis Pilfold <louis@lpil.uk> | 2019-04-22 22:33:15 +0000 |
commit | 077aaf3468c640b84ff53fc92171292ddae55bf4 (patch) | |
tree | a152edcc2240f053681ca6ba315dfeb9ed8fa793 /src | |
parent | afdabad5cd2df77eb3f309aab9da3d34e36a0b49 (diff) | |
download | gleam_stdlib-077aaf3468c640b84ff53fc92171292ddae55bf4.tar.gz gleam_stdlib-077aaf3468c640b84ff53fc92171292ddae55bf4.zip |
Int and float modules
Diffstat (limited to 'src')
-rw-r--r-- | src/float.gleam | 13 | ||||
-rw-r--r-- | src/int.gleam | 8 | ||||
-rw-r--r-- | src/str.gleam | 14 |
3 files changed, 21 insertions, 14 deletions
diff --git a/src/float.gleam b/src/float.gleam new file mode 100644 index 0000000..2d3ca3c --- /dev/null +++ b/src/float.gleam @@ -0,0 +1,13 @@ +import iodata + +pub enum NotAFloat = + | NotAFloat + +pub external fn parse(String) -> Result(Float, NotAFloat) = + "gleam__stdlib" "parse_float"; + +pub fn to_string(f) { + f + |> iodata:from_float + |> iodata:to_string +} diff --git a/src/int.gleam b/src/int.gleam new file mode 100644 index 0000000..00571de --- /dev/null +++ b/src/int.gleam @@ -0,0 +1,8 @@ +pub enum NotAnInt = + | NotAnInt + +pub external fn parse(String) -> Result(Int, NotAnInt) = "gleam__stdlib" "parse_int"; + +pub external fn to_string(Int) -> String = "erlang" "integer_to_binary" + +pub external fn to_base_string(Int, Int) -> String = "erlang" "integer_to_binary" diff --git a/src/str.gleam b/src/str.gleam index 8a7708b..9a6c3f3 100644 --- a/src/str.gleam +++ b/src/str.gleam @@ -37,17 +37,3 @@ pub fn replace(string, pattern, with) { pub fn append(s1, s2) { iodata:new(s1) |> iodata:append(_, s2) |> iodata:to_string(_) } - -pub external fn from_int(Int) -> String = "erlang" "integer_to_binary" - -pub external fn parse_int(String) -> Result(Int, ParseError) = "gleam__stdlib" "parse_int"; - -pub external fn parse_float(String) -> Result(Float, ParseError) = "gleam__stdlib" "parse_float"; - -pub external fn base_from_int(Int, Int) -> String = "erlang" "integer_to_binary" - -pub fn from_float(f) { - f - |> iodata:from_float - |> iodata:to_string -} |