package camomile
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=f0a419b0affc36500f83b086ffaa36c545560cee5d57e84b729e8f851b3d1632
sha512=7586422e68779476206027c6ebbe19b677fbe459153221f7c952c7fae374c5c8232249cb76fdb1f482069707aa1580be827cd39693906142988268b7f0e7f6d0
doc/camomile.library/CamomileLibrary/UCS4/index.html
Module CamomileLibrary.UCS4
UCS4 encoded string. The type is the bigarray of 32-bit integers. Bigarray.cma or Bigarray.cmxa must be linked when this module is used.
type t = (int32, Bigarray.int32_elt, Bigarray.c_layout) Bigarray.Array1.t
val validate : t -> unit
validate s
If s
is valid UCS4 then successes otherwise raises Malformed_code
. Other functions assume strings are valid UCS4, so it is prudent to test their validity for strings from untrusted origins.
All functions below assume strings are valid UCS4. If not, the result is unspecified.
init len f
returns a new string which contains len
Unicode characters. The i-th Unicode character is initialised by f i
val length : t -> int
length s
returns the number of Unicode characters contained in s
Positions in the string represented by the number of characters 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
points the valid position of s
.
compare_aux s i1 i2
returns If i1
is the position located before i2
, a value < 0, If i1
and i2
points the same location, 0, If i1
is the position located after i2
, a value > 0.
next s i
returns the position of the head of the Unicode character located immediately after i
. If i
is a valid position, the function always success. If i
is a valid position and there is no Unicode character after i
, the position outside s
is returned. If i
is not a valid position, the behaviour is undefined.
prev s i
returns the position of the head of the Unicode character located immediately before i
. If i
is a valid position, the function always success. If i
is a valid position and there is no Unicode character before i
, the position outside s
is returned. If i
is not a valid position, the behaviour is undefined.
move s i n
: If n >= 0, returns n
-th Unicode character after i
. If n < 0, returns -n
-th Unicode character before i
. If there is no such character, the result is unspecified.
iter f s
: Apply f
to all Unicode characters in s
. The order of application is same to the order in the Unicode characters in s
.
module Buf : sig ... end
Buffer module for UCS4