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