diff options
author | Erik Terpstra <39518+eterps@users.noreply.github.com> | 2020-05-11 19:20:14 +0200 |
---|---|---|
committer | Louis Pilfold <louis@lpil.uk> | 2020-05-12 11:05:04 +0100 |
commit | c84aa94fa4b453abca21c365ec511a4ef2c3d8c1 (patch) | |
tree | 27be4c3d8462a19e78448771c9254330ab92db0e | |
parent | 16d2811b1dd64d59e1d73cc5cc88ad7250651362 (diff) | |
download | gleam_stdlib-c84aa94fa4b453abca21c365ec511a4ef2c3d8c1.tar.gz gleam_stdlib-c84aa94fa4b453abca21c365ec511a4ef2c3d8c1.zip |
Update string.trim to use Direction type and call external string.trim within the same file
-rw-r--r-- | gen/src/gleam@string.erl | 8 | ||||
-rw-r--r-- | src/gleam/string.gleam | 10 | ||||
-rw-r--r-- | src/gleam_stdlib.erl | 4 |
3 files changed, 12 insertions, 10 deletions
diff --git a/gen/src/gleam@string.erl b/gen/src/gleam@string.erl index 0a4b505..8312797 100644 --- a/gen/src/gleam@string.erl +++ b/gen/src/gleam@string.erl @@ -1,7 +1,7 @@ -module(gleam@string). -compile(no_auto_import). --export([is_empty/1, length/1, reverse/1, replace/3, lowercase/1, uppercase/1, compare/2, contains/2, split/2, append/2, concat/1, repeat/2, join/2, erl_trim/1, trim/1]). +-export([is_empty/1, length/1, reverse/1, replace/3, lowercase/1, uppercase/1, compare/2, contains/2, split/2, append/2, concat/1, repeat/2, join/2, trim/1]). is_empty(Str) -> Str =:= <<""/utf8>>. @@ -63,8 +63,8 @@ join(Strings, Separator) -> gleam@iodata:from_strings(gleam@list:intersperse(Strings, Separator)) ). -erl_trim(A) -> - gleam_stdlib:string_trim(A). +erl_trim(A, B) -> + string:trim(A, B). trim(String) -> - erl_trim(String). + erl_trim(String, both). diff --git a/src/gleam/string.gleam b/src/gleam/string.gleam index 91d54b4..1dd484a 100644 --- a/src/gleam/string.gleam +++ b/src/gleam/string.gleam @@ -310,8 +310,12 @@ pub fn join(strings: List(String), with separator: String) -> String { // // pub fn pad_right(string: String, to size: Int, with: String) {} -pub external fn erl_trim(String) -> String = - "gleam_stdlib" "string_trim" +type Direction { + Both +} + +external fn erl_trim(String, Direction) -> String = + "string" "trim" /// Get rid of whitespace on both sides of a String. /// @@ -321,7 +325,7 @@ pub external fn erl_trim(String) -> String = /// /// pub fn trim(string: String) -> String { - erl_trim(string) + erl_trim(string, Both) } // TODO diff --git a/src/gleam_stdlib.erl b/src/gleam_stdlib.erl index 54fcdaa..49a7e2a 100644 --- a/src/gleam_stdlib.erl +++ b/src/gleam_stdlib.erl @@ -7,7 +7,7 @@ iodata_append/2, iodata_prepend/2, identity/1, decode_int/1, decode_string/1, decode_bool/1, decode_float/1, decode_thunk/1, decode_atom/1, decode_list/1, decode_field/2, decode_element/2, parse_int/1, parse_float/1, compare_strings/2, - string_contains/2, string_trim/1]). + string_contains/2]). should_equal(Actual, Expected) -> ?assertEqual(Expected, Actual). should_not_equal(Actual, Expected) -> ?assertNotEqual(Expected, Actual). @@ -127,5 +127,3 @@ string_contains(Haystack, Needle) -> _ -> true end. - -string_trim(String) -> string:trim(String, both). |