<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 modules" rel=Appendix href="index_modules.html"> <link title="Index of module types" rel=Appendix href="index_module_types.html"> <link title="Binable" rel="Chapter" href="Binable.html"> <link title="Nat0" rel="Chapter" href="Nat0.html"> <link title="Common" rel="Chapter" href="Common.html"> <link title="Unsafe_common" rel="Chapter" href="Unsafe_common.html"> <link title="Unsafe_write_c" rel="Chapter" href="Unsafe_write_c.html"> <link title="Unsafe_read_c" rel="Chapter" href="Unsafe_read_c.html"> <link title="Size" rel="Chapter" href="Size.html"> <link title="Write_ml" rel="Chapter" href="Write_ml.html"> <link title="Read_ml" rel="Chapter" href="Read_ml.html"> <link title="Write_c" rel="Chapter" href="Write_c.html"> <link title="Read_c" rel="Chapter" href="Read_c.html"> <link title="Std" rel="Chapter" href="Std.html"> <link title="Type_class" rel="Chapter" href="Type_class.html"> <link title="Map_to_safe" rel="Chapter" href="Map_to_safe.html"> <link title="Utils" rel="Chapter" href="Utils.html"><title>Type_class</title> </head> <body> <code class="code"><span class="keyword">sig</span><br> <span class="keyword">type</span> <span class="keywordsign">'</span>a writer = {<br> size : <span class="keywordsign">'</span>a <span class="constructor">Size</span>.sizer;<br> write : <span class="keywordsign">'</span>a <span class="constructor">Write_ml</span>.writer;<br> unsafe_write : <span class="keywordsign">'</span>a <span class="constructor">Unsafe_write_c</span>.writer;<br> }<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a reader = {<br> read : <span class="keywordsign">'</span>a <span class="constructor">Read_ml</span>.reader;<br> unsafe_read : <span class="keywordsign">'</span>a <span class="constructor">Unsafe_read_c</span>.reader;<br> unsafe_vtag_read : (int <span class="keywordsign">-></span> <span class="keywordsign">'</span>a) <span class="constructor">Unsafe_read_c</span>.reader;<br> }<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a t = {<br> writer : <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.writer;<br> reader : <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.reader;<br> }<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a writer0 = <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.writer<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a reader0 = <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.reader<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a t0 = <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.t<br> <span class="keyword">module</span> <span class="constructor">S1</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) writer = <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.writer0 <span class="keywordsign">-></span> <span class="keywordsign">'</span>b <span class="constructor">Type_class</span>.writer0<br> <span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) reader = <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.reader0 <span class="keywordsign">-></span> <span class="keywordsign">'</span>b <span class="constructor">Type_class</span>.reader0<br> <span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) t = <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.t0 <span class="keywordsign">-></span> <span class="keywordsign">'</span>b <span class="constructor">Type_class</span>.t0<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">S2</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c) writer =<br> <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.writer0 <span class="keywordsign">-></span> (<span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.writer<br> <span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c) reader =<br> <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.reader0 <span class="keywordsign">-></span> (<span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.reader<br> <span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c) t = <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.t0 <span class="keywordsign">-></span> (<span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.t<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">S3</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c, <span class="keywordsign">'</span>d) writer =<br> <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.writer0 <span class="keywordsign">-></span> (<span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c, <span class="keywordsign">'</span>d) <span class="constructor">Type_class</span>.<span class="constructor">S2</span>.writer<br> <span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c, <span class="keywordsign">'</span>d) reader =<br> <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.reader0 <span class="keywordsign">-></span> (<span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c, <span class="keywordsign">'</span>d) <span class="constructor">Type_class</span>.<span class="constructor">S2</span>.reader<br> <span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c, <span class="keywordsign">'</span>d) t =<br> <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.t0 <span class="keywordsign">-></span> (<span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c, <span class="keywordsign">'</span>d) <span class="constructor">Type_class</span>.<span class="constructor">S2</span>.t<br> <span class="keyword">end</span><br> <span class="keyword">val</span> bin_writer_unit : unit <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_unit : unit <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_unit : unit <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_bool : bool <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_bool : bool <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_bool : bool <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_string : string <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_string : string <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_string : string <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_char : char <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_char : char <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_char : char <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_int : int <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_int : int <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_int : int <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_float : float <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_float : float <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_float : float <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_int32 : int32 <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_int32 : int32 <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_int32 : int32 <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_int64 : int64 <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_int64 : int64 <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_int64 : int64 <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_nativeint : nativeint <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_nativeint : nativeint <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_nativeint : nativeint <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_nat0 : <span class="constructor">Nat0</span>.t <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_nat0 : <span class="constructor">Nat0</span>.t <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_nat0 : <span class="constructor">Nat0</span>.t <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_ref : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a <span class="constructor">Pervasives</span>.ref) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.writer<br> <span class="keyword">val</span> bin_reader_ref : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a <span class="constructor">Pervasives</span>.ref) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.reader<br> <span class="keyword">val</span> bin_ref : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a <span class="constructor">Pervasives</span>.ref) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.t<br> <span class="keyword">val</span> bin_writer_lazy : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a lazy_t) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.writer<br> <span class="keyword">val</span> bin_reader_lazy : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a lazy_t) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.reader<br> <span class="keyword">val</span> bin_lazy : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a lazy_t) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.t<br> <span class="keyword">val</span> bin_writer_option : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a option) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.writer<br> <span class="keyword">val</span> bin_reader_option : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a option) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.reader<br> <span class="keyword">val</span> bin_option : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a option) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.t<br> <span class="keyword">val</span> bin_writer_pair : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>a * <span class="keywordsign">'</span>b) <span class="constructor">Type_class</span>.<span class="constructor">S2</span>.writer<br> <span class="keyword">val</span> bin_reader_pair : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>a * <span class="keywordsign">'</span>b) <span class="constructor">Type_class</span>.<span class="constructor">S2</span>.reader<br> <span class="keyword">val</span> bin_pair : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>a * <span class="keywordsign">'</span>b) <span class="constructor">Type_class</span>.<span class="constructor">S2</span>.t<br> <span class="keyword">val</span> bin_writer_triple : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c, <span class="keywordsign">'</span>a * <span class="keywordsign">'</span>b * <span class="keywordsign">'</span>c) <span class="constructor">Type_class</span>.<span class="constructor">S3</span>.writer<br> <span class="keyword">val</span> bin_reader_triple : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c, <span class="keywordsign">'</span>a * <span class="keywordsign">'</span>b * <span class="keywordsign">'</span>c) <span class="constructor">Type_class</span>.<span class="constructor">S3</span>.reader<br> <span class="keyword">val</span> bin_triple : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, <span class="keywordsign">'</span>c, <span class="keywordsign">'</span>a * <span class="keywordsign">'</span>b * <span class="keywordsign">'</span>c) <span class="constructor">Type_class</span>.<span class="constructor">S3</span>.t<br> <span class="keyword">val</span> bin_writer_list : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a list) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.writer<br> <span class="keyword">val</span> bin_reader_list : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a list) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.reader<br> <span class="keyword">val</span> bin_list : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a list) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.t<br> <span class="keyword">val</span> bin_writer_array : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a array) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.writer<br> <span class="keyword">val</span> bin_reader_array : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a array) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.reader<br> <span class="keyword">val</span> bin_array : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a array) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.t<br> <span class="keyword">val</span> bin_writer_hashtbl : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) <span class="constructor">Hashtbl</span>.t) <span class="constructor">Type_class</span>.<span class="constructor">S2</span>.writer<br> <span class="keyword">val</span> bin_reader_hashtbl : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) <span class="constructor">Hashtbl</span>.t) <span class="constructor">Type_class</span>.<span class="constructor">S2</span>.reader<br> <span class="keyword">val</span> bin_hashtbl : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b, (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) <span class="constructor">Hashtbl</span>.t) <span class="constructor">Type_class</span>.<span class="constructor">S2</span>.t<br> <span class="keyword">val</span> bin_writer_float32_vec : <span class="constructor">Common</span>.vec32 <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_float32_vec : <span class="constructor">Common</span>.vec32 <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_float32_vec : <span class="constructor">Common</span>.vec32 <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_float64_vec : <span class="constructor">Common</span>.vec64 <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_float64_vec : <span class="constructor">Common</span>.vec64 <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_float64_vec : <span class="constructor">Common</span>.vec64 <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_vec : <span class="constructor">Common</span>.vec <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_vec : <span class="constructor">Common</span>.vec <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_vec : <span class="constructor">Common</span>.vec <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_float32_mat : <span class="constructor">Common</span>.mat32 <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_float32_mat : <span class="constructor">Common</span>.mat32 <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_float32_mat : <span class="constructor">Common</span>.mat32 <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_float64_mat : <span class="constructor">Common</span>.mat64 <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_float64_mat : <span class="constructor">Common</span>.mat64 <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_float64_mat : <span class="constructor">Common</span>.mat64 <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_mat : <span class="constructor">Common</span>.mat <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_mat : <span class="constructor">Common</span>.mat <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_mat : <span class="constructor">Common</span>.mat <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_bigstring : <span class="constructor">Common</span>.buf <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_bigstring : <span class="constructor">Common</span>.buf <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_bigstring : <span class="constructor">Common</span>.buf <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_float_array : float array <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_float_array : float array <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_float_array : float array <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_variant_tag : [> ] <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_variant_tag : [> ] <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_variant_tag : [> ] <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_int_8bit : int <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_int_8bit : int <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_int_8bit : int <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_int_16bit : int <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_int_16bit : int <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_int_16bit : int <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_int_32bit : int <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_int_32bit : int <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_int_32bit : int <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_int_64bit : int <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_int_64bit : int <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_int_64bit : int <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_int64_bits : int64 <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_int64_bits : int64 <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_int64_bits : int64 <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_network16_int : int <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_network16_int : int <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_network16_int : int <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_network32_int : int <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_network32_int : int <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_network32_int : int <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_network32_int32 : int32 <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_network32_int32 : int32 <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_network32_int32 : int32 <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_network64_int : int <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_network64_int : int <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_network64_int : int <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_network64_int64 : int64 <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> bin_reader_network64_int64 : int64 <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_network64_int64 : int64 <span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_writer_array_no_length : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a array) <span class="constructor">Type_class</span>.<span class="constructor">S1</span>.writer<br> <span class="keyword">val</span> cnv_writer : (<span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>b) <span class="keywordsign">-></span> <span class="keywordsign">'</span>b <span class="constructor">Type_class</span>.writer <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> cnv_reader : (<span class="keywordsign">'</span>b <span class="keywordsign">-></span> <span class="keywordsign">'</span>a) <span class="keywordsign">-></span> <span class="keywordsign">'</span>b <span class="constructor">Type_class</span>.reader <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> cnv : (<span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>b) <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>b <span class="constructor">Type_class</span>.t <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Type_class</span>.t<br> <span class="keyword">end</span></code></body></html>