aboutsummaryrefslogtreecommitdiff
path: root/src/gleam_stdlib.mjs
diff options
context:
space:
mode:
Diffstat (limited to 'src/gleam_stdlib.mjs')
-rw-r--r--src/gleam_stdlib.mjs5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/gleam_stdlib.mjs b/src/gleam_stdlib.mjs
index 50ebb46..1c0754f 100644
--- a/src/gleam_stdlib.mjs
+++ b/src/gleam_stdlib.mjs
@@ -156,9 +156,12 @@ export function graphemes(string) {
}
}
+let segmenter = undefined;
+
function graphemes_iterator(string) {
if (globalThis.Intl && Intl.Segmenter) {
- return new Intl.Segmenter().segment(string)[Symbol.iterator]();
+ segmenter ??= new Intl.Segmenter();
+ return segmenter.segment(string)[Symbol.iterator]();
}
}