`sig
module ConfigInt :
sig
module type Type =
sig
val datadir : string
val charmapdir : string
val unimapdir : string
val localedir : string
end
end
module DefaultConfig : ConfigInt.Type
module OOChannel :
sig
class type ['a] obj_input_channel =
object method close_in : unit -> unit method get : unit -> 'a end
class type ['a] obj_output_channel =
object
method close_out : unit -> unit
method flush : unit -> unit
method put : 'a -> unit
end
class ['a] channel_of_stream : 'a Stream.t -> ['a] obj_input_channel
val stream_of_channel :
'a #CamomileLibrary.OOChannel.obj_input_channel -> 'a Stream.t
class type char_input_channel =
object
method close_in : unit -> unit
method input : string -> int -> int -> int
end
class type char_output_channel =
object
method close_out : unit -> unit
method flush : unit -> unit
method output : string -> int -> int -> int
end
class char_input_channel_of :
char #CamomileLibrary.OOChannel.obj_input_channel ->
char_input_channel
class char_obj_input_channel_of :
CamomileLibrary.OOChannel.char_input_channel ->
[char] obj_input_channel
class char_output_channel_of :
char #CamomileLibrary.OOChannel.obj_output_channel ->
char_output_channel
class char_obj_output_channel_of :
CamomileLibrary.OOChannel.char_output_channel ->
[char] obj_output_channel
class of_in_channel : Pervasives.in_channel -> char_input_channel
class of_out_channel : Pervasives.out_channel -> char_output_channel
end
module UChar :
sig
type t
exception Out_of_range
val char_of : CamomileLibrary.UChar.t -> char
val of_char : char -> CamomileLibrary.UChar.t
val code : CamomileLibrary.UChar.t -> int
val chr : int -> CamomileLibrary.UChar.t
external uint_code : CamomileLibrary.UChar.t -> int = "%identity"
val chr_of_uint : int -> CamomileLibrary.UChar.t
val eq : CamomileLibrary.UChar.t -> CamomileLibrary.UChar.t -> bool
val compare : CamomileLibrary.UChar.t -> CamomileLibrary.UChar.t -> int
type uchar = CamomileLibrary.UChar.t
val int_of : CamomileLibrary.UChar.uchar -> int
val of_int : int -> CamomileLibrary.UChar.uchar
end
module USet :
sig
type t
val empty : CamomileLibrary.USet.t
val is_empty : CamomileLibrary.USet.t -> bool
val mem : CamomileLibrary.UChar.t -> CamomileLibrary.USet.t -> bool
val add :
CamomileLibrary.UChar.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val add_range :
CamomileLibrary.UChar.t ->
CamomileLibrary.UChar.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val singleton : CamomileLibrary.UChar.t -> CamomileLibrary.USet.t
val remove :
CamomileLibrary.UChar.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val remove_range :
CamomileLibrary.UChar.t ->
CamomileLibrary.UChar.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val union :
CamomileLibrary.USet.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val inter :
CamomileLibrary.USet.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val diff :
CamomileLibrary.USet.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val compl : CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val compare : CamomileLibrary.USet.t -> CamomileLibrary.USet.t -> int
val equal : CamomileLibrary.USet.t -> CamomileLibrary.USet.t -> bool
val subset : CamomileLibrary.USet.t -> CamomileLibrary.USet.t -> bool
val from :
CamomileLibrary.UChar.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val after :
CamomileLibrary.UChar.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val until :
CamomileLibrary.UChar.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val before :
CamomileLibrary.UChar.t ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val iter :
(CamomileLibrary.UChar.t -> unit) -> CamomileLibrary.USet.t -> unit
val iter_range :
(CamomileLibrary.UChar.t -> CamomileLibrary.UChar.t -> unit) ->
CamomileLibrary.USet.t -> unit
val fold :
(CamomileLibrary.UChar.t -> 'a -> 'a) ->
CamomileLibrary.USet.t -> 'a -> 'a
val fold_range :
(CamomileLibrary.UChar.t -> CamomileLibrary.UChar.t -> 'a -> 'a) ->
CamomileLibrary.USet.t -> 'a -> 'a
val for_all :
(CamomileLibrary.UChar.t -> bool) -> CamomileLibrary.USet.t -> bool
val exists :
(CamomileLibrary.UChar.t -> bool) -> CamomileLibrary.USet.t -> bool
val filter :
(CamomileLibrary.UChar.t -> bool) ->
CamomileLibrary.USet.t -> CamomileLibrary.USet.t
val partition :
(CamomileLibrary.UChar.t -> bool) ->
CamomileLibrary.USet.t ->
CamomileLibrary.USet.t * CamomileLibrary.USet.t
val cardinal : CamomileLibrary.USet.t -> int
val elements : CamomileLibrary.USet.t -> CamomileLibrary.UChar.t list
val ranges :
CamomileLibrary.USet.t ->
(CamomileLibrary.UChar.t * CamomileLibrary.UChar.t) list
val min_elt : CamomileLibrary.USet.t -> CamomileLibrary.UChar.t
val max_elt : CamomileLibrary.USet.t -> CamomileLibrary.UChar.t
val choose : CamomileLibrary.USet.t -> CamomileLibrary.UChar.t
val uset_of_iset : ISet.t -> CamomileLibrary.USet.t
val iset_of_uset : CamomileLibrary.USet.t -> ISet.t
end
module UMap :
sig
type 'a t
val empty : 'a CamomileLibrary.UMap.t
val is_empty : 'a CamomileLibrary.UMap.t -> bool
val add :
?eq:('a -> 'a -> bool) ->
CamomileLibrary.UChar.t ->
'a -> 'a CamomileLibrary.UMap.t -> 'a CamomileLibrary.UMap.t
val add_range :
?eq:('a -> 'a -> bool) ->
CamomileLibrary.UChar.t ->
CamomileLibrary.UChar.t ->
'a -> 'a CamomileLibrary.UMap.t -> 'a CamomileLibrary.UMap.t
val find : CamomileLibrary.UChar.t -> 'a CamomileLibrary.UMap.t -> 'a
val remove :
CamomileLibrary.UChar.t ->
'a CamomileLibrary.UMap.t -> 'a CamomileLibrary.UMap.t
val remove_range :
CamomileLibrary.UChar.t ->
CamomileLibrary.UChar.t ->
'a CamomileLibrary.UMap.t -> 'a CamomileLibrary.UMap.t
val from :
CamomileLibrary.UChar.t ->
'a CamomileLibrary.UMap.t -> 'a CamomileLibrary.UMap.t
val after :
CamomileLibrary.UChar.t ->
'a CamomileLibrary.UMap.t -> 'a CamomileLibrary.UMap.t
val until :
CamomileLibrary.UChar.t ->
'a CamomileLibrary.UMap.t -> 'a CamomileLibrary.UMap.t
val before :
CamomileLibrary.UChar.t ->
'a CamomileLibrary.UMap.t -> 'a CamomileLibrary.UMap.t
val mem : CamomileLibrary.UChar.t -> 'a CamomileLibrary.UMap.t -> bool
val iter :
(CamomileLibrary.UChar.t -> 'a -> unit) ->
'a CamomileLibrary.UMap.t -> unit
val iter_range :
(CamomileLibrary.UChar.t -> CamomileLibrary.UChar.t -> 'a -> unit) ->
'a CamomileLibrary.UMap.t -> unit
val map :
?eq:('b -> 'b -> bool) ->
('a -> 'b) -> 'a CamomileLibrary.UMap.t -> 'b CamomileLibrary.UMap.t
val mapi :
?eq:('b -> 'b -> bool) ->
(CamomileLibrary.UChar.t -> 'a -> 'b) ->
'a CamomileLibrary.UMap.t -> 'b CamomileLibrary.UMap.t
val fold :
(CamomileLibrary.UChar.t -> 'b -> 'a -> 'a) ->
'b CamomileLibrary.UMap.t -> 'a -> 'a
val fold_range :
(CamomileLibrary.UChar.t -> CamomileLibrary.UChar.t -> 'b -> 'a -> 'a) ->
'b CamomileLibrary.UMap.t -> 'a -> 'a
val set_to_map :
CamomileLibrary.USet.t -> 'a -> 'a CamomileLibrary.UMap.t
val domain : 'a CamomileLibrary.UMap.t -> CamomileLibrary.USet.t
val map_to_set :
('a -> bool) -> 'a CamomileLibrary.UMap.t -> CamomileLibrary.USet.t
val umap_of_imap : 'a IMap.t -> 'a CamomileLibrary.UMap.t
val imap_of_umap : 'a CamomileLibrary.UMap.t -> 'a IMap.t
end
module UCharTbl :
sig
type 'a tbl
type 'a t = 'a CamomileLibrary.UCharTbl.tbl
val get :
'a CamomileLibrary.UCharTbl.tbl -> CamomileLibrary.UChar.t -> 'a
module type Type =
sig
type elt
type t =
CamomileLibrary.UCharTbl.Type.elt CamomileLibrary.UCharTbl.tbl
val get :
CamomileLibrary.UCharTbl.Type.elt CamomileLibrary.UCharTbl.tbl ->
CamomileLibrary.UChar.t -> CamomileLibrary.UCharTbl.Type.elt
val of_map :
CamomileLibrary.UCharTbl.Type.elt ->
CamomileLibrary.UCharTbl.Type.elt CamomileLibrary.UMap.t ->
CamomileLibrary.UCharTbl.Type.t
end
module Make :
functor (H : Hashtbl.HashedType) ->
sig
type elt = H.t
type t = elt tbl
val get : elt tbl -> UChar.t -> elt
val of_map : elt -> elt UMap.t -> t
end
module Bool :
sig
type t
val get :
CamomileLibrary.UCharTbl.Bool.t ->
CamomileLibrary.UChar.t -> bool
val of_set :
CamomileLibrary.USet.t -> CamomileLibrary.UCharTbl.Bool.t
end
module Bits :
sig
type t
val of_map :
int ->
int CamomileLibrary.UMap.t -> CamomileLibrary.UCharTbl.Bits.t
val get :
CamomileLibrary.UCharTbl.Bits.t -> CamomileLibrary.UChar.t -> int
end
module Bytes :
sig
type t
val of_map :
int ->
int CamomileLibrary.UMap.t -> CamomileLibrary.UCharTbl.Bytes.t
val get :
CamomileLibrary.UCharTbl.Bytes.t ->
CamomileLibrary.UChar.t -> int
end
module Char :
sig
type t
val of_map :
char ->
char CamomileLibrary.UMap.t -> CamomileLibrary.UCharTbl.Char.t
val get :
CamomileLibrary.UCharTbl.Char.t ->
CamomileLibrary.UChar.t -> char
end
end
module UnicodeString :
sig
module type Type =
sig
type t
val get :
CamomileLibrary.UnicodeString.Type.t ->
int -> CamomileLibrary.UChar.t
val init :
int ->
(int -> CamomileLibrary.UChar.t) ->
CamomileLibrary.UnicodeString.Type.t
val length : CamomileLibrary.UnicodeString.Type.t -> int
type index
val look :
CamomileLibrary.UnicodeString.Type.t ->
CamomileLibrary.UnicodeString.Type.index ->
CamomileLibrary.UChar.t
val nth :
CamomileLibrary.UnicodeString.Type.t ->
int -> CamomileLibrary.UnicodeString.Type.index
val next :
CamomileLibrary.UnicodeString.Type.t ->
CamomileLibrary.UnicodeString.Type.index ->
CamomileLibrary.UnicodeString.Type.index
val prev :
CamomileLibrary.UnicodeString.Type.t ->
CamomileLibrary.UnicodeString.Type.index ->
CamomileLibrary.UnicodeString.Type.index
val out_of_range :
CamomileLibrary.UnicodeString.Type.t ->
CamomileLibrary.UnicodeString.Type.index -> bool
val iter :
(CamomileLibrary.UChar.t -> unit) ->
CamomileLibrary.UnicodeString.Type.t -> unit
val compare :
CamomileLibrary.UnicodeString.Type.t ->
CamomileLibrary.UnicodeString.Type.t -> int
val first :
CamomileLibrary.UnicodeString.Type.t ->
CamomileLibrary.UnicodeString.Type.index
val last :
CamomileLibrary.UnicodeString.Type.t ->
CamomileLibrary.UnicodeString.Type.index
val move :
CamomileLibrary.UnicodeString.Type.t ->
CamomileLibrary.UnicodeString.Type.index ->
int -> CamomileLibrary.UnicodeString.Type.index
val compare_index :
CamomileLibrary.UnicodeString.Type.t ->
CamomileLibrary.UnicodeString.Type.index ->
CamomileLibrary.UnicodeString.Type.index -> int
module Buf :
sig
type buf
val create : int -> CamomileLibrary.UnicodeString.Type.Buf.buf
val contents :
CamomileLibrary.UnicodeString.Type.Buf.buf ->
CamomileLibrary.UnicodeString.Type.t
val clear : CamomileLibrary.UnicodeString.Type.Buf.buf -> unit
val reset : CamomileLibrary.UnicodeString.Type.Buf.buf -> unit
val add_char :
CamomileLibrary.UnicodeString.Type.Buf.buf ->
CamomileLibrary.UChar.t -> unit
val add_string :
CamomileLibrary.UnicodeString.Type.Buf.buf ->
CamomileLibrary.UnicodeString.Type.t -> unit
val add_buffer :
CamomileLibrary.UnicodeString.Type.Buf.buf ->
CamomileLibrary.UnicodeString.Type.Buf.buf -> unit
end
end
end
module UText :
sig
type mutability = [ `Immutable | `Mutable ]
type 'a text
type utext = [ `Immutable ] CamomileLibrary.UText.text
type ustring = [ `Mutable ] CamomileLibrary.UText.text
type t = CamomileLibrary.UText.utext
val utext_of_ustring :
CamomileLibrary.UText.ustring -> CamomileLibrary.UText.utext
val ustring_of_utext :
CamomileLibrary.UText.utext -> CamomileLibrary.UText.ustring
val get :
'a CamomileLibrary.UText.text -> int -> CamomileLibrary.UChar.t
val set :
CamomileLibrary.UText.ustring ->
int -> CamomileLibrary.UChar.t -> unit
type index
val look :
'a CamomileLibrary.UText.text ->
CamomileLibrary.UText.index -> CamomileLibrary.UChar.t
val nth :
'a CamomileLibrary.UText.text -> int -> CamomileLibrary.UText.index
val first :
'a CamomileLibrary.UText.text -> CamomileLibrary.UText.index
val last : 'a CamomileLibrary.UText.text -> CamomileLibrary.UText.index
val out_of_range :
'a CamomileLibrary.UText.text -> CamomileLibrary.UText.index -> bool
val compare_index :
'a CamomileLibrary.UText.text ->
CamomileLibrary.UText.index -> CamomileLibrary.UText.index -> int
val next :
'a CamomileLibrary.UText.text ->
CamomileLibrary.UText.index -> CamomileLibrary.UText.index
val prev :
'a CamomileLibrary.UText.text ->
CamomileLibrary.UText.index -> CamomileLibrary.UText.index
val move :
'a CamomileLibrary.UText.text ->
CamomileLibrary.UText.index -> int -> CamomileLibrary.UText.index
val length : 'a CamomileLibrary.UText.text -> int
val of_string : string -> CamomileLibrary.UText.utext
val init :
int ->
(int -> CamomileLibrary.UChar.t) -> CamomileLibrary.UText.utext
val init_ustring :
int ->
(int -> CamomileLibrary.UChar.t) -> CamomileLibrary.UText.ustring
val make :
int -> CamomileLibrary.UChar.t -> CamomileLibrary.UText.ustring
val copy :
CamomileLibrary.UText.ustring -> CamomileLibrary.UText.ustring
val sub :
'a CamomileLibrary.UText.text ->
int -> int -> 'a CamomileLibrary.UText.text
val fill :
CamomileLibrary.UText.ustring ->
int -> int -> CamomileLibrary.UChar.t -> unit
val blit :
'a CamomileLibrary.UText.text ->
int -> CamomileLibrary.UText.ustring -> int -> int -> unit
val append :
'a CamomileLibrary.UText.text ->
'b CamomileLibrary.UText.text -> 'a CamomileLibrary.UText.text
val iter :
(CamomileLibrary.UChar.t -> unit) ->
'a CamomileLibrary.UText.text -> unit
val compare :
'a CamomileLibrary.UText.text -> 'b CamomileLibrary.UText.text -> int
module Buf :
sig
type buf
val create : int -> CamomileLibrary.UText.Buf.buf
val contents :
CamomileLibrary.UText.Buf.buf -> CamomileLibrary.UText.t
val contents_string :
CamomileLibrary.UText.Buf.buf -> CamomileLibrary.UText.ustring
val length : CamomileLibrary.UText.Buf.buf -> int
val clear : CamomileLibrary.UText.Buf.buf -> unit
val reset : CamomileLibrary.UText.Buf.buf -> unit
val add_char :
CamomileLibrary.UText.Buf.buf -> CamomileLibrary.UChar.t -> unit
val add_string :
CamomileLibrary.UText.Buf.buf ->
'a CamomileLibrary.UText.text -> unit
val add_buffer :
CamomileLibrary.UText.Buf.buf ->
CamomileLibrary.UText.Buf.buf -> unit
end
end
module XString :
sig
type xstring
type t = CamomileLibrary.XString.xstring
val get :
CamomileLibrary.XString.xstring -> int -> CamomileLibrary.UChar.t
val set :
CamomileLibrary.XString.xstring ->
int -> CamomileLibrary.UChar.t -> unit
val length : CamomileLibrary.XString.xstring -> int
val init :
int ->
(int -> CamomileLibrary.UChar.t) -> CamomileLibrary.XString.xstring
type index
val look :
CamomileLibrary.XString.xstring ->
CamomileLibrary.XString.index -> CamomileLibrary.UChar.t
val nth :
CamomileLibrary.XString.xstring ->
int -> CamomileLibrary.XString.index
val first :
CamomileLibrary.XString.xstring -> CamomileLibrary.XString.index
val last :
CamomileLibrary.XString.xstring -> CamomileLibrary.XString.index
val out_of_range :
CamomileLibrary.XString.xstring ->
CamomileLibrary.XString.index -> bool
val next :
CamomileLibrary.XString.xstring ->
CamomileLibrary.XString.index -> CamomileLibrary.XString.index
val prev :
CamomileLibrary.XString.xstring ->
CamomileLibrary.XString.index -> CamomileLibrary.XString.index
val move :
CamomileLibrary.XString.xstring ->
CamomileLibrary.XString.index -> int -> CamomileLibrary.XString.index
val compare_index :
CamomileLibrary.XString.xstring ->
CamomileLibrary.XString.index -> CamomileLibrary.XString.index -> int
val make :
?bufsize:int ->
int -> CamomileLibrary.UChar.t -> CamomileLibrary.XString.xstring
val clear : CamomileLibrary.XString.xstring -> unit
val reset : CamomileLibrary.XString.xstring -> unit
val copy :
CamomileLibrary.XString.xstring -> CamomileLibrary.XString.xstring
val sub :
CamomileLibrary.XString.xstring ->
int -> int -> CamomileLibrary.XString.xstring
val add_char :
CamomileLibrary.XString.xstring -> CamomileLibrary.UChar.t -> unit
val add_text :
CamomileLibrary.XString.xstring ->
'a CamomileLibrary.UText.text -> unit
val add_xstring :
CamomileLibrary.XString.xstring ->
CamomileLibrary.XString.xstring -> unit
val shrink : CamomileLibrary.XString.xstring -> int -> unit
val append :
CamomileLibrary.XString.xstring ->
CamomileLibrary.XString.xstring -> CamomileLibrary.XString.xstring
val utext_of :
CamomileLibrary.XString.xstring -> CamomileLibrary.UText.t
val ustring_of :
CamomileLibrary.XString.xstring -> CamomileLibrary.UText.ustring
val iter :
(CamomileLibrary.UChar.t -> unit) ->
CamomileLibrary.XString.xstring -> unit
val compare :
CamomileLibrary.XString.t -> CamomileLibrary.XString.t -> int
module Buf :
sig
type buf
val create : int -> CamomileLibrary.XString.Buf.buf
val contents :
CamomileLibrary.XString.Buf.buf -> CamomileLibrary.XString.t
val length : CamomileLibrary.XString.Buf.buf -> int
val clear : CamomileLibrary.XString.Buf.buf -> unit
val reset : CamomileLibrary.XString.Buf.buf -> unit
val add_char :
CamomileLibrary.XString.Buf.buf ->
CamomileLibrary.UChar.t -> unit
val add_string :
CamomileLibrary.XString.Buf.buf ->
CamomileLibrary.XString.t -> unit
val add_buffer :
CamomileLibrary.XString.Buf.buf ->
CamomileLibrary.XString.Buf.buf -> unit
end
end
module SubText :
sig
module type Type =
sig
type t
val get :
CamomileLibrary.SubText.Type.t -> int -> CamomileLibrary.UChar.t
val init :
int ->
(int -> CamomileLibrary.UChar.t) ->
CamomileLibrary.SubText.Type.t
val length : CamomileLibrary.SubText.Type.t -> int
type index
val look :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.index -> CamomileLibrary.UChar.t
val nth :
CamomileLibrary.SubText.Type.t ->
int -> CamomileLibrary.SubText.Type.index
val first :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.index
val last :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.index
val next :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.index ->
CamomileLibrary.SubText.Type.index
val prev :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.index ->
CamomileLibrary.SubText.Type.index
val move :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.index ->
int -> CamomileLibrary.SubText.Type.index
val out_of_range :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.index -> bool
val compare_index :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.index ->
CamomileLibrary.SubText.Type.index -> int
val iter :
(CamomileLibrary.UChar.t -> unit) ->
CamomileLibrary.SubText.Type.t -> unit
val compare :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.t -> int
module Buf :
sig
type buf
val create : int -> CamomileLibrary.SubText.Type.Buf.buf
val contents :
CamomileLibrary.SubText.Type.Buf.buf ->
CamomileLibrary.SubText.Type.t
val clear : CamomileLibrary.SubText.Type.Buf.buf -> unit
val reset : CamomileLibrary.SubText.Type.Buf.buf -> unit
val add_char :
CamomileLibrary.SubText.Type.Buf.buf ->
CamomileLibrary.UChar.t -> unit
val add_string :
CamomileLibrary.SubText.Type.Buf.buf ->
CamomileLibrary.SubText.Type.t -> unit
val add_buffer :
CamomileLibrary.SubText.Type.Buf.buf ->
CamomileLibrary.SubText.Type.Buf.buf -> unit
end
type ur_text
type ur_index
val refer :
CamomileLibrary.SubText.Type.ur_text ->
CamomileLibrary.SubText.Type.ur_index ->
CamomileLibrary.SubText.Type.ur_index ->
CamomileLibrary.SubText.Type.t
val excerpt :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.ur_text
val context :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.ur_text *
CamomileLibrary.SubText.Type.ur_index *
CamomileLibrary.SubText.Type.ur_index
val ur_index_of :
CamomileLibrary.SubText.Type.t ->
CamomileLibrary.SubText.Type.index ->
CamomileLibrary.SubText.Type.ur_index
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = Text.t
type ur_index = Text.index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
end
module ULine :
sig
type separator = [ `CR | `CRLF | `LF | `LS | `NEL | `PS ]
class input :
CamomileLibrary.ULine.separator ->
CamomileLibrary.UChar.t #CamomileLibrary.OOChannel.obj_input_channel ->
[CamomileLibrary.UChar.t] OOChannel.obj_input_channel
class output :
CamomileLibrary.ULine.separator ->
CamomileLibrary.UChar.t #CamomileLibrary.OOChannel.obj_output_channel ->
[CamomileLibrary.UChar.t] OOChannel.obj_output_channel
module type Type =
sig
type text
class input_line :
CamomileLibrary.UChar.t
#CamomileLibrary.OOChannel.obj_input_channel ->
[CamomileLibrary.ULine.Type.text] OOChannel.obj_input_channel
class output_line :
?sp:CamomileLibrary.ULine.separator ->
CamomileLibrary.UChar.t
#CamomileLibrary.OOChannel.obj_output_channel ->
[CamomileLibrary.ULine.Type.text] OOChannel.obj_output_channel
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
class input_line :
UChar.t #OOChannel.obj_input_channel ->
[text] OOChannel.obj_input_channel
class output_line :
?sp:separator ->
UChar.t #OOChannel.obj_output_channel ->
[text] OOChannel.obj_output_channel
end
end
module Locale :
sig
type t = string
val read :
string -> string -> (Pervasives.in_channel -> 'a) -> string -> 'a
val contain : string -> string -> bool
end
module UTF8 :
sig
type t = string
exception Malformed_code
val validate : CamomileLibrary.UTF8.t -> unit
val get : CamomileLibrary.UTF8.t -> int -> CamomileLibrary.UChar.t
val init :
int -> (int -> CamomileLibrary.UChar.t) -> CamomileLibrary.UTF8.t
val length : CamomileLibrary.UTF8.t -> int
type index = int
val nth : CamomileLibrary.UTF8.t -> int -> CamomileLibrary.UTF8.index
val first : CamomileLibrary.UTF8.t -> CamomileLibrary.UTF8.index
val last : CamomileLibrary.UTF8.t -> CamomileLibrary.UTF8.index
val look :
CamomileLibrary.UTF8.t ->
CamomileLibrary.UTF8.index -> CamomileLibrary.UChar.t
val out_of_range :
CamomileLibrary.UTF8.t -> CamomileLibrary.UTF8.index -> bool
val compare_index :
CamomileLibrary.UTF8.t ->
CamomileLibrary.UTF8.index -> CamomileLibrary.UTF8.index -> int
val next :
CamomileLibrary.UTF8.t ->
CamomileLibrary.UTF8.index -> CamomileLibrary.UTF8.index
val prev :
CamomileLibrary.UTF8.t ->
CamomileLibrary.UTF8.index -> CamomileLibrary.UTF8.index
val move :
CamomileLibrary.UTF8.t ->
CamomileLibrary.UTF8.index -> int -> CamomileLibrary.UTF8.index
val iter :
(CamomileLibrary.UChar.t -> unit) -> CamomileLibrary.UTF8.t -> unit
val compare : CamomileLibrary.UTF8.t -> CamomileLibrary.UTF8.t -> int
module Buf :
sig
type buf = Buffer.t
val create : int -> CamomileLibrary.UTF8.Buf.buf
val contents :
CamomileLibrary.UTF8.Buf.buf -> CamomileLibrary.UTF8.t
val clear : CamomileLibrary.UTF8.Buf.buf -> unit
val reset : CamomileLibrary.UTF8.Buf.buf -> unit
val add_char :
CamomileLibrary.UTF8.Buf.buf -> CamomileLibrary.UChar.t -> unit
val add_string :
CamomileLibrary.UTF8.Buf.buf -> CamomileLibrary.UTF8.t -> unit
val add_buffer :
CamomileLibrary.UTF8.Buf.buf ->
CamomileLibrary.UTF8.Buf.buf -> unit
end
end
module UTF16 :
sig
type t =
(int, Bigarray.int16_unsigned_elt, Bigarray.c_layout)
Bigarray.Array1.t
exception Malformed_code
val validate : CamomileLibrary.UTF16.t -> unit
val get : CamomileLibrary.UTF16.t -> int -> CamomileLibrary.UChar.t
exception Out_of_range
val init :
int -> (int -> CamomileLibrary.UChar.t) -> CamomileLibrary.UTF16.t
val length : CamomileLibrary.UTF16.t -> int
type index = int
val nth : CamomileLibrary.UTF16.t -> int -> CamomileLibrary.UTF16.index
val first : CamomileLibrary.UTF16.t -> CamomileLibrary.UTF16.index
val last : CamomileLibrary.UTF16.t -> CamomileLibrary.UTF16.index
val look :
CamomileLibrary.UTF16.t ->
CamomileLibrary.UTF16.index -> CamomileLibrary.UChar.t
val out_of_range :
CamomileLibrary.UTF16.t -> CamomileLibrary.UTF16.index -> bool
val compare_index :
CamomileLibrary.UTF16.t ->
CamomileLibrary.UTF16.index -> CamomileLibrary.UTF16.index -> int
val next :
CamomileLibrary.UTF16.t ->
CamomileLibrary.UTF16.index -> CamomileLibrary.UTF16.index
val prev :
CamomileLibrary.UTF16.t ->
CamomileLibrary.UTF16.index -> CamomileLibrary.UTF16.index
val move :
CamomileLibrary.UTF16.t ->
CamomileLibrary.UTF16.index -> int -> CamomileLibrary.UTF16.index
val iter :
(CamomileLibrary.UChar.t -> unit) -> CamomileLibrary.UTF16.t -> unit
val compare : CamomileLibrary.UTF16.t -> CamomileLibrary.UTF16.t -> int
module Buf :
sig
type buf
val create : int -> CamomileLibrary.UTF16.Buf.buf
val contents :
CamomileLibrary.UTF16.Buf.buf -> CamomileLibrary.UTF16.t
val clear : CamomileLibrary.UTF16.Buf.buf -> unit
val reset : CamomileLibrary.UTF16.Buf.buf -> unit
val add_char :
CamomileLibrary.UTF16.Buf.buf -> CamomileLibrary.UChar.t -> unit
val add_string :
CamomileLibrary.UTF16.Buf.buf -> CamomileLibrary.UTF16.t -> unit
val add_buffer :
CamomileLibrary.UTF16.Buf.buf ->
CamomileLibrary.UTF16.Buf.buf -> unit
end
end
module UCS4 :
sig
type t =
(int32, Bigarray.int32_elt, Bigarray.c_layout) Bigarray.Array1.t
exception Malformed_code
val validate : CamomileLibrary.UCS4.t -> unit
val get : CamomileLibrary.UCS4.t -> int -> CamomileLibrary.UChar.t
val init :
int -> (int -> CamomileLibrary.UChar.t) -> CamomileLibrary.UCS4.t
val length : CamomileLibrary.UCS4.t -> int
type index = int
val nth : CamomileLibrary.UCS4.t -> int -> CamomileLibrary.UCS4.index
val first : CamomileLibrary.UCS4.t -> CamomileLibrary.UCS4.index
val last : CamomileLibrary.UCS4.t -> CamomileLibrary.UCS4.index
val look :
CamomileLibrary.UCS4.t ->
CamomileLibrary.UCS4.index -> CamomileLibrary.UChar.t
val out_of_range :
CamomileLibrary.UCS4.t -> CamomileLibrary.UCS4.index -> bool
val compare_index :
CamomileLibrary.UCS4.t ->
CamomileLibrary.UCS4.index -> CamomileLibrary.UCS4.index -> int
val next :
CamomileLibrary.UCS4.t ->
CamomileLibrary.UCS4.index -> CamomileLibrary.UCS4.index
val prev :
CamomileLibrary.UCS4.t ->
CamomileLibrary.UCS4.index -> CamomileLibrary.UCS4.index
val move :
CamomileLibrary.UCS4.t ->
CamomileLibrary.UCS4.index -> int -> CamomileLibrary.UCS4.index
val iter :
(CamomileLibrary.UChar.t -> unit) -> CamomileLibrary.UCS4.t -> unit
val compare : CamomileLibrary.UCS4.t -> CamomileLibrary.UCS4.t -> int
module Buf :
sig
type buf
val create : int -> CamomileLibrary.UCS4.Buf.buf
val contents :
CamomileLibrary.UCS4.Buf.buf -> CamomileLibrary.UCS4.t
val clear : CamomileLibrary.UCS4.Buf.buf -> unit
val reset : CamomileLibrary.UCS4.Buf.buf -> unit
val add_char :
CamomileLibrary.UCS4.Buf.buf -> CamomileLibrary.UChar.t -> unit
val add_string :
CamomileLibrary.UCS4.Buf.buf -> CamomileLibrary.UCS4.t -> unit
val add_buffer :
CamomileLibrary.UCS4.Buf.buf ->
CamomileLibrary.UCS4.Buf.buf -> unit
end
end
module UPervasives :
sig
type uchar = CamomileLibrary.UChar.t
val int_of_uchar : CamomileLibrary.UPervasives.uchar -> int
val uchar_of_int : int -> CamomileLibrary.UPervasives.uchar
val escaped_uchar : CamomileLibrary.UPervasives.uchar -> string
val escaped_utf8 : string -> string
val printer_utf8 : Format.formatter -> string -> unit
val printer_uchar :
Format.formatter -> CamomileLibrary.UPervasives.uchar -> unit
end
module URe :
sig
type regexp =
[ `After of regexp
| `Alt of regexp * regexp
| `Before of regexp
| `BoS
| `EoS
| `Epsilon
| `Group of regexp
| `OneChar
| `Rep of regexp
| `Repn of regexp * int * int option
| `Seq of regexp * regexp
| `Set of CamomileLibrary.USet.t
| `String of CamomileLibrary.UChar.t list ]
type match_semantics = [ `First | `Longest | `Shortest ]
val no_group : CamomileLibrary.URe.regexp -> CamomileLibrary.URe.regexp
module type Type =
sig
type text
type index
type compiled_regexp
module SubText :
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = text
type ur_index = index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
val compile :
CamomileLibrary.URe.regexp ->
CamomileLibrary.URe.Type.compiled_regexp
val regexp_match :
?sem:CamomileLibrary.URe.match_semantics ->
CamomileLibrary.URe.Type.compiled_regexp ->
CamomileLibrary.URe.Type.text ->
CamomileLibrary.URe.Type.index ->
CamomileLibrary.URe.Type.SubText.t option array option
val string_match :
CamomileLibrary.URe.Type.compiled_regexp ->
CamomileLibrary.URe.Type.text ->
CamomileLibrary.URe.Type.index -> bool
val search_forward :
?sem:CamomileLibrary.URe.match_semantics ->
CamomileLibrary.URe.Type.compiled_regexp ->
CamomileLibrary.URe.Type.text ->
CamomileLibrary.URe.Type.index ->
CamomileLibrary.URe.Type.SubText.t option array option
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
type index = Text.index
type compiled_regexp
module SubText :
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = text
type ur_index = index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
val compile : regexp -> compiled_regexp
val regexp_match :
?sem:match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
val string_match : compiled_regexp -> text -> index -> bool
val search_forward :
?sem:match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
end
end
module CharEncoding :
sig
module type Interface =
sig
exception Malformed_code
exception Out_of_range
type t
val automatic :
string ->
CamomileLibrary.CharEncoding.Interface.t list ->
CamomileLibrary.CharEncoding.Interface.t ->
CamomileLibrary.CharEncoding.Interface.t
val new_enc :
string -> CamomileLibrary.CharEncoding.Interface.t -> unit
val alias : string -> string -> unit
val of_name : string -> CamomileLibrary.CharEncoding.Interface.t
val name_of : CamomileLibrary.CharEncoding.Interface.t -> string
val ascii : CamomileLibrary.CharEncoding.Interface.t
val latin1 : CamomileLibrary.CharEncoding.Interface.t
val utf8 : CamomileLibrary.CharEncoding.Interface.t
val utf16 : CamomileLibrary.CharEncoding.Interface.t
val utf16be : CamomileLibrary.CharEncoding.Interface.t
val utf16le : CamomileLibrary.CharEncoding.Interface.t
val utf32 : CamomileLibrary.CharEncoding.Interface.t
val utf32be : CamomileLibrary.CharEncoding.Interface.t
val utf32le : CamomileLibrary.CharEncoding.Interface.t
val ucs4 : CamomileLibrary.CharEncoding.Interface.t
val recode_string :
in_enc:CamomileLibrary.CharEncoding.Interface.t ->
out_enc:CamomileLibrary.CharEncoding.Interface.t ->
string -> string
class uchar_input_channel_of :
CamomileLibrary.CharEncoding.Interface.t ->
CamomileLibrary.OOChannel.char_input_channel ->
[CamomileLibrary.UChar.t] OOChannel.obj_input_channel
class uchar_output_channel_of :
CamomileLibrary.CharEncoding.Interface.t ->
CamomileLibrary.OOChannel.char_output_channel ->
[CamomileLibrary.UChar.t] OOChannel.obj_output_channel
class convert_uchar_input :
CamomileLibrary.CharEncoding.Interface.t ->
CamomileLibrary.UChar.t
CamomileLibrary.OOChannel.obj_input_channel ->
OOChannel.char_input_channel
class convert_uchar_output :
CamomileLibrary.CharEncoding.Interface.t ->
CamomileLibrary.UChar.t
CamomileLibrary.OOChannel.obj_output_channel ->
OOChannel.char_output_channel
class convert_input :
in_enc:CamomileLibrary.CharEncoding.Interface.t ->
out_enc:CamomileLibrary.CharEncoding.Interface.t ->
CamomileLibrary.OOChannel.char_input_channel ->
OOChannel.char_input_channel
class convert_output :
in_enc:CamomileLibrary.CharEncoding.Interface.t ->
out_enc:CamomileLibrary.CharEncoding.Interface.t ->
CamomileLibrary.OOChannel.char_output_channel ->
OOChannel.char_output_channel
class out_channel :
CamomileLibrary.CharEncoding.Interface.t ->
Pervasives.out_channel ->
[CamomileLibrary.UChar.t] OOChannel.obj_output_channel
class in_channel :
CamomileLibrary.CharEncoding.Interface.t ->
Pervasives.in_channel ->
[CamomileLibrary.UChar.t] OOChannel.obj_input_channel
val ustream_of :
CamomileLibrary.CharEncoding.Interface.t ->
char Stream.t -> CamomileLibrary.UChar.t Stream.t
val char_stream_of :
CamomileLibrary.CharEncoding.Interface.t ->
CamomileLibrary.UChar.t Stream.t -> char Stream.t
module type Type =
sig
type text
val decode :
CamomileLibrary.CharEncoding.Interface.t ->
string -> CamomileLibrary.CharEncoding.Interface.Type.text
val encode :
CamomileLibrary.CharEncoding.Interface.t ->
CamomileLibrary.CharEncoding.Interface.Type.text -> string
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
val decode : t -> string -> text
val encode : t -> text -> string
end
end
module Configure : functor (Config : ConfigInt.Type) -> Interface
end
module UCharInfo :
sig
module type Type =
sig
type general_category_type =
[ `Cc
| `Cf
| `Cn
| `Co
| `Cs
| `Ll
| `Lm
| `Lo
| `Lt
| `Lu
| `Mc
| `Me
| `Mn
| `Nd
| `Nl
| `No
| `Pc
| `Pd
| `Pe
| `Pf
| `Pi
| `Po
| `Ps
| `Sc
| `Sk
| `Sm
| `So
| `Zl
| `Zp
| `Zs ]
val general_category :
CamomileLibrary.UChar.t ->
CamomileLibrary.UCharInfo.Type.general_category_type
val load_general_category_map :
unit ->
CamomileLibrary.UCharInfo.Type.general_category_type
CamomileLibrary.UMap.t
type character_property_type =
[ `Alphabetic
| `Ascii_Hex_Digit
| `Bidi_Control
| `Default_Ignorable_Code_Point
| `Deprecated
| `Diacritic
| `Extender
| `Grapheme_Base
| `Grapheme_Extend
| `Grapheme_Link
| `Hex_Digit
| `Hyphen
| `IDS_Binary_Operator
| `IDS_Trinary_Operator
| `ID_Continue
| `ID_Start
| `Ideographic
| `Logical_Order_Exception
| `Lowercase
| `Math
| `Noncharacter_Code_Point
| `Other_Alphabetic
| `Other_Grapheme_Extend
| `Other_Lowercase
| `Other_Math
| `Other_Uppercase
| `Other_default_Ignorable_Code_Point
| `Quotation_Mark
| `Radical
| `Soft_Dotted
| `Terminal_Punctuation
| `Unified_Ideograph
| `Uppercase
| `White_Space
| `XID_Continue
| `XID_Start ]
val load_property_tbl :
CamomileLibrary.UCharInfo.Type.character_property_type ->
CamomileLibrary.UCharTbl.Bool.t
val load_property_tbl_by_name :
string -> CamomileLibrary.UCharTbl.Bool.t
val load_property_set :
CamomileLibrary.UCharInfo.Type.character_property_type ->
CamomileLibrary.USet.t
val load_property_set_by_name : string -> CamomileLibrary.USet.t
type script_type =
[ `Arabic
| `Armenian
| `Bengali
| `Bopomofo
| `Buhid
| `Canadian_Aboriginal
| `Cherokee
| `Common
| `Cyrillic
| `Deseret
| `Devanagari
| `Ethiopic
| `Georgian
| `Gothic
| `Greek
| `Gujarati
| `Gurmukhi
| `Han
| `Hangul
| `Hanunoo
| `Hebrew
| `Hiragana
| `Inherited
| `Kannada
| `Katakana
| `Khmer
| `Lao
| `Latin
| `Malayalam
| `Mongolian
| `Myanmar
| `Ogham
| `Old_Italic
| `Oriya
| `Runic
| `Sinhala
| `Syriac
| `Tagalog
| `Tagbanwa
| `Tamil
| `Telugu
| `Thaana
| `Thai
| `Tibetan
| `Yi ]
val script :
CamomileLibrary.UChar.t ->
CamomileLibrary.UCharInfo.Type.script_type
val load_script_map :
unit ->
CamomileLibrary.UCharInfo.Type.script_type CamomileLibrary.UMap.t
type version_type =
[ `Nc | `v1_0 | `v1_1 | `v2_0 | `v2_1 | `v3_0 | `v3_1 | `v3_2 ]
val age :
CamomileLibrary.UChar.t ->
CamomileLibrary.UCharInfo.Type.version_type
val older :
CamomileLibrary.UCharInfo.Type.version_type ->
CamomileLibrary.UCharInfo.Type.version_type -> bool
val load_to_lower1_tbl :
unit -> CamomileLibrary.UChar.t CamomileLibrary.UCharTbl.t
val load_to_upper1_tbl :
unit -> CamomileLibrary.UChar.t CamomileLibrary.UCharTbl.t
val load_to_title1_tbl :
unit -> CamomileLibrary.UChar.t CamomileLibrary.UCharTbl.t
type casemap_condition =
[ `AfterSoftDotted
| `BeforeDot
| `FinalSigma
| `Locale of string
| `MoreAbove
| `Not of casemap_condition ]
type special_casing_property = {
lower : CamomileLibrary.UChar.t list;
title : CamomileLibrary.UChar.t list;
upper : CamomileLibrary.UChar.t list;
condition : CamomileLibrary.UCharInfo.Type.casemap_condition list;
}
val load_conditional_casing_tbl :
unit ->
CamomileLibrary.UCharInfo.Type.special_casing_property list
CamomileLibrary.UCharTbl.t
val load_casefolding_tbl :
unit -> CamomileLibrary.UChar.t list CamomileLibrary.UCharTbl.t
val combined_class : CamomileLibrary.UChar.t -> int
type decomposition_type =
[ `Canon
| `Circle
| `Compat
| `Final
| `Font
| `Fraction
| `Initial
| `Isolated
| `Medial
| `Narrow
| `NoBreak
| `Small
| `Square
| `Sub
| `Super
| `Vertical
| `Wide ]
type decomposition_info =
[ `Canonform
| `Composite of
CamomileLibrary.UCharInfo.Type.decomposition_type *
CamomileLibrary.UChar.t list
| `HangulSyllable ]
val load_decomposition_tbl :
unit ->
CamomileLibrary.UCharInfo.Type.decomposition_info
CamomileLibrary.UCharTbl.t
val load_composition_tbl :
unit ->
(CamomileLibrary.UChar.t * CamomileLibrary.UChar.t) list
CamomileLibrary.UCharTbl.t
val load_composition_exclusion_tbl :
unit -> CamomileLibrary.UCharTbl.Bool.t
end
module Make : functor (Config : ConfigInt.Type) -> Type
end
module UNF :
sig
module type Type =
sig
type text
class nfd :
CamomileLibrary.UChar.t
#CamomileLibrary.OOChannel.obj_output_channel ->
[CamomileLibrary.UChar.t] OOChannel.obj_output_channel
class nfc :
CamomileLibrary.UChar.t
#CamomileLibrary.OOChannel.obj_output_channel ->
[CamomileLibrary.UChar.t] OOChannel.obj_output_channel
class nfkd :
CamomileLibrary.UChar.t
#CamomileLibrary.OOChannel.obj_output_channel ->
[CamomileLibrary.UChar.t] OOChannel.obj_output_channel
class nfkc :
CamomileLibrary.UChar.t
#CamomileLibrary.OOChannel.obj_output_channel ->
[CamomileLibrary.UChar.t] OOChannel.obj_output_channel
val nfd :
CamomileLibrary.UNF.Type.text -> CamomileLibrary.UNF.Type.text
val nfkd :
CamomileLibrary.UNF.Type.text -> CamomileLibrary.UNF.Type.text
val nfc :
CamomileLibrary.UNF.Type.text -> CamomileLibrary.UNF.Type.text
val nfkc :
CamomileLibrary.UNF.Type.text -> CamomileLibrary.UNF.Type.text
module NFCBuf :
sig
type buf
val create : int -> CamomileLibrary.UNF.Type.NFCBuf.buf
val contents :
CamomileLibrary.UNF.Type.NFCBuf.buf ->
CamomileLibrary.UNF.Type.text
val clear : CamomileLibrary.UNF.Type.NFCBuf.buf -> unit
val reset : CamomileLibrary.UNF.Type.NFCBuf.buf -> unit
val add_char :
CamomileLibrary.UNF.Type.NFCBuf.buf ->
CamomileLibrary.UChar.t -> unit
val add_string :
CamomileLibrary.UNF.Type.NFCBuf.buf ->
CamomileLibrary.UNF.Type.text -> unit
val add_buffer :
CamomileLibrary.UNF.Type.NFCBuf.buf ->
CamomileLibrary.UNF.Type.NFCBuf.buf -> unit
end
val nfc_append :
CamomileLibrary.UNF.Type.text ->
CamomileLibrary.UNF.Type.text -> CamomileLibrary.UNF.Type.text
val put_nfd :
CamomileLibrary.XString.t ->
CamomileLibrary.UNF.Type.text -> unit
val put_nfkd :
CamomileLibrary.XString.t ->
CamomileLibrary.UNF.Type.text -> unit
val put_nfc :
CamomileLibrary.XString.t ->
CamomileLibrary.UNF.Type.text -> unit
val put_nfkc :
CamomileLibrary.XString.t ->
CamomileLibrary.UNF.Type.text -> unit
type index
val nfd_inc :
CamomileLibrary.UNF.Type.text ->
CamomileLibrary.UNF.Type.index ->
([ `Inc of
CamomileLibrary.UChar.t list *
CamomileLibrary.UNF.Type.index * 'a lazy_t ]
as 'a)
val canon_compare :
CamomileLibrary.UNF.Type.text ->
CamomileLibrary.UNF.Type.text -> int
val nfd_decompose :
CamomileLibrary.UChar.t -> CamomileLibrary.UChar.t list
val nfkd_decompose :
CamomileLibrary.UChar.t -> CamomileLibrary.UChar.t list
end
module Make :
functor (Config : ConfigInt.Type) (Text : UnicodeString.Type) ->
sig
type text = Text.t
class nfd :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
class nfc :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
class nfkd :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
class nfkc :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
val nfd : text -> text
val nfkd : text -> text
val nfc : text -> text
val nfkc : text -> text
module NFCBuf :
sig
type buf
val create : int -> buf
val contents : buf -> text
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> text -> unit
val add_buffer : buf -> buf -> unit
end
val nfc_append : text -> text -> text
val put_nfd : XString.t -> text -> unit
val put_nfkd : XString.t -> text -> unit
val put_nfc : XString.t -> text -> unit
val put_nfkc : XString.t -> text -> unit
type index = Text.index
val nfd_inc :
text ->
index -> ([ `Inc of UChar.t list * index * 'a lazy_t ] as 'a)
val canon_compare : text -> text -> int
val nfd_decompose : UChar.t -> UChar.t list
val nfkd_decompose : UChar.t -> UChar.t list
end
end
module UCol :
sig
type variable_option =
[ `Blanked | `Non_ignorable | `Shift_Trimmed | `Shifted ]
type precision = [ `Primary | `Quaternary | `Secondary | `Tertiary ]
module type Type =
sig
type text
type index
val compare :
?locale:string ->
?prec:CamomileLibrary.UCol.precision ->
?variable:CamomileLibrary.UCol.variable_option ->
CamomileLibrary.UCol.Type.text ->
CamomileLibrary.UCol.Type.text -> int
val sort_key :
?locale:string ->
?prec:CamomileLibrary.UCol.precision ->
?variable:CamomileLibrary.UCol.variable_option ->
CamomileLibrary.UCol.Type.text -> string
val compare_with_key :
?locale:string ->
?prec:CamomileLibrary.UCol.precision ->
?variable:CamomileLibrary.UCol.variable_option ->
string -> CamomileLibrary.UCol.Type.text -> int
val search_with_key :
?locale:string ->
?prec:CamomileLibrary.UCol.precision ->
?variable:CamomileLibrary.UCol.variable_option ->
string ->
CamomileLibrary.UCol.Type.text ->
CamomileLibrary.UCol.Type.index ->
CamomileLibrary.UCol.Type.index * CamomileLibrary.UCol.Type.index
val search :
?locale:string ->
?prec:CamomileLibrary.UCol.precision ->
?variable:CamomileLibrary.UCol.variable_option ->
CamomileLibrary.UCol.Type.text ->
CamomileLibrary.UCol.Type.text ->
CamomileLibrary.UCol.Type.index ->
CamomileLibrary.UCol.Type.index * CamomileLibrary.UCol.Type.index
end
module Make :
functor (Config : ConfigInt.Type) (Text : UnicodeString.Type) ->
sig
type text = Text.t
type index = Text.index
val compare :
?locale:string ->
?prec:precision ->
?variable:variable_option -> text -> text -> int
val sort_key :
?locale:string ->
?prec:precision -> ?variable:variable_option -> text -> string
val compare_with_key :
?locale:string ->
?prec:precision ->
?variable:variable_option -> string -> text -> int
val search_with_key :
?locale:string ->
?prec:precision ->
?variable:variable_option ->
string -> text -> index -> index * index
val search :
?locale:string ->
?prec:precision ->
?variable:variable_option ->
text -> text -> index -> index * index
end
end
module CaseMap :
sig
module type Type =
sig
type text
val lowercase :
?locale:string ->
CamomileLibrary.CaseMap.Type.text ->
CamomileLibrary.CaseMap.Type.text
val uppercase :
?locale:string ->
CamomileLibrary.CaseMap.Type.text ->
CamomileLibrary.CaseMap.Type.text
val titlecase :
?locale:string ->
CamomileLibrary.CaseMap.Type.text ->
CamomileLibrary.CaseMap.Type.text
val casefolding :
CamomileLibrary.CaseMap.Type.text ->
CamomileLibrary.CaseMap.Type.text
val compare_caseless :
CamomileLibrary.CaseMap.Type.text ->
CamomileLibrary.CaseMap.Type.text -> int
end
module Make :
functor (Config : ConfigInt.Type) (Text : UnicodeString.Type) ->
sig
type text = Text.t
val lowercase : ?locale:string -> text -> text
val uppercase : ?locale:string -> text -> text
val titlecase : ?locale:string -> text -> text
val casefolding : text -> text
val compare_caseless : text -> text -> int
end
end
module UReStr :
sig
module type Interface =
sig
type regexp = CamomileLibrary.URe.regexp
val regexp : string -> CamomileLibrary.UReStr.Interface.regexp
val quote : string -> string
val regexp_string :
string -> CamomileLibrary.UReStr.Interface.regexp
module type Type =
sig
type text
type index
type compiled_regexp
module SubText :
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = text
type ur_index = index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
val compile :
CamomileLibrary.UReStr.Interface.regexp ->
CamomileLibrary.UReStr.Interface.Type.compiled_regexp
val regexp_match :
?sem:CamomileLibrary.URe.match_semantics ->
CamomileLibrary.UReStr.Interface.Type.compiled_regexp ->
CamomileLibrary.UReStr.Interface.Type.text ->
CamomileLibrary.UReStr.Interface.Type.index ->
CamomileLibrary.UReStr.Interface.Type.SubText.t option array
option
val string_match :
CamomileLibrary.UReStr.Interface.Type.compiled_regexp ->
CamomileLibrary.UReStr.Interface.Type.text ->
CamomileLibrary.UReStr.Interface.Type.index -> bool
val search_forward :
?sem:CamomileLibrary.URe.match_semantics ->
CamomileLibrary.UReStr.Interface.Type.compiled_regexp ->
CamomileLibrary.UReStr.Interface.Type.text ->
CamomileLibrary.UReStr.Interface.Type.index ->
CamomileLibrary.UReStr.Interface.Type.SubText.t option array
option
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
type index = Text.index
type compiled_regexp
module SubText :
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = text
type ur_index = index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
val compile : regexp -> compiled_regexp
val regexp_match :
?sem:URe.match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
val string_match : compiled_regexp -> text -> index -> bool
val search_forward :
?sem:URe.match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
end
end
module Configure : functor (Config : ConfigInt.Type) -> Interface
end
module StringPrep :
sig
module type Type =
sig
type text
exception Prohibited of CamomileLibrary.UChar.t
exception Bad_bidi
type profile =
[ `Iscsi
| `Mib
| `Nameprep
| `Nodeprep
| `Resourceprep
| `Saslprep
| `Trace ]
val stringprep :
CamomileLibrary.StringPrep.Type.profile ->
CamomileLibrary.StringPrep.Type.text ->
CamomileLibrary.StringPrep.Type.text
end
module Make :
functor (Config : ConfigInt.Type) (Text : UnicodeString.Type) ->
sig
type text = Text.t
exception Prohibited of UChar.t
exception Bad_bidi
type profile =
[ `Iscsi
| `Mib
| `Nameprep
| `Nodeprep
| `Resourceprep
| `Saslprep
| `Trace ]
val stringprep : profile -> text -> text
end
end
module type Type =
sig
module OOChannel :
sig
class type ['a] obj_input_channel =
object method close_in : unit -> unit method get : unit -> 'a end
class type ['a] obj_output_channel =
object
method close_out : unit -> unit
method flush : unit -> unit
method put : 'a -> unit
end
class ['a] channel_of_stream :
'a Stream.t -> ['a] obj_input_channel
val stream_of_channel :
'a #CamomileLibrary.Type.OOChannel.obj_input_channel ->
'a Stream.t
class type char_input_channel =
object
method close_in : unit -> unit
method input : string -> int -> int -> int
end
class type char_output_channel =
object
method close_out : unit -> unit
method flush : unit -> unit
method output : string -> int -> int -> int
end
class char_input_channel_of :
char #CamomileLibrary.Type.OOChannel.obj_input_channel ->
char_input_channel
class char_obj_input_channel_of :
CamomileLibrary.Type.OOChannel.char_input_channel ->
[char] obj_input_channel
class char_output_channel_of :
char #CamomileLibrary.Type.OOChannel.obj_output_channel ->
char_output_channel
class char_obj_output_channel_of :
CamomileLibrary.Type.OOChannel.char_output_channel ->
[char] obj_output_channel
class of_in_channel : Pervasives.in_channel -> char_input_channel
class of_out_channel :
Pervasives.out_channel -> char_output_channel
end
module UChar :
sig
type t
exception Out_of_range
val char_of : CamomileLibrary.Type.UChar.t -> char
val of_char : char -> CamomileLibrary.Type.UChar.t
val code : CamomileLibrary.Type.UChar.t -> int
val chr : int -> CamomileLibrary.Type.UChar.t
external uint_code : CamomileLibrary.Type.UChar.t -> int
= "%identity"
val chr_of_uint : int -> CamomileLibrary.Type.UChar.t
val eq :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UChar.t -> bool
val compare :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UChar.t -> int
type uchar = CamomileLibrary.Type.UChar.t
val int_of : CamomileLibrary.Type.UChar.uchar -> int
val of_int : int -> CamomileLibrary.Type.UChar.uchar
end
module USet :
sig
type t
val empty : CamomileLibrary.Type.USet.t
val is_empty : CamomileLibrary.Type.USet.t -> bool
val mem :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.USet.t -> bool
val add :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val add_range :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val singleton :
CamomileLibrary.Type.UChar.t -> CamomileLibrary.Type.USet.t
val remove :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val remove_range :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val union :
CamomileLibrary.Type.USet.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val inter :
CamomileLibrary.Type.USet.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val diff :
CamomileLibrary.Type.USet.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val compl :
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val compare :
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t -> int
val equal :
CamomileLibrary.Type.USet.t ->
CamomileLibrary.Type.USet.t -> bool
val subset :
CamomileLibrary.Type.USet.t ->
CamomileLibrary.Type.USet.t -> bool
val from :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val after :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val until :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val before :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val iter :
(CamomileLibrary.Type.UChar.t -> unit) ->
CamomileLibrary.Type.USet.t -> unit
val iter_range :
(CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UChar.t -> unit) ->
CamomileLibrary.Type.USet.t -> unit
val fold :
(CamomileLibrary.Type.UChar.t -> 'a -> 'a) ->
CamomileLibrary.Type.USet.t -> 'a -> 'a
val fold_range :
(CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UChar.t -> 'a -> 'a) ->
CamomileLibrary.Type.USet.t -> 'a -> 'a
val for_all :
(CamomileLibrary.Type.UChar.t -> bool) ->
CamomileLibrary.Type.USet.t -> bool
val exists :
(CamomileLibrary.Type.UChar.t -> bool) ->
CamomileLibrary.Type.USet.t -> bool
val filter :
(CamomileLibrary.Type.UChar.t -> bool) ->
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.USet.t
val partition :
(CamomileLibrary.Type.UChar.t -> bool) ->
CamomileLibrary.Type.USet.t ->
CamomileLibrary.Type.USet.t * CamomileLibrary.Type.USet.t
val cardinal : CamomileLibrary.Type.USet.t -> int
val elements :
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.UChar.t list
val ranges :
CamomileLibrary.Type.USet.t ->
(CamomileLibrary.Type.UChar.t * CamomileLibrary.Type.UChar.t)
list
val min_elt :
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.UChar.t
val max_elt :
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.UChar.t
val choose :
CamomileLibrary.Type.USet.t -> CamomileLibrary.Type.UChar.t
val uset_of_iset : ISet.t -> CamomileLibrary.Type.USet.t
val iset_of_uset : CamomileLibrary.Type.USet.t -> ISet.t
end
module UMap :
sig
type 'a t
val empty : 'a CamomileLibrary.Type.UMap.t
val is_empty : 'a CamomileLibrary.Type.UMap.t -> bool
val add :
?eq:('a -> 'a -> bool) ->
CamomileLibrary.Type.UChar.t ->
'a ->
'a CamomileLibrary.Type.UMap.t -> 'a CamomileLibrary.Type.UMap.t
val add_range :
?eq:('a -> 'a -> bool) ->
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UChar.t ->
'a ->
'a CamomileLibrary.Type.UMap.t -> 'a CamomileLibrary.Type.UMap.t
val find :
CamomileLibrary.Type.UChar.t ->
'a CamomileLibrary.Type.UMap.t -> 'a
val remove :
CamomileLibrary.Type.UChar.t ->
'a CamomileLibrary.Type.UMap.t -> 'a CamomileLibrary.Type.UMap.t
val remove_range :
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UChar.t ->
'a CamomileLibrary.Type.UMap.t -> 'a CamomileLibrary.Type.UMap.t
val from :
CamomileLibrary.Type.UChar.t ->
'a CamomileLibrary.Type.UMap.t -> 'a CamomileLibrary.Type.UMap.t
val after :
CamomileLibrary.Type.UChar.t ->
'a CamomileLibrary.Type.UMap.t -> 'a CamomileLibrary.Type.UMap.t
val until :
CamomileLibrary.Type.UChar.t ->
'a CamomileLibrary.Type.UMap.t -> 'a CamomileLibrary.Type.UMap.t
val before :
CamomileLibrary.Type.UChar.t ->
'a CamomileLibrary.Type.UMap.t -> 'a CamomileLibrary.Type.UMap.t
val mem :
CamomileLibrary.Type.UChar.t ->
'a CamomileLibrary.Type.UMap.t -> bool
val iter :
(CamomileLibrary.Type.UChar.t -> 'a -> unit) ->
'a CamomileLibrary.Type.UMap.t -> unit
val iter_range :
(CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UChar.t -> 'a -> unit) ->
'a CamomileLibrary.Type.UMap.t -> unit
val map :
?eq:('b -> 'b -> bool) ->
('a -> 'b) ->
'a CamomileLibrary.Type.UMap.t -> 'b CamomileLibrary.Type.UMap.t
val mapi :
?eq:('b -> 'b -> bool) ->
(CamomileLibrary.Type.UChar.t -> 'a -> 'b) ->
'a CamomileLibrary.Type.UMap.t -> 'b CamomileLibrary.Type.UMap.t
val fold :
(CamomileLibrary.Type.UChar.t -> 'b -> 'a -> 'a) ->
'b CamomileLibrary.Type.UMap.t -> 'a -> 'a
val fold_range :
(CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UChar.t -> 'b -> 'a -> 'a) ->
'b CamomileLibrary.Type.UMap.t -> 'a -> 'a
val set_to_map :
CamomileLibrary.Type.USet.t ->
'a -> 'a CamomileLibrary.Type.UMap.t
val domain :
'a CamomileLibrary.Type.UMap.t -> CamomileLibrary.Type.USet.t
val map_to_set :
('a -> bool) ->
'a CamomileLibrary.Type.UMap.t -> CamomileLibrary.Type.USet.t
val umap_of_imap : 'a IMap.t -> 'a CamomileLibrary.Type.UMap.t
val imap_of_umap : 'a CamomileLibrary.Type.UMap.t -> 'a IMap.t
end
module UCharTbl :
sig
type 'a tbl
type 'a t = 'a CamomileLibrary.Type.UCharTbl.tbl
val get :
'a CamomileLibrary.Type.UCharTbl.tbl ->
CamomileLibrary.Type.UChar.t -> 'a
module type Type =
sig
type elt
type t =
CamomileLibrary.Type.UCharTbl.Type.elt
CamomileLibrary.Type.UCharTbl.tbl
val get :
CamomileLibrary.Type.UCharTbl.Type.elt
CamomileLibrary.Type.UCharTbl.tbl ->
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UCharTbl.Type.elt
val of_map :
CamomileLibrary.Type.UCharTbl.Type.elt ->
CamomileLibrary.Type.UCharTbl.Type.elt
CamomileLibrary.Type.UMap.t ->
CamomileLibrary.Type.UCharTbl.Type.t
end
module Make :
functor (H : Hashtbl.HashedType) ->
sig
type elt = H.t
type t = elt tbl
val get : elt tbl -> UChar.t -> elt
val of_map : elt -> elt UMap.t -> t
end
module Bool :
sig
type t
val get :
CamomileLibrary.Type.UCharTbl.Bool.t ->
CamomileLibrary.Type.UChar.t -> bool
val of_set :
CamomileLibrary.Type.USet.t ->
CamomileLibrary.Type.UCharTbl.Bool.t
end
module Bits :
sig
type t
val of_map :
int ->
int CamomileLibrary.Type.UMap.t ->
CamomileLibrary.Type.UCharTbl.Bits.t
val get :
CamomileLibrary.Type.UCharTbl.Bits.t ->
CamomileLibrary.Type.UChar.t -> int
end
module Bytes :
sig
type t
val of_map :
int ->
int CamomileLibrary.Type.UMap.t ->
CamomileLibrary.Type.UCharTbl.Bytes.t
val get :
CamomileLibrary.Type.UCharTbl.Bytes.t ->
CamomileLibrary.Type.UChar.t -> int
end
module Char :
sig
type t
val of_map :
char ->
char CamomileLibrary.Type.UMap.t ->
CamomileLibrary.Type.UCharTbl.Char.t
val get :
CamomileLibrary.Type.UCharTbl.Char.t ->
CamomileLibrary.Type.UChar.t -> char
end
end
module UnicodeString :
sig
module type Type =
sig
type t
val get :
CamomileLibrary.Type.UnicodeString.Type.t ->
int -> CamomileLibrary.Type.UChar.t
val init :
int ->
(int -> CamomileLibrary.Type.UChar.t) ->
CamomileLibrary.Type.UnicodeString.Type.t
val length : CamomileLibrary.Type.UnicodeString.Type.t -> int
type index
val look :
CamomileLibrary.Type.UnicodeString.Type.t ->
CamomileLibrary.Type.UnicodeString.Type.index ->
CamomileLibrary.Type.UChar.t
val nth :
CamomileLibrary.Type.UnicodeString.Type.t ->
int -> CamomileLibrary.Type.UnicodeString.Type.index
val next :
CamomileLibrary.Type.UnicodeString.Type.t ->
CamomileLibrary.Type.UnicodeString.Type.index ->
CamomileLibrary.Type.UnicodeString.Type.index
val prev :
CamomileLibrary.Type.UnicodeString.Type.t ->
CamomileLibrary.Type.UnicodeString.Type.index ->
CamomileLibrary.Type.UnicodeString.Type.index
val out_of_range :
CamomileLibrary.Type.UnicodeString.Type.t ->
CamomileLibrary.Type.UnicodeString.Type.index -> bool
val iter :
(CamomileLibrary.Type.UChar.t -> unit) ->
CamomileLibrary.Type.UnicodeString.Type.t -> unit
val compare :
CamomileLibrary.Type.UnicodeString.Type.t ->
CamomileLibrary.Type.UnicodeString.Type.t -> int
val first :
CamomileLibrary.Type.UnicodeString.Type.t ->
CamomileLibrary.Type.UnicodeString.Type.index
val last :
CamomileLibrary.Type.UnicodeString.Type.t ->
CamomileLibrary.Type.UnicodeString.Type.index
val move :
CamomileLibrary.Type.UnicodeString.Type.t ->
CamomileLibrary.Type.UnicodeString.Type.index ->
int -> CamomileLibrary.Type.UnicodeString.Type.index
val compare_index :
CamomileLibrary.Type.UnicodeString.Type.t ->
CamomileLibrary.Type.UnicodeString.Type.index ->
CamomileLibrary.Type.UnicodeString.Type.index -> int
module Buf :
sig
type buf
val create :
int -> CamomileLibrary.Type.UnicodeString.Type.Buf.buf
val contents :
CamomileLibrary.Type.UnicodeString.Type.Buf.buf ->
CamomileLibrary.Type.UnicodeString.Type.t
val clear :
CamomileLibrary.Type.UnicodeString.Type.Buf.buf -> unit
val reset :
CamomileLibrary.Type.UnicodeString.Type.Buf.buf -> unit
val add_char :
CamomileLibrary.Type.UnicodeString.Type.Buf.buf ->
CamomileLibrary.Type.UChar.t -> unit
val add_string :
CamomileLibrary.Type.UnicodeString.Type.Buf.buf ->
CamomileLibrary.Type.UnicodeString.Type.t -> unit
val add_buffer :
CamomileLibrary.Type.UnicodeString.Type.Buf.buf ->
CamomileLibrary.Type.UnicodeString.Type.Buf.buf -> unit
end
end
end
module UText :
sig
type mutability = [ `Immutable | `Mutable ]
type 'a text
type utext = [ `Immutable ] CamomileLibrary.Type.UText.text
type ustring = [ `Mutable ] CamomileLibrary.Type.UText.text
type t = CamomileLibrary.Type.UText.utext
val utext_of_ustring :
CamomileLibrary.Type.UText.ustring ->
CamomileLibrary.Type.UText.utext
val ustring_of_utext :
CamomileLibrary.Type.UText.utext ->
CamomileLibrary.Type.UText.ustring
val get :
'a CamomileLibrary.Type.UText.text ->
int -> CamomileLibrary.Type.UChar.t
val set :
CamomileLibrary.Type.UText.ustring ->
int -> CamomileLibrary.Type.UChar.t -> unit
type index
val look :
'a CamomileLibrary.Type.UText.text ->
CamomileLibrary.Type.UText.index -> CamomileLibrary.Type.UChar.t
val nth :
'a CamomileLibrary.Type.UText.text ->
int -> CamomileLibrary.Type.UText.index
val first :
'a CamomileLibrary.Type.UText.text ->
CamomileLibrary.Type.UText.index
val last :
'a CamomileLibrary.Type.UText.text ->
CamomileLibrary.Type.UText.index
val out_of_range :
'a CamomileLibrary.Type.UText.text ->
CamomileLibrary.Type.UText.index -> bool
val compare_index :
'a CamomileLibrary.Type.UText.text ->
CamomileLibrary.Type.UText.index ->
CamomileLibrary.Type.UText.index -> int
val next :
'a CamomileLibrary.Type.UText.text ->
CamomileLibrary.Type.UText.index ->
CamomileLibrary.Type.UText.index
val prev :
'a CamomileLibrary.Type.UText.text ->
CamomileLibrary.Type.UText.index ->
CamomileLibrary.Type.UText.index
val move :
'a CamomileLibrary.Type.UText.text ->
CamomileLibrary.Type.UText.index ->
int -> CamomileLibrary.Type.UText.index
val length : 'a CamomileLibrary.Type.UText.text -> int
val of_string : string -> CamomileLibrary.Type.UText.utext
val init :
int ->
(int -> CamomileLibrary.Type.UChar.t) ->
CamomileLibrary.Type.UText.utext
val init_ustring :
int ->
(int -> CamomileLibrary.Type.UChar.t) ->
CamomileLibrary.Type.UText.ustring
val make :
int ->
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.UText.ustring
val copy :
CamomileLibrary.Type.UText.ustring ->
CamomileLibrary.Type.UText.ustring
val sub :
'a CamomileLibrary.Type.UText.text ->
int -> int -> 'a CamomileLibrary.Type.UText.text
val fill :
CamomileLibrary.Type.UText.ustring ->
int -> int -> CamomileLibrary.Type.UChar.t -> unit
val blit :
'a CamomileLibrary.Type.UText.text ->
int -> CamomileLibrary.Type.UText.ustring -> int -> int -> unit
val append :
'a CamomileLibrary.Type.UText.text ->
'b CamomileLibrary.Type.UText.text ->
'a CamomileLibrary.Type.UText.text
val iter :
(CamomileLibrary.Type.UChar.t -> unit) ->
'a CamomileLibrary.Type.UText.text -> unit
val compare :
'a CamomileLibrary.Type.UText.text ->
'b CamomileLibrary.Type.UText.text -> int
module Buf :
sig
type buf
val create : int -> CamomileLibrary.Type.UText.Buf.buf
val contents :
CamomileLibrary.Type.UText.Buf.buf ->
CamomileLibrary.Type.UText.t
val contents_string :
CamomileLibrary.Type.UText.Buf.buf ->
CamomileLibrary.Type.UText.ustring
val length : CamomileLibrary.Type.UText.Buf.buf -> int
val clear : CamomileLibrary.Type.UText.Buf.buf -> unit
val reset : CamomileLibrary.Type.UText.Buf.buf -> unit
val add_char :
CamomileLibrary.Type.UText.Buf.buf ->
CamomileLibrary.Type.UChar.t -> unit
val add_string :
CamomileLibrary.Type.UText.Buf.buf ->
'a CamomileLibrary.Type.UText.text -> unit
val add_buffer :
CamomileLibrary.Type.UText.Buf.buf ->
CamomileLibrary.Type.UText.Buf.buf -> unit
end
end
module XString :
sig
type xstring
type t = CamomileLibrary.Type.XString.xstring
val get :
CamomileLibrary.Type.XString.xstring ->
int -> CamomileLibrary.Type.UChar.t
val set :
CamomileLibrary.Type.XString.xstring ->
int -> CamomileLibrary.Type.UChar.t -> unit
val length : CamomileLibrary.Type.XString.xstring -> int
val init :
int ->
(int -> CamomileLibrary.Type.UChar.t) ->
CamomileLibrary.Type.XString.xstring
type index
val look :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.index ->
CamomileLibrary.Type.UChar.t
val nth :
CamomileLibrary.Type.XString.xstring ->
int -> CamomileLibrary.Type.XString.index
val first :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.index
val last :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.index
val out_of_range :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.index -> bool
val next :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.index ->
CamomileLibrary.Type.XString.index
val prev :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.index ->
CamomileLibrary.Type.XString.index
val move :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.index ->
int -> CamomileLibrary.Type.XString.index
val compare_index :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.index ->
CamomileLibrary.Type.XString.index -> int
val make :
?bufsize:int ->
int ->
CamomileLibrary.Type.UChar.t ->
CamomileLibrary.Type.XString.xstring
val clear : CamomileLibrary.Type.XString.xstring -> unit
val reset : CamomileLibrary.Type.XString.xstring -> unit
val copy :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.xstring
val sub :
CamomileLibrary.Type.XString.xstring ->
int -> int -> CamomileLibrary.Type.XString.xstring
val add_char :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.UChar.t -> unit
val add_text :
CamomileLibrary.Type.XString.xstring ->
'a CamomileLibrary.Type.UText.text -> unit
val add_xstring :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.xstring -> unit
val shrink : CamomileLibrary.Type.XString.xstring -> int -> unit
val append :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.XString.xstring
val utext_of :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.UText.t
val ustring_of :
CamomileLibrary.Type.XString.xstring ->
CamomileLibrary.Type.UText.ustring
val iter :
(CamomileLibrary.Type.UChar.t -> unit) ->
CamomileLibrary.Type.XString.xstring -> unit
val compare :
CamomileLibrary.Type.XString.t ->
CamomileLibrary.Type.XString.t -> int
module Buf :
sig
type buf
val create : int -> CamomileLibrary.Type.XString.Buf.buf
val contents :
CamomileLibrary.Type.XString.Buf.buf ->
CamomileLibrary.Type.XString.t
val length : CamomileLibrary.Type.XString.Buf.buf -> int
val clear : CamomileLibrary.Type.XString.Buf.buf -> unit
val reset : CamomileLibrary.Type.XString.Buf.buf -> unit
val add_char :
CamomileLibrary.Type.XString.Buf.buf ->
CamomileLibrary.Type.UChar.t -> unit
val add_string :
CamomileLibrary.Type.XString.Buf.buf ->
CamomileLibrary.Type.XString.t -> unit
val add_buffer :
CamomileLibrary.Type.XString.Buf.buf ->
CamomileLibrary.Type.XString.Buf.buf -> unit
end
end
module SubText :
sig
module type Type =
sig
type t
val get :
CamomileLibrary.Type.SubText.Type.t ->
int -> CamomileLibrary.Type.UChar.t
val init :
int ->
(int -> CamomileLibrary.Type.UChar.t) ->
CamomileLibrary.Type.SubText.Type.t
val length : CamomileLibrary.Type.SubText.Type.t -> int
type index
val look :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.index ->
CamomileLibrary.Type.UChar.t
val nth :
CamomileLibrary.Type.SubText.Type.t ->
int -> CamomileLibrary.Type.SubText.Type.index
val first :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.index
val last :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.index
val next :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.index ->
CamomileLibrary.Type.SubText.Type.index
val prev :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.index ->
CamomileLibrary.Type.SubText.Type.index
val move :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.index ->
int -> CamomileLibrary.Type.SubText.Type.index
val out_of_range :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.index -> bool
val compare_index :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.index ->
CamomileLibrary.Type.SubText.Type.index -> int
val iter :
(CamomileLibrary.Type.UChar.t -> unit) ->
CamomileLibrary.Type.SubText.Type.t -> unit
val compare :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.t -> int
module Buf :
sig
type buf
val create :
int -> CamomileLibrary.Type.SubText.Type.Buf.buf
val contents :
CamomileLibrary.Type.SubText.Type.Buf.buf ->
CamomileLibrary.Type.SubText.Type.t
val clear :
CamomileLibrary.Type.SubText.Type.Buf.buf -> unit
val reset :
CamomileLibrary.Type.SubText.Type.Buf.buf -> unit
val add_char :
CamomileLibrary.Type.SubText.Type.Buf.buf ->
CamomileLibrary.Type.UChar.t -> unit
val add_string :
CamomileLibrary.Type.SubText.Type.Buf.buf ->
CamomileLibrary.Type.SubText.Type.t -> unit
val add_buffer :
CamomileLibrary.Type.SubText.Type.Buf.buf ->
CamomileLibrary.Type.SubText.Type.Buf.buf -> unit
end
type ur_text
type ur_index
val refer :
CamomileLibrary.Type.SubText.Type.ur_text ->
CamomileLibrary.Type.SubText.Type.ur_index ->
CamomileLibrary.Type.SubText.Type.ur_index ->
CamomileLibrary.Type.SubText.Type.t
val excerpt :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.ur_text
val context :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.ur_text *
CamomileLibrary.Type.SubText.Type.ur_index *
CamomileLibrary.Type.SubText.Type.ur_index
val ur_index_of :
CamomileLibrary.Type.SubText.Type.t ->
CamomileLibrary.Type.SubText.Type.index ->
CamomileLibrary.Type.SubText.Type.ur_index
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = Text.t
type ur_index = Text.index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
end
module ULine :
sig
type separator = [ `CR | `CRLF | `LF | `LS | `NEL | `PS ]
class input :
CamomileLibrary.Type.ULine.separator ->
CamomileLibrary.Type.UChar.t
#CamomileLibrary.Type.OOChannel.obj_input_channel ->
[CamomileLibrary.Type.UChar.t] OOChannel.obj_input_channel
class output :
CamomileLibrary.Type.ULine.separator ->
CamomileLibrary.Type.UChar.t
#CamomileLibrary.Type.OOChannel.obj_output_channel ->
[CamomileLibrary.Type.UChar.t] OOChannel.obj_output_channel
module type Type =
sig
type text
class input_line :
CamomileLibrary.Type.UChar.t
#CamomileLibrary.Type.OOChannel.obj_input_channel ->
[CamomileLibrary.Type.ULine.Type.text]
OOChannel.obj_input_channel
class output_line :
?sp:CamomileLibrary.Type.ULine.separator ->
CamomileLibrary.Type.UChar.t
#CamomileLibrary.Type.OOChannel.obj_output_channel ->
[CamomileLibrary.Type.ULine.Type.text]
OOChannel.obj_output_channel
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
class input_line :
UChar.t #OOChannel.obj_input_channel ->
[text] OOChannel.obj_input_channel
class output_line :
?sp:separator ->
UChar.t #OOChannel.obj_output_channel ->
[text] OOChannel.obj_output_channel
end
end
module Locale :
sig
type t = string
val read :
string -> string -> (Pervasives.in_channel -> 'a) -> string -> 'a
val contain : string -> string -> bool
end
module CharEncoding : CharEncoding.Interface
module UTF8 :
sig
type t = string
exception Malformed_code
val validate : CamomileLibrary.Type.UTF8.t -> unit
val get :
CamomileLibrary.Type.UTF8.t ->
int -> CamomileLibrary.Type.UChar.t
val init :
int ->
(int -> CamomileLibrary.Type.UChar.t) ->
CamomileLibrary.Type.UTF8.t
val length : CamomileLibrary.Type.UTF8.t -> int
type index = int
val nth :
CamomileLibrary.Type.UTF8.t ->
int -> CamomileLibrary.Type.UTF8.index
val first :
CamomileLibrary.Type.UTF8.t -> CamomileLibrary.Type.UTF8.index
val last :
CamomileLibrary.Type.UTF8.t -> CamomileLibrary.Type.UTF8.index
val look :
CamomileLibrary.Type.UTF8.t ->
CamomileLibrary.Type.UTF8.index -> CamomileLibrary.Type.UChar.t
val out_of_range :
CamomileLibrary.Type.UTF8.t ->
CamomileLibrary.Type.UTF8.index -> bool
val compare_index :
CamomileLibrary.Type.UTF8.t ->
CamomileLibrary.Type.UTF8.index ->
CamomileLibrary.Type.UTF8.index -> int
val next :
CamomileLibrary.Type.UTF8.t ->
CamomileLibrary.Type.UTF8.index ->
CamomileLibrary.Type.UTF8.index
val prev :
CamomileLibrary.Type.UTF8.t ->
CamomileLibrary.Type.UTF8.index ->
CamomileLibrary.Type.UTF8.index
val move :
CamomileLibrary.Type.UTF8.t ->
CamomileLibrary.Type.UTF8.index ->
int -> CamomileLibrary.Type.UTF8.index
val iter :
(CamomileLibrary.Type.UChar.t -> unit) ->
CamomileLibrary.Type.UTF8.t -> unit
val compare :
CamomileLibrary.Type.UTF8.t -> CamomileLibrary.Type.UTF8.t -> int
module Buf :
sig
type buf = Buffer.t
val create : int -> CamomileLibrary.Type.UTF8.Buf.buf
val contents :
CamomileLibrary.Type.UTF8.Buf.buf ->
CamomileLibrary.Type.UTF8.t
val clear : CamomileLibrary.Type.UTF8.Buf.buf -> unit
val reset : CamomileLibrary.Type.UTF8.Buf.buf -> unit
val add_char :
CamomileLibrary.Type.UTF8.Buf.buf ->
CamomileLibrary.Type.UChar.t -> unit
val add_string :
CamomileLibrary.Type.UTF8.Buf.buf ->
CamomileLibrary.Type.UTF8.t -> unit
val add_buffer :
CamomileLibrary.Type.UTF8.Buf.buf ->
CamomileLibrary.Type.UTF8.Buf.buf -> unit
end
end
module UTF16 :
sig
type t =
(int, Bigarray.int16_unsigned_elt, Bigarray.c_layout)
Bigarray.Array1.t
exception Malformed_code
val validate : CamomileLibrary.Type.UTF16.t -> unit
val get :
CamomileLibrary.Type.UTF16.t ->
int -> CamomileLibrary.Type.UChar.t
exception Out_of_range
val init :
int ->
(int -> CamomileLibrary.Type.UChar.t) ->
CamomileLibrary.Type.UTF16.t
val length : CamomileLibrary.Type.UTF16.t -> int
type index = int
val nth :
CamomileLibrary.Type.UTF16.t ->
int -> CamomileLibrary.Type.UTF16.index
val first :
CamomileLibrary.Type.UTF16.t -> CamomileLibrary.Type.UTF16.index
val last :
CamomileLibrary.Type.UTF16.t -> CamomileLibrary.Type.UTF16.index
val look :
CamomileLibrary.Type.UTF16.t ->
CamomileLibrary.Type.UTF16.index -> CamomileLibrary.Type.UChar.t
val out_of_range :
CamomileLibrary.Type.UTF16.t ->
CamomileLibrary.Type.UTF16.index -> bool
val compare_index :
CamomileLibrary.Type.UTF16.t ->
CamomileLibrary.Type.UTF16.index ->
CamomileLibrary.Type.UTF16.index -> int
val next :
CamomileLibrary.Type.UTF16.t ->
CamomileLibrary.Type.UTF16.index ->
CamomileLibrary.Type.UTF16.index
val prev :
CamomileLibrary.Type.UTF16.t ->
CamomileLibrary.Type.UTF16.index ->
CamomileLibrary.Type.UTF16.index
val move :
CamomileLibrary.Type.UTF16.t ->
CamomileLibrary.Type.UTF16.index ->
int -> CamomileLibrary.Type.UTF16.index
val iter :
(CamomileLibrary.Type.UChar.t -> unit) ->
CamomileLibrary.Type.UTF16.t -> unit
val compare :
CamomileLibrary.Type.UTF16.t ->
CamomileLibrary.Type.UTF16.t -> int
module Buf :
sig
type buf
val create : int -> CamomileLibrary.Type.UTF16.Buf.buf
val contents :
CamomileLibrary.Type.UTF16.Buf.buf ->
CamomileLibrary.Type.UTF16.t
val clear : CamomileLibrary.Type.UTF16.Buf.buf -> unit
val reset : CamomileLibrary.Type.UTF16.Buf.buf -> unit
val add_char :
CamomileLibrary.Type.UTF16.Buf.buf ->
CamomileLibrary.Type.UChar.t -> unit
val add_string :
CamomileLibrary.Type.UTF16.Buf.buf ->
CamomileLibrary.Type.UTF16.t -> unit
val add_buffer :
CamomileLibrary.Type.UTF16.Buf.buf ->
CamomileLibrary.Type.UTF16.Buf.buf -> unit
end
end
module UCS4 :
sig
type t =
(int32, Bigarray.int32_elt, Bigarray.c_layout)
Bigarray.Array1.t
exception Malformed_code
val validate : CamomileLibrary.Type.UCS4.t -> unit
val get :
CamomileLibrary.Type.UCS4.t ->
int -> CamomileLibrary.Type.UChar.t
val init :
int ->
(int -> CamomileLibrary.Type.UChar.t) ->
CamomileLibrary.Type.UCS4.t
val length : CamomileLibrary.Type.UCS4.t -> int
type index = int
val nth :
CamomileLibrary.Type.UCS4.t ->
int -> CamomileLibrary.Type.UCS4.index
val first :
CamomileLibrary.Type.UCS4.t -> CamomileLibrary.Type.UCS4.index
val last :
CamomileLibrary.Type.UCS4.t -> CamomileLibrary.Type.UCS4.index
val look :
CamomileLibrary.Type.UCS4.t ->
CamomileLibrary.Type.UCS4.index -> CamomileLibrary.Type.UChar.t
val out_of_range :
CamomileLibrary.Type.UCS4.t ->
CamomileLibrary.Type.UCS4.index -> bool
val compare_index :
CamomileLibrary.Type.UCS4.t ->
CamomileLibrary.Type.UCS4.index ->
CamomileLibrary.Type.UCS4.index -> int
val next :
CamomileLibrary.Type.UCS4.t ->
CamomileLibrary.Type.UCS4.index ->
CamomileLibrary.Type.UCS4.index
val prev :
CamomileLibrary.Type.UCS4.t ->
CamomileLibrary.Type.UCS4.index ->
CamomileLibrary.Type.UCS4.index
val move :
CamomileLibrary.Type.UCS4.t ->
CamomileLibrary.Type.UCS4.index ->
int -> CamomileLibrary.Type.UCS4.index
val iter :
(CamomileLibrary.Type.UChar.t -> unit) ->
CamomileLibrary.Type.UCS4.t -> unit
val compare :
CamomileLibrary.Type.UCS4.t -> CamomileLibrary.Type.UCS4.t -> int
module Buf :
sig
type buf
val create : int -> CamomileLibrary.Type.UCS4.Buf.buf
val contents :
CamomileLibrary.Type.UCS4.Buf.buf ->
CamomileLibrary.Type.UCS4.t
val clear : CamomileLibrary.Type.UCS4.Buf.buf -> unit
val reset : CamomileLibrary.Type.UCS4.Buf.buf -> unit
val add_char :
CamomileLibrary.Type.UCS4.Buf.buf ->
CamomileLibrary.Type.UChar.t -> unit
val add_string :
CamomileLibrary.Type.UCS4.Buf.buf ->
CamomileLibrary.Type.UCS4.t -> unit
val add_buffer :
CamomileLibrary.Type.UCS4.Buf.buf ->
CamomileLibrary.Type.UCS4.Buf.buf -> unit
end
end
module UPervasives :
sig
type uchar = CamomileLibrary.Type.UChar.t
val int_of_uchar : CamomileLibrary.Type.UPervasives.uchar -> int
val uchar_of_int : int -> CamomileLibrary.Type.UPervasives.uchar
val escaped_uchar :
CamomileLibrary.Type.UPervasives.uchar -> string
val escaped_utf8 : string -> string
val printer_utf8 : Format.formatter -> string -> unit
val printer_uchar :
Format.formatter ->
CamomileLibrary.Type.UPervasives.uchar -> unit
end
module URe :
sig
type regexp =
[ `After of regexp
| `Alt of regexp * regexp
| `Before of regexp
| `BoS
| `EoS
| `Epsilon
| `Group of regexp
| `OneChar
| `Rep of regexp
| `Repn of regexp * int * int option
| `Seq of regexp * regexp
| `Set of CamomileLibrary.Type.USet.t
| `String of CamomileLibrary.Type.UChar.t list ]
type match_semantics = [ `First | `Longest | `Shortest ]
val no_group :
CamomileLibrary.Type.URe.regexp ->
CamomileLibrary.Type.URe.regexp
module type Type =
sig
type text
type index
type compiled_regexp
module SubText :
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = text
type ur_index = index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
val compile :
CamomileLibrary.Type.URe.regexp ->
CamomileLibrary.Type.URe.Type.compiled_regexp
val regexp_match :
?sem:CamomileLibrary.Type.URe.match_semantics ->
CamomileLibrary.Type.URe.Type.compiled_regexp ->
CamomileLibrary.Type.URe.Type.text ->
CamomileLibrary.Type.URe.Type.index ->
CamomileLibrary.Type.URe.Type.SubText.t option array option
val string_match :
CamomileLibrary.Type.URe.Type.compiled_regexp ->
CamomileLibrary.Type.URe.Type.text ->
CamomileLibrary.Type.URe.Type.index -> bool
val search_forward :
?sem:CamomileLibrary.Type.URe.match_semantics ->
CamomileLibrary.Type.URe.Type.compiled_regexp ->
CamomileLibrary.Type.URe.Type.text ->
CamomileLibrary.Type.URe.Type.index ->
CamomileLibrary.Type.URe.Type.SubText.t option array option
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
type index = Text.index
type compiled_regexp
module SubText :
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = text
type ur_index = index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
val compile : regexp -> compiled_regexp
val regexp_match :
?sem:match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
val string_match : compiled_regexp -> text -> index -> bool
val search_forward :
?sem:match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
end
end
module UCharInfo : UCharInfo.Type
module UNF :
sig
module type Type = UNF.Type
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
class nfd :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
class nfc :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
class nfkd :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
class nfkc :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
val nfd : text -> text
val nfkd : text -> text
val nfc : text -> text
val nfkc : text -> text
module NFCBuf :
sig
type buf
val create : int -> buf
val contents : buf -> text
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> text -> unit
val add_buffer : buf -> buf -> unit
end
val nfc_append : text -> text -> text
val put_nfd : XString.t -> text -> unit
val put_nfkd : XString.t -> text -> unit
val put_nfc : XString.t -> text -> unit
val put_nfkc : XString.t -> text -> unit
type index = Text.index
val nfd_inc :
text ->
index ->
([ `Inc of UChar.t list * index * 'a lazy_t ] as 'a)
val canon_compare : text -> text -> int
val nfd_decompose : UChar.t -> UChar.t list
val nfkd_decompose : UChar.t -> UChar.t list
end
end
module UCol :
sig
type variable_option =
[ `Blanked | `Non_ignorable | `Shift_Trimmed | `Shifted ]
type precision =
[ `Primary | `Quaternary | `Secondary | `Tertiary ]
module type Type = UCol.Type
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
type index = Text.index
val compare :
?locale:string ->
?prec:UCol.precision ->
?variable:UCol.variable_option -> text -> text -> int
val sort_key :
?locale:string ->
?prec:UCol.precision ->
?variable:UCol.variable_option -> text -> string
val compare_with_key :
?locale:string ->
?prec:UCol.precision ->
?variable:UCol.variable_option -> string -> text -> int
val search_with_key :
?locale:string ->
?prec:UCol.precision ->
?variable:UCol.variable_option ->
string -> text -> index -> index * index
val search :
?locale:string ->
?prec:UCol.precision ->
?variable:UCol.variable_option ->
text -> text -> index -> index * index
end
end
module CaseMap :
sig
module type Type = CaseMap.Type
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
val lowercase : ?locale:string -> text -> text
val uppercase : ?locale:string -> text -> text
val titlecase : ?locale:string -> text -> text
val casefolding : text -> text
val compare_caseless : text -> text -> int
end
end
module UReStr : UReStr.Interface
module StringPrep :
sig
module type Type = StringPrep.Type
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
exception Prohibited of UChar.t
exception Bad_bidi
type profile =
[ `Iscsi
| `Mib
| `Nameprep
| `Nodeprep
| `Resourceprep
| `Saslprep
| `Trace ]
val stringprep : profile -> text -> text
end
end
end
module Make :
functor (Config : ConfigInt.Type) ->
sig
module OOChannel :
sig
class type ['a] obj_input_channel =
object
method close_in : unit -> unit
method get : unit -> 'a
end
class type ['a] obj_output_channel =
object
method close_out : unit -> unit
method flush : unit -> unit
method put : 'a -> unit
end
class ['a] channel_of_stream :
'a Stream.t -> ['a] obj_input_channel
val stream_of_channel : 'a #obj_input_channel -> 'a Stream.t
class type char_input_channel =
object
method close_in : unit -> unit
method input : string -> int -> int -> int
end
class type char_output_channel =
object
method close_out : unit -> unit
method flush : unit -> unit
method output : string -> int -> int -> int
end
class char_input_channel_of :
char #obj_input_channel -> char_input_channel
class char_obj_input_channel_of :
char_input_channel -> [char] obj_input_channel
class char_output_channel_of :
char #obj_output_channel -> char_output_channel
class char_obj_output_channel_of :
char_output_channel -> [char] obj_output_channel
class of_in_channel : in_channel -> char_input_channel
class of_out_channel : out_channel -> char_output_channel
end
module UChar :
sig
type t = UChar.t
exception Out_of_range
val char_of : t -> char
val of_char : char -> t
val code : t -> int
val chr : int -> t
external uint_code : t -> int = "%identity"
val chr_of_uint : int -> t
val eq : t -> t -> bool
val compare : t -> t -> int
type uchar = t
val int_of : uchar -> int
val of_int : int -> uchar
end
module USet :
sig
type t = USet.t
val empty : t
val is_empty : t -> bool
val mem : UChar.t -> t -> bool
val add : UChar.t -> t -> t
val add_range : UChar.t -> UChar.t -> t -> t
val singleton : UChar.t -> t
val remove : UChar.t -> t -> t
val remove_range : UChar.t -> UChar.t -> t -> t
val union : t -> t -> t
val inter : t -> t -> t
val diff : t -> t -> t
val compl : t -> t
val compare : t -> t -> int
val equal : t -> t -> bool
val subset : t -> t -> bool
val from : UChar.t -> t -> t
val after : UChar.t -> t -> t
val until : UChar.t -> t -> t
val before : UChar.t -> t -> t
val iter : (UChar.t -> unit) -> t -> unit
val iter_range : (UChar.t -> UChar.t -> unit) -> t -> unit
val fold : (UChar.t -> 'a -> 'a) -> t -> 'a -> 'a
val fold_range :
(UChar.t -> UChar.t -> 'a -> 'a) -> t -> 'a -> 'a
val for_all : (UChar.t -> bool) -> t -> bool
val exists : (UChar.t -> bool) -> t -> bool
val filter : (UChar.t -> bool) -> t -> t
val partition : (UChar.t -> bool) -> t -> t * t
val cardinal : t -> int
val elements : t -> UChar.t list
val ranges : t -> (UChar.t * UChar.t) list
val min_elt : t -> UChar.t
val max_elt : t -> UChar.t
val choose : t -> UChar.t
val uset_of_iset : ISet.t -> t
val iset_of_uset : t -> ISet.t
end
module UMap :
sig
type 'a t = 'a UMap.t
val empty : 'a t
val is_empty : 'a t -> bool
val add : ?eq:('a -> 'a -> bool) -> UChar.t -> 'a -> 'a t -> 'a t
val add_range :
?eq:('a -> 'a -> bool) ->
UChar.t -> UChar.t -> 'a -> 'a t -> 'a t
val find : UChar.t -> 'a t -> 'a
val remove : UChar.t -> 'a t -> 'a t
val remove_range : UChar.t -> UChar.t -> 'a t -> 'a t
val from : UChar.t -> 'a t -> 'a t
val after : UChar.t -> 'a t -> 'a t
val until : UChar.t -> 'a t -> 'a t
val before : UChar.t -> 'a t -> 'a t
val mem : UChar.t -> 'a t -> bool
val iter : (UChar.t -> 'a -> unit) -> 'a t -> unit
val iter_range :
(UChar.t -> UChar.t -> 'a -> unit) -> 'a t -> unit
val map : ?eq:('b -> 'b -> bool) -> ('a -> 'b) -> 'a t -> 'b t
val mapi :
?eq:('b -> 'b -> bool) -> (UChar.t -> 'a -> 'b) -> 'a t -> 'b t
val fold : (UChar.t -> 'b -> 'a -> 'a) -> 'b t -> 'a -> 'a
val fold_range :
(UChar.t -> UChar.t -> 'b -> 'a -> 'a) -> 'b t -> 'a -> 'a
val set_to_map : USet.t -> 'a -> 'a t
val domain : 'a t -> USet.t
val map_to_set : ('a -> bool) -> 'a t -> USet.t
val umap_of_imap : 'a IMap.t -> 'a t
val imap_of_umap : 'a t -> 'a IMap.t
end
module UCharTbl :
sig
type 'a tbl = 'a UCharTbl.tbl
type 'a t = 'a tbl
val get : 'a tbl -> UChar.t -> 'a
module type Type =
sig
type elt
type t = elt tbl
val get : elt tbl -> UChar.t -> elt
val of_map : elt -> elt UMap.t -> t
end
module Make :
functor (H : Hashtbl.HashedType) ->
sig
type elt = H.t
type t = elt tbl
val get : elt tbl -> UChar.t -> elt
val of_map : elt -> elt UMap.t -> t
end
module Bool :
sig
type t = UCharTbl.Bool.t
val get : t -> UChar.t -> bool
val of_set : USet.t -> t
end
module Bits :
sig
type t = UCharTbl.Bits.t
val of_map : int -> int UMap.t -> t
val get : t -> UChar.t -> int
end
module Bytes :
sig
type t = UCharTbl.Bytes.t
val of_map : int -> int UMap.t -> t
val get : t -> UChar.t -> int
end
module Char :
sig
type t = UCharTbl.Char.t
val of_map : char -> char UMap.t -> t
val get : t -> UChar.t -> char
end
end
module UnicodeString :
sig
module type Type =
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val next : t -> index -> index
val prev : t -> index -> index
val out_of_range : t -> index -> bool
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
val first : t -> index
val last : t -> index
val move : t -> index -> int -> index
val compare_index : t -> index -> index -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
end
end
module UText :
sig
type mutability = [ `Immutable | `Mutable ]
type 'a text = 'a UText.text
type utext = [ `Immutable ] text
type ustring = [ `Mutable ] text
type t = utext
val utext_of_ustring : ustring -> utext
val ustring_of_utext : utext -> ustring
val get : 'a text -> int -> UChar.t
val set : ustring -> int -> UChar.t -> unit
type index = UText.index
val look : 'a text -> index -> UChar.t
val nth : 'a text -> int -> index
val first : 'a text -> index
val last : 'a text -> index
val out_of_range : 'a text -> index -> bool
val compare_index : 'a text -> index -> index -> int
val next : 'a text -> index -> index
val prev : 'a text -> index -> index
val move : 'a text -> index -> int -> index
val length : 'a text -> int
val of_string : string -> utext
val init : int -> (int -> UChar.t) -> utext
val init_ustring : int -> (int -> UChar.t) -> ustring
val make : int -> UChar.t -> ustring
val copy : ustring -> ustring
val sub : 'a text -> int -> int -> 'a text
val fill : ustring -> int -> int -> UChar.t -> unit
val blit : 'a text -> int -> ustring -> int -> int -> unit
val append : 'a text -> 'b text -> 'a text
val iter : (UChar.t -> unit) -> 'a text -> unit
val compare : 'a text -> 'b text -> int
module Buf :
sig
type buf = UText.Buf.buf
val create : int -> buf
val contents : buf -> t
val contents_string : buf -> ustring
val length : buf -> int
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> 'a text -> unit
val add_buffer : buf -> buf -> unit
end
end
module XString :
sig
type xstring = XString.xstring
type t = xstring
val get : xstring -> int -> UChar.t
val set : xstring -> int -> UChar.t -> unit
val length : xstring -> int
val init : int -> (int -> UChar.t) -> xstring
type index = XString.index
val look : xstring -> index -> UChar.t
val nth : xstring -> int -> index
val first : xstring -> index
val last : xstring -> index
val out_of_range : xstring -> index -> bool
val next : xstring -> index -> index
val prev : xstring -> index -> index
val move : xstring -> index -> int -> index
val compare_index : xstring -> index -> index -> int
val make : ?bufsize:int -> int -> UChar.t -> xstring
val clear : xstring -> unit
val reset : xstring -> unit
val copy : xstring -> xstring
val sub : xstring -> int -> int -> xstring
val add_char : xstring -> UChar.t -> unit
val add_text : xstring -> 'a UText.text -> unit
val add_xstring : xstring -> xstring -> unit
val shrink : xstring -> int -> unit
val append : xstring -> xstring -> xstring
val utext_of : xstring -> UText.t
val ustring_of : xstring -> UText.ustring
val iter : (UChar.t -> unit) -> xstring -> unit
val compare : t -> t -> int
module Buf :
sig
type buf = XString.Buf.buf
val create : int -> buf
val contents : buf -> t
val length : buf -> int
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
end
module SubText :
sig
module type Type =
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text
type ur_index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type t = SubText.Make(Text).t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index = SubText.Make(Text).index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf = SubText.Make(Text).Buf.buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = Text.t
type ur_index = Text.index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
end
module ULine :
sig
type separator = [ `CR | `CRLF | `LF | `LS | `NEL | `PS ]
class input :
separator ->
UChar.t #OOChannel.obj_input_channel ->
[UChar.t] OOChannel.obj_input_channel
class output :
separator ->
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
module type Type =
sig
type text
class input_line :
UChar.t #OOChannel.obj_input_channel ->
[text] OOChannel.obj_input_channel
class output_line :
?sp:separator ->
UChar.t #OOChannel.obj_output_channel ->
[text] OOChannel.obj_output_channel
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
class input_line :
UChar.t #OOChannel.obj_input_channel ->
[text] OOChannel.obj_input_channel
class output_line :
?sp:separator ->
UChar.t #OOChannel.obj_output_channel ->
[text] OOChannel.obj_output_channel
end
end
module Locale :
sig
type t = string
val read : string -> string -> (in_channel -> 'a) -> string -> 'a
val contain : string -> string -> bool
end
module CharEncoding :
sig
exception Malformed_code
exception Out_of_range
type t = CharEncoding.Configure(Config).t
val automatic : string -> t list -> t -> t
val new_enc : string -> t -> unit
val alias : string -> string -> unit
val of_name : string -> t
val name_of : t -> string
val ascii : t
val latin1 : t
val utf8 : t
val utf16 : t
val utf16be : t
val utf16le : t
val utf32 : t
val utf32be : t
val utf32le : t
val ucs4 : t
val recode_string : in_enc:t -> out_enc:t -> string -> string
class uchar_input_channel_of :
t ->
OOChannel.char_input_channel ->
[UChar.t] OOChannel.obj_input_channel
class uchar_output_channel_of :
t ->
OOChannel.char_output_channel ->
[UChar.t] OOChannel.obj_output_channel
class convert_uchar_input :
t ->
UChar.t OOChannel.obj_input_channel ->
OOChannel.char_input_channel
class convert_uchar_output :
t ->
UChar.t OOChannel.obj_output_channel ->
OOChannel.char_output_channel
class convert_input :
in_enc:t ->
out_enc:t ->
OOChannel.char_input_channel -> OOChannel.char_input_channel
class convert_output :
in_enc:t ->
out_enc:t ->
OOChannel.char_output_channel -> OOChannel.char_output_channel
class out_channel :
t -> out_channel -> [UChar.t] OOChannel.obj_output_channel
class in_channel :
t -> in_channel -> [UChar.t] OOChannel.obj_input_channel
val ustream_of : t -> char Stream.t -> UChar.t Stream.t
val char_stream_of : t -> UChar.t Stream.t -> char Stream.t
module type Type =
sig
type text
val decode : t -> string -> text
val encode : t -> text -> string
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
val decode : t -> string -> text
val encode : t -> text -> string
end
end
module UTF8 :
sig
type t = string
exception Malformed_code
val validate : t -> unit
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index = int
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val look : t -> index -> UChar.t
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf = Buffer.t
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
end
module UTF16 :
sig
type t =
(int, Bigarray.int16_unsigned_elt, Bigarray.c_layout)
Bigarray.Array1.t
exception Malformed_code
val validate : t -> unit
val get : t -> int -> UChar.t
exception Out_of_range
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index = int
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val look : t -> index -> UChar.t
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf = UTF16.Buf.buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
end
module UCS4 :
sig
type t =
(int32, Bigarray.int32_elt, Bigarray.c_layout)
Bigarray.Array1.t
exception Malformed_code
val validate : t -> unit
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index = int
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val look : t -> index -> UChar.t
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf = UCS4.Buf.buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
end
module UPervasives :
sig
type uchar = UChar.t
val int_of_uchar : uchar -> int
val uchar_of_int : int -> uchar
val escaped_uchar : uchar -> string
val escaped_utf8 : string -> string
val printer_utf8 : Format.formatter -> string -> unit
val printer_uchar : Format.formatter -> uchar -> unit
end
module URe :
sig
type regexp =
[ `After of regexp
| `Alt of regexp * regexp
| `Before of regexp
| `BoS
| `EoS
| `Epsilon
| `Group of regexp
| `OneChar
| `Rep of regexp
| `Repn of regexp * int * int option
| `Seq of regexp * regexp
| `Set of USet.t
| `String of UChar.t list ]
type match_semantics = [ `First | `Longest | `Shortest ]
val no_group : regexp -> regexp
module type Type =
sig
type text
type index
type compiled_regexp
module SubText :
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = text
type ur_index = index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
val compile : regexp -> compiled_regexp
val regexp_match :
?sem:match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
val string_match : compiled_regexp -> text -> index -> bool
val search_forward :
?sem:match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
type index = Text.index
type compiled_regexp = URe.Make(Text).compiled_regexp
module SubText :
sig
type t = URe.Make(Text).SubText.t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index = URe.Make(Text).SubText.index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf = URe.Make(Text).SubText.Buf.buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = text
type ur_index = index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
val compile : regexp -> compiled_regexp
val regexp_match :
?sem:match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
val string_match : compiled_regexp -> text -> index -> bool
val search_forward :
?sem:match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
end
end
module UCharInfo :
sig
type general_category_type =
[ `Cc
| `Cf
| `Cn
| `Co
| `Cs
| `Ll
| `Lm
| `Lo
| `Lt
| `Lu
| `Mc
| `Me
| `Mn
| `Nd
| `Nl
| `No
| `Pc
| `Pd
| `Pe
| `Pf
| `Pi
| `Po
| `Ps
| `Sc
| `Sk
| `Sm
| `So
| `Zl
| `Zp
| `Zs ]
val general_category : UChar.t -> general_category_type
val load_general_category_map :
unit -> general_category_type UMap.t
type character_property_type =
[ `Alphabetic
| `Ascii_Hex_Digit
| `Bidi_Control
| `Default_Ignorable_Code_Point
| `Deprecated
| `Diacritic
| `Extender
| `Grapheme_Base
| `Grapheme_Extend
| `Grapheme_Link
| `Hex_Digit
| `Hyphen
| `IDS_Binary_Operator
| `IDS_Trinary_Operator
| `ID_Continue
| `ID_Start
| `Ideographic
| `Logical_Order_Exception
| `Lowercase
| `Math
| `Noncharacter_Code_Point
| `Other_Alphabetic
| `Other_Grapheme_Extend
| `Other_Lowercase
| `Other_Math
| `Other_Uppercase
| `Other_default_Ignorable_Code_Point
| `Quotation_Mark
| `Radical
| `Soft_Dotted
| `Terminal_Punctuation
| `Unified_Ideograph
| `Uppercase
| `White_Space
| `XID_Continue
| `XID_Start ]
val load_property_tbl :
character_property_type -> UCharTbl.Bool.t
val load_property_tbl_by_name : string -> UCharTbl.Bool.t
val load_property_set : character_property_type -> USet.t
val load_property_set_by_name : string -> USet.t
type script_type =
[ `Arabic
| `Armenian
| `Bengali
| `Bopomofo
| `Buhid
| `Canadian_Aboriginal
| `Cherokee
| `Common
| `Cyrillic
| `Deseret
| `Devanagari
| `Ethiopic
| `Georgian
| `Gothic
| `Greek
| `Gujarati
| `Gurmukhi
| `Han
| `Hangul
| `Hanunoo
| `Hebrew
| `Hiragana
| `Inherited
| `Kannada
| `Katakana
| `Khmer
| `Lao
| `Latin
| `Malayalam
| `Mongolian
| `Myanmar
| `Ogham
| `Old_Italic
| `Oriya
| `Runic
| `Sinhala
| `Syriac
| `Tagalog
| `Tagbanwa
| `Tamil
| `Telugu
| `Thaana
| `Thai
| `Tibetan
| `Yi ]
val script : UChar.t -> script_type
val load_script_map : unit -> script_type UMap.t
type version_type =
[ `Nc | `v1_0 | `v1_1 | `v2_0 | `v2_1 | `v3_0 | `v3_1 | `v3_2 ]
val age : UChar.t -> version_type
val older : version_type -> version_type -> bool
val load_to_lower1_tbl : unit -> UChar.t UCharTbl.t
val load_to_upper1_tbl : unit -> UChar.t UCharTbl.t
val load_to_title1_tbl : unit -> UChar.t UCharTbl.t
type casemap_condition =
[ `AfterSoftDotted
| `BeforeDot
| `FinalSigma
| `Locale of string
| `MoreAbove
| `Not of casemap_condition ]
type special_casing_property =
UCharInfo.Make(Config).special_casing_property = {
lower : UChar.t list;
title : UChar.t list;
upper : UChar.t list;
condition : casemap_condition list;
}
val load_conditional_casing_tbl :
unit -> special_casing_property list UCharTbl.t
val load_casefolding_tbl : unit -> UChar.t list UCharTbl.t
val combined_class : UChar.t -> int
type decomposition_type =
[ `Canon
| `Circle
| `Compat
| `Final
| `Font
| `Fraction
| `Initial
| `Isolated
| `Medial
| `Narrow
| `NoBreak
| `Small
| `Square
| `Sub
| `Super
| `Vertical
| `Wide ]
type decomposition_info =
[ `Canonform
| `Composite of decomposition_type * UChar.t list
| `HangulSyllable ]
val load_decomposition_tbl :
unit -> decomposition_info UCharTbl.t
val load_composition_tbl :
unit -> (UChar.t * UChar.t) list UCharTbl.t
val load_composition_exclusion_tbl : unit -> UCharTbl.Bool.t
end
module UNF :
sig
module type Type = UNF.Type
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
class nfd :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
class nfc :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
class nfkd :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
class nfkc :
UChar.t #OOChannel.obj_output_channel ->
[UChar.t] OOChannel.obj_output_channel
val nfd : text -> text
val nfkd : text -> text
val nfc : text -> text
val nfkc : text -> text
module NFCBuf :
sig
type buf = UNF.Make(Config)(Text).NFCBuf.buf
val create : int -> buf
val contents : buf -> text
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> text -> unit
val add_buffer : buf -> buf -> unit
end
val nfc_append : text -> text -> text
val put_nfd : XString.t -> text -> unit
val put_nfkd : XString.t -> text -> unit
val put_nfc : XString.t -> text -> unit
val put_nfkc : XString.t -> text -> unit
type index = Text.index
val nfd_inc :
text ->
index ->
([ `Inc of UChar.t list * index * 'a lazy_t ] as 'a)
val canon_compare : text -> text -> int
val nfd_decompose : UChar.t -> UChar.t list
val nfkd_decompose : UChar.t -> UChar.t list
end
end
module UCol :
sig
type variable_option =
[ `Blanked | `Non_ignorable | `Shift_Trimmed | `Shifted ]
type precision =
[ `Primary | `Quaternary | `Secondary | `Tertiary ]
module type Type = UCol.Type
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
type index = Text.index
val compare :
?locale:string ->
?prec:UCol.precision ->
?variable:UCol.variable_option -> text -> text -> int
val sort_key :
?locale:string ->
?prec:UCol.precision ->
?variable:UCol.variable_option -> text -> string
val compare_with_key :
?locale:string ->
?prec:UCol.precision ->
?variable:UCol.variable_option -> string -> text -> int
val search_with_key :
?locale:string ->
?prec:UCol.precision ->
?variable:UCol.variable_option ->
string -> text -> index -> index * index
val search :
?locale:string ->
?prec:UCol.precision ->
?variable:UCol.variable_option ->
text -> text -> index -> index * index
end
end
module CaseMap :
sig
module type Type = CaseMap.Type
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
val lowercase : ?locale:string -> text -> text
val uppercase : ?locale:string -> text -> text
val titlecase : ?locale:string -> text -> text
val casefolding : text -> text
val compare_caseless : text -> text -> int
end
end
module UReStr :
sig
type regexp = URe.regexp
val regexp : string -> regexp
val quote : string -> string
val regexp_string : string -> regexp
module type Type =
sig
type text
type index
type compiled_regexp
module SubText :
sig
type t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = text
type ur_index = index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
val compile : regexp -> compiled_regexp
val regexp_match :
?sem:URe.match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
val string_match : compiled_regexp -> text -> index -> bool
val search_forward :
?sem:URe.match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
end
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
type index = Text.index
type compiled_regexp =
UReStr.Configure(Config).Make(Text).compiled_regexp
module SubText :
sig
type t = UReStr.Configure(Config).Make(Text).SubText.t
val get : t -> int -> UChar.t
val init : int -> (int -> UChar.t) -> t
val length : t -> int
type index =
UReStr.Configure(Config).Make(Text).SubText.index
val look : t -> index -> UChar.t
val nth : t -> int -> index
val first : t -> index
val last : t -> index
val next : t -> index -> index
val prev : t -> index -> index
val move : t -> index -> int -> index
val out_of_range : t -> index -> bool
val compare_index : t -> index -> index -> int
val iter : (UChar.t -> unit) -> t -> unit
val compare : t -> t -> int
module Buf :
sig
type buf =
UReStr.Configure(Config).Make(Text).SubText.Buf.buf
val create : int -> buf
val contents : buf -> t
val clear : buf -> unit
val reset : buf -> unit
val add_char : buf -> UChar.t -> unit
val add_string : buf -> t -> unit
val add_buffer : buf -> buf -> unit
end
type ur_text = text
type ur_index = index
val refer : ur_text -> ur_index -> ur_index -> t
val excerpt : t -> ur_text
val context : t -> ur_text * ur_index * ur_index
val ur_index_of : t -> index -> ur_index
end
val compile : regexp -> compiled_regexp
val regexp_match :
?sem:URe.match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
val string_match : compiled_regexp -> text -> index -> bool
val search_forward :
?sem:URe.match_semantics ->
compiled_regexp ->
text -> index -> SubText.t option array option
end
end
module StringPrep :
sig
module type Type = StringPrep.Type
module Make :
functor (Text : UnicodeString.Type) ->
sig
type text = Text.t
exception Prohibited of UChar.t
exception Bad_bidi
type profile =
[ `Iscsi
| `Mib
| `Nameprep
| `Nodeprep
| `Resourceprep
| `Saslprep
| `Trace ]
val stringprep : profile -> text -> text
end
end
end
end`