(** All-in-one, configure once at beginning module*) module type Type = sig module ISet : sig #include "iSet.mli" end module IMap : sig #include "iMap.mli" end module XArray : sig #include "xArray.mli" end module OOChannel : sig #include "oOChannel.mli" end module UChar : sig #include "uChar.mli" end module USet : sig #include "uSet.mli" end module UMap : sig #include "uMap.mli" end module UCharTbl : sig #include "uCharTbl.mli" end module UnicodeString : sig #include "unicodeString.mli" end module UText : sig #include "uText.mli" end module XString : sig #include "xString.mli" end module SubText : sig #include "subText.mli" end module ULine : sig #include "uLine.mli" end module Locale : sig #include "locale.mli" end module CharEncoding : CharEncoding.Interface module UTF8 : sig #include "uTF8.mli" end module UTF16 : sig #include "uTF16.mli" end module UCS4 : sig #include "uCS4.mli" end module UPervasives : sig #include "uPervasives.mli" end module URe : sig #include "uRe.mli" end module UCharInfo : UCharInfo.Type module UNF : sig module type Type = UNF.Type module Make (Text : UnicodeString.Type) : Type with type text = Text.t and type index = Text.index end module UCol : sig (** How variables are handled *) type variable_option = [ `Blanked | `Non_ignorable | `Shifted | `Shift_Trimmed ] (** Strength of comparison. For European languages, each strength roughly means as `Primary : Ignore accents and case `Secondary : Ignore case but accents are counted in. `Tertiary : Accents and case are counted in. For the case of `Shifted, `Shift_Trimmed, there is the fourth strength. `Quaternary : Variables such as - (hyphen) are counted in. *) type precision = [ `Primary | `Secondary | `Tertiary | `Quaternary ] module type Type = UCol.Type module Make (Text : UnicodeString.Type) : Type with type text = Text.t and type index = Text.index end module CaseMap : sig module type Type = CaseMap.Type module Make (Text : UnicodeString.Type) : (Type with type text = Text.t) end module UReStr : UReStr.Interface end module Make(Config : ConfigInt.Type) = struct module ISet = ISet module IMap = IMap module XArray = XArray module OOChannel = OOChannel module UChar = UChar module USet = USet module UMap = UMap module UCharTbl = UCharTbl module UnicodeString = UnicodeString module UText = UText module XString = XString module SubText = SubText module ULine = ULine module Locale = Locale module CharEncoding = CharEncoding.Configure(Config) module UTF8 = UTF8 module UTF16 = UTF16 module UCS4 = UCS4 module UPervasives = UPervasives module URe = URe module UCharInfo = UCharInfo.Make(Config) module UNF = struct module type Type = UNF.Type module Make = UNF.Make(Config) end module UCol = struct type variable_option = [ `Blanked | `Non_ignorable | `Shifted | `Shift_Trimmed ] type precision = [ `Primary | `Secondary | `Tertiary | `Quaternary ] module type Type = UCol.Type module Make = UCol.Make(Config) end module CaseMap = struct module type Type = CaseMap.Type module Make = CaseMap.Make(Config) end module UReStr = UReStr.Configure(Config) end