aboutsummaryrefslogtreecommitdiff
path: root/src/gleam_stdlib.js
diff options
context:
space:
mode:
authorLouis Pilfold <louis@lpil.uk>2021-07-21 20:14:08 +0100
committerLouis Pilfold <louis@lpil.uk>2021-07-21 20:14:08 +0100
commit19cd3b5118eb417515e48c4fd3cfa33ede15f860 (patch)
treef2df979533c165ff19984e4c83275508291567d7 /src/gleam_stdlib.js
parent82309771c53d6cff95aed403496b5c13584148eb (diff)
downloadgleam_stdlib-19cd3b5118eb417515e48c4fd3cfa33ede15f860.tar.gz
gleam_stdlib-19cd3b5118eb417515e48c4fd3cfa33ede15f860.zip
Convert more string functions
Diffstat (limited to 'src/gleam_stdlib.js')
-rw-r--r--src/gleam_stdlib.js44
1 files changed, 41 insertions, 3 deletions
diff --git a/src/gleam_stdlib.js b/src/gleam_stdlib.js
index 15c8a09..30a2585 100644
--- a/src/gleam_stdlib.js
+++ b/src/gleam_stdlib.js
@@ -1,3 +1,11 @@
+function to_list(array) {
+ let list = [];
+ for (let item of array.reverse()) {
+ list = [item, list];
+ }
+ return list;
+}
+
export function identity(x) {
return x;
}
@@ -10,7 +18,7 @@ export function parse_int(value) {
}
}
-export function int_to_string(int) {
+export function to_string(int) {
return int.toString();
}
@@ -38,10 +46,40 @@ export function string_length(string) {
}
}
-export function string_lowercase(string) {
+export function lowercase(string) {
return string.toLowerCase();
}
-export function string_uppercase(string) {
+export function uppercase(string) {
return string.toUpperCase();
}
+
+export function less_than(a, b) {
+ return a < b;
+}
+
+export function add(a, b) {
+ return a + b;
+}
+
+export function equal(a, b) {
+ return a === b;
+}
+
+export function split(xs, pattern) {
+ return to_list(xs.split(pattern));
+}
+
+export function join(xs) {
+ return xs.flat().join("");
+}
+
+export function byte_size(data) {
+ if (typeof Blob === "function") {
+ return new Blob([data]).size;
+ } else if (typeof Buffer === "function") {
+ return Buffer.byteLength(data);
+ } else {
+ return data.length;
+ }
+}