<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 class methods" rel=Appendix href="index_methods.html"> <link title="Index of class types" rel=Appendix href="index_class_types.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="CSS" rel="Chapter" href="CSS.html"> <link title="Dom" rel="Chapter" href="Dom.html"> <link title="Dom_events" rel="Chapter" href="Dom_events.html"> <link title="Dom_html" rel="Chapter" href="Dom_html.html"> <link title="Dom_svg" rel="Chapter" href="Dom_svg.html"> <link title="EventSource" rel="Chapter" href="EventSource.html"> <link title="File" rel="Chapter" href="File.html"> <link title="Firebug" rel="Chapter" href="Firebug.html"> <link title="Form" rel="Chapter" href="Form.html"> <link title="Js" rel="Chapter" href="Js.html"> <link title="Json" rel="Chapter" href="Json.html"> <link title="Jsonp" rel="Chapter" href="Jsonp.html"> <link title="Keycode" rel="Chapter" href="Keycode.html"> <link title="Lwt_js" rel="Chapter" href="Lwt_js.html"> <link title="Lwt_js_events" rel="Chapter" href="Lwt_js_events.html"> <link title="Regexp" rel="Chapter" href="Regexp.html"> <link title="Sys_js" rel="Chapter" href="Sys_js.html"> <link title="Typed_array" rel="Chapter" href="Typed_array.html"> <link title="Url" rel="Chapter" href="Url.html"> <link title="WebGL" rel="Chapter" href="WebGL.html"> <link title="WebSockets" rel="Chapter" href="WebSockets.html"> <link title="XmlHttpRequest" rel="Chapter" href="XmlHttpRequest.html"> <link title="Lwt_log_js" rel="Chapter" href="Lwt_log_js.html"> <link title="JsooTop" rel="Chapter" href="JsooTop.html"> <link title="Ocamlbuild_js_of_ocaml" rel="Chapter" href="Ocamlbuild_js_of_ocaml.html"> <link title="Deriving_Json" rel="Chapter" href="Deriving_Json.html"> <link title="Deriving_Json_lexer" rel="Chapter" href="Deriving_Json_lexer.html"> <link title="Pa_deriving_Json" rel="Chapter" href="Pa_deriving_Json.html"><title>Deriving_Json</title> </head> <body> <code class="code"><span class="keyword">sig</span><br> <span class="keyword">type</span> <span class="keywordsign">'</span>a t<br> <span class="keyword">val</span> to_string : <span class="keywordsign">'</span>a <span class="constructor">Deriving_Json</span>.t <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : <span class="keywordsign">'</span>a <span class="constructor">Deriving_Json</span>.t <span class="keywordsign">-></span> string <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">Json</span> =<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a<br> <span class="keyword">val</span> t : <span class="constructor">Deriving_Json</span>.<span class="constructor">Json</span>.a <span class="constructor">Deriving_Json</span>.t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json</span>.a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json</span>.a<br> <span class="keyword">val</span> to_string : <span class="constructor">Deriving_Json</span>.<span class="constructor">Json</span>.a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json</span>.a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span><br> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json</span>.a<br> <span class="keyword">end</span><br> <span class="keyword">val</span> convert :<br> <span class="keywordsign">'</span>a <span class="constructor">Deriving_Json</span>.t <span class="keywordsign">-></span> (<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">Deriving_Json</span>.t<br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">Json_converter</span> =<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a<br> <span class="keyword">type</span> b<br> <span class="keyword">val</span> t : <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_converter</span>.a <span class="constructor">Deriving_Json</span>.t<br> <span class="keyword">val</span> from_ :<br> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_converter</span>.a <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_converter</span>.b<br> <span class="keyword">val</span> to_ :<br> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_converter</span>.b <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_converter</span>.a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Convert</span> :<br> <span class="keyword">functor</span> (<span class="constructor">J</span> : <span class="constructor">Json_converter</span>) <span class="keywordsign">-></span><br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = <span class="constructor">J</span>.b<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">Json_min</span> =<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_min</span>.a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_min</span>.a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">Json_min'</span> =<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_min'</span>.a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_min'</span>.a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span><br> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_min'</span>.a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">Json_min''</span> =<br> <span class="keyword">sig</span> <span class="keyword">type</span> a <span class="keyword">val</span> t : <span class="constructor">Deriving_Json</span>.<span class="constructor">Json_min''</span>.a <span class="constructor">Deriving_Json</span>.t <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Defaults</span> :<br> <span class="keyword">functor</span> (<span class="constructor">J</span> : <span class="constructor">Json_min</span>) <span class="keywordsign">-></span><br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = <span class="constructor">J</span>.a<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Defaults'</span> :<br> <span class="keyword">functor</span> (<span class="constructor">J</span> : <span class="constructor">Json_min'</span>) <span class="keywordsign">-></span><br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = <span class="constructor">J</span>.a<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Defaults''</span> :<br> <span class="keyword">functor</span> (<span class="constructor">J</span> : <span class="constructor">Json_min''</span>) <span class="keywordsign">-></span><br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = <span class="constructor">J</span>.a<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_char</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = char<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_bool</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = bool<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_unit</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = unit<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_int</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = int<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_int32</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = int32<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_int64</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = int64<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_nativeint</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = nativeint<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_float</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = float<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_string</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = string<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_list</span> :<br> <span class="keyword">functor</span> (<span class="constructor">A</span> : <span class="constructor">Json</span>) <span class="keywordsign">-></span><br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = <span class="constructor">A</span>.a list<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_ref</span> :<br> <span class="keyword">functor</span> (<span class="constructor">A</span> : <span class="constructor">Json</span>) <span class="keywordsign">-></span><br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = <span class="constructor">A</span>.a ref<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_option</span> :<br> <span class="keyword">functor</span> (<span class="constructor">A</span> : <span class="constructor">Json</span>) <span class="keywordsign">-></span><br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = <span class="constructor">A</span>.a option<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Json_array</span> :<br> <span class="keyword">functor</span> (<span class="constructor">A</span> : <span class="constructor">Json</span>) <span class="keywordsign">-></span><br> <span class="keyword">sig</span><br> <span class="keyword">type</span> a = <span class="constructor">A</span>.a array<br> <span class="keyword">val</span> t : a t<br> <span class="keyword">val</span> write : <span class="constructor">Buffer</span>.t <span class="keywordsign">-></span> a <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> read : <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> to_string : a <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> from_string : string <span class="keywordsign">-></span> a<br> <span class="keyword">val</span> match_variant : [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> read_variant :<br> <span class="constructor">Deriving_Json_lexer</span>.lexbuf <span class="keywordsign">-></span> [ <span class="keywordsign">`</span><span class="constructor">Cst</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">NCst</span> <span class="keyword">of</span> int ] <span class="keywordsign">-></span> a<br> <span class="keyword">end</span><br> <span class="keyword">end</span></code></body></html>