Need to work in unicode codepoints? Tired of UTF-8's silliness? You came to the right place!
length : String -> Basics.Int
Calculates the number UTF-32 characters in a String
.
import String.UTF32 as UTF32
String.length "💩"
--> 2
UTF32.length "💩"
--> 1
toBytes : String -> List Basics.Int
Converts a String to a list of unicode codepoints. The inverse of toString
import String.UTF32 as UTF32
UTF32.toBytes "hello"
--> [ 0x68, 0x65, 0x6C, 0x6C, 0x6F ]
UTF32.toBytes "💩"
--> [ 0x0001F4A9 ]
toString : List Basics.Int -> String
Build a String
from a list of unicode codepoints.
import String.UTF32 as UTF32
UTF32.toString [ 0x68, 0x65, 0x6C, 0x6C, 0x6F ]
--> "hello"
UTF32.toString [ 0x0001F4A9 ]
--> "💩"
foldl : (Basics.Int -> a -> a) -> a -> String -> a
Fold over a string, left to right, accumulating unicode codepoints.