package batteries
Install
dune-project
Dependency
Authors
Maintainers
Sources
md5=ea26b5c72e6731e59d856626049cca4d
sha512=55975b62c26f6db77433a3ac31f97af609fc6789bb62ac38b267249c78fd44ff37fe81901f1cf560857b9493a6046dd37b0d1c0234c66bd59e52843aac3ce6cb
doc/batteries.unthreaded/BatUTF8/index.html
Module BatUTF8Source
UTF-8 encoded Unicode strings. The type is normal string.
UTF-8 encoded Unicode strings. The type is normal string.
validate s successes if s is valid UTF-8, otherwise raises Malformed_code. Other functions assume strings are valid UTF-8, so it is prudent to test their validity for strings from untrusted origins.
get s n returns n-th Unicode character of s. The call requires O(n)-time.
init len f returns a new string which contains len Unicode characters. The i-th Unicode character is initialized by f i
Positions in the string represented by the number of bytes from the head. The location of the first character is 0
nth s n returns the position of the n-th Unicode character. The call requires O(n)-time
look s i returns the Unicode character of the location i in the string s.
out_of_range s i tests whether i is a position inside of s.
compare_index s i1 i2 returns a value < 0 if i1 is the position located before i2, 0 if i1 and i2 points the same location, a value > 0 if i1 is the position located after i2.
next s i returns the position of the head of the Unicode character located immediately after i. If i is inside of s, the function always successes. If i is inside of s and there is no Unicode character after i, the position outside s is returned. If i is not inside of s, the behaviour is unspecified.
prev s i returns the position of the head of the Unicode character located immediately before i. If i is inside of s, the function always successes. If i is inside of s and there is no Unicode character before i, the position outside s is returned. If i is not inside of s, the behaviour is unspecified.
move s i n returns n-th Unicode character after i if n >= 0, n-th Unicode character before i if n < 0. If there is no such character, the result is unspecified.
iter f s applies f to all Unicode characters in s. The order of application is same to the order of the Unicode characters in s.
Code point comparison by the lexicographic order. compare s1 s2 returns a positive integer if s1 > s2, 0 if s1 = s2, a negative integer if s1 < s2.