sig   type t = int   val of_native_char : char -> t option   val of_int : int -> t option   val to_int : t -> int   val size : t -> int   val write_to_native_string :     t -> buf:String.t -> index:int -> (int, [> `out_of_bounds ]) result   val to_native_string : t -> String.t   val read_from_native_string : buf:String.t -> index:int -> (t * int) option   val to_string_hum : t -> String.t   val compare : t -> t -> int   val is_whitespace : t -> bool end