sig
type unicode_lexbuf = private {
mutable ulb_encoding : Netconversion.encoding;
mutable ulb_encoding_start : int;
mutable ulb_rawbuf : Bytes.t;
mutable ulb_rawbuf_len : int;
mutable ulb_rawbuf_end : int;
mutable ulb_rawbuf_const : bool;
mutable ulb_chars : int array;
mutable ulb_chars_pos : int array;
mutable ulb_chars_len : int;
mutable ulb_eof : bool;
mutable ulb_refill : Bytes.t -> int -> int -> int;
mutable ulb_enc_change_hook : Netulex.ULB.unicode_lexbuf -> unit;
mutable ulb_cursor : Bytes.t Netconversion.poly_cursor;
}
val from_function :
?raw_size:int ->
?char_size:int ->
?enc_change_hook:(Netulex.ULB.unicode_lexbuf -> unit) ->
refill:(Bytes.t -> int -> int -> int) ->
Netconversion.encoding -> Netulex.ULB.unicode_lexbuf
val from_in_obj_channel :
?raw_size:int ->
?char_size:int ->
?enc_change_hook:(Netulex.ULB.unicode_lexbuf -> unit) ->
Netconversion.encoding ->
Netchannels.in_obj_channel -> Netulex.ULB.unicode_lexbuf
val from_string :
?enc_change_hook:(Netulex.ULB.unicode_lexbuf -> unit) ->
Netconversion.encoding -> string -> Netulex.ULB.unicode_lexbuf
val from_bytes :
?enc_change_hook:(Netulex.ULB.unicode_lexbuf -> unit) ->
Netconversion.encoding -> Bytes.t -> Netulex.ULB.unicode_lexbuf
val from_bytes_inplace :
?enc_change_hook:(Netulex.ULB.unicode_lexbuf -> unit) ->
Netconversion.encoding -> Bytes.t -> Netulex.ULB.unicode_lexbuf
val delete : int -> Netulex.ULB.unicode_lexbuf -> unit
val refill : Netulex.ULB.unicode_lexbuf -> unit
val set_encoding :
Netconversion.encoding -> Netulex.ULB.unicode_lexbuf -> unit
val close : Netulex.ULB.unicode_lexbuf -> unit
val utf8_sub_string : int -> int -> Netulex.ULB.unicode_lexbuf -> string
val utf8_sub_string_length :
int -> int -> Netulex.ULB.unicode_lexbuf -> int
end