sig   exception Malformed_code   exception Out_of_range   type t   val automatic :     string ->     CamomileLibrary.CharEncoding.Interface.t list ->     CamomileLibrary.CharEncoding.Interface.t ->     CamomileLibrary.CharEncoding.Interface.t   val new_enc : string -> CamomileLibrary.CharEncoding.Interface.t -> unit   val alias : string -> string -> unit   val of_name : string -> CamomileLibrary.CharEncoding.Interface.t   val name_of : CamomileLibrary.CharEncoding.Interface.t -> string   val ascii : CamomileLibrary.CharEncoding.Interface.t   val latin1 : CamomileLibrary.CharEncoding.Interface.t   val utf8 : CamomileLibrary.CharEncoding.Interface.t   val utf16 : CamomileLibrary.CharEncoding.Interface.t   val utf16be : CamomileLibrary.CharEncoding.Interface.t   val utf16le : CamomileLibrary.CharEncoding.Interface.t   val utf32 : CamomileLibrary.CharEncoding.Interface.t   val utf32be : CamomileLibrary.CharEncoding.Interface.t   val utf32le : CamomileLibrary.CharEncoding.Interface.t   val ucs4 : CamomileLibrary.CharEncoding.Interface.t   val recode_string :     in_enc:CamomileLibrary.CharEncoding.Interface.t ->     out_enc:CamomileLibrary.CharEncoding.Interface.t -> string -> string   class uchar_input_channel_of :     CamomileLibrary.CharEncoding.Interface.t ->     CamomileLibrary.OOChannel.char_input_channel ->     [CamomileLibrary.UChar.t] OOChannel.obj_input_channel   class uchar_output_channel_of :     CamomileLibrary.CharEncoding.Interface.t ->     CamomileLibrary.OOChannel.char_output_channel ->     [CamomileLibrary.UChar.t] OOChannel.obj_output_channel   class convert_uchar_input :     CamomileLibrary.CharEncoding.Interface.t ->     CamomileLibrary.UChar.t CamomileLibrary.OOChannel.obj_input_channel ->     OOChannel.char_input_channel   class convert_uchar_output :     CamomileLibrary.CharEncoding.Interface.t ->     CamomileLibrary.UChar.t CamomileLibrary.OOChannel.obj_output_channel ->     OOChannel.char_output_channel   class convert_input :     in_enc:CamomileLibrary.CharEncoding.Interface.t ->     out_enc:CamomileLibrary.CharEncoding.Interface.t ->     CamomileLibrary.OOChannel.char_input_channel ->     OOChannel.char_input_channel   class convert_output :     in_enc:CamomileLibrary.CharEncoding.Interface.t ->     out_enc:CamomileLibrary.CharEncoding.Interface.t ->     CamomileLibrary.OOChannel.char_output_channel ->     OOChannel.char_output_channel   class out_channel :     CamomileLibrary.CharEncoding.Interface.t ->     Pervasives.out_channel ->     [CamomileLibrary.UChar.t] OOChannel.obj_output_channel   class in_channel :     CamomileLibrary.CharEncoding.Interface.t ->     Pervasives.in_channel ->     [CamomileLibrary.UChar.t] OOChannel.obj_input_channel   val ustream_of :     CamomileLibrary.CharEncoding.Interface.t ->     char Stream.t -> CamomileLibrary.UChar.t Stream.t   val char_stream_of :     CamomileLibrary.CharEncoding.Interface.t ->     CamomileLibrary.UChar.t Stream.t -> char Stream.t   module type Type =     sig       type text       val decode :         CamomileLibrary.CharEncoding.Interface.t ->         string -> CamomileLibrary.CharEncoding.Interface.Type.text       val encode :         CamomileLibrary.CharEncoding.Interface.t ->         CamomileLibrary.CharEncoding.Interface.Type.text -> string     end   module Make :     functor (Text : UnicodeString.Type->       sig         type text = Text.t         val decode : t -> string -> text         val encode : t -> text -> string       end end