Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > c7b8d5922a45aeb64a36e62c8024cf09 > files > 110

ocaml-async_extra-devel-109.24.00-2.mga4.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<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 rel="previous" href="Versioned_rpc.Callee_converts.html">
<link rel="Up" href="Versioned_rpc.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="Command" rel="Chapter" href="Command.html">
<link title="File_tail" rel="Chapter" href="File_tail.html">
<link title="File_writer" rel="Chapter" href="File_writer.html">
<link title="Import" rel="Chapter" href="Import.html">
<link title="Lock_file" rel="Chapter" href="Lock_file.html">
<link title="Log" rel="Chapter" href="Log.html">
<link title="Persistent_singleton" rel="Chapter" href="Persistent_singleton.html">
<link title="Rpc" rel="Chapter" href="Rpc.html">
<link title="Rpc_intf" rel="Chapter" href="Rpc_intf.html">
<link title="Std" rel="Chapter" href="Std.html">
<link title="Tcp" rel="Chapter" href="Tcp.html">
<link title="Tcp_file" rel="Chapter" href="Tcp_file.html">
<link title="Typed_tcp" rel="Chapter" href="Typed_tcp.html">
<link title="Typed_tcp_intf" rel="Chapter" href="Typed_tcp_intf.html">
<link title="Unpack_sequence" rel="Chapter" href="Unpack_sequence.html">
<link title="User_and_group" rel="Chapter" href="User_and_group.html">
<link title="Versioned_rpc" rel="Chapter" href="Versioned_rpc.html">
<link title="Versioned_typed_tcp" rel="Chapter" href="Versioned_typed_tcp.html">
<link title="Weak_hashtbl" rel="Chapter" href="Weak_hashtbl.html"><title>Versioned_rpc.Both_convert</title>
</head>
<body>
<div class="navbar"><a class="pre" href="Versioned_rpc.Callee_converts.html" title="Versioned_rpc.Callee_converts">Previous</a>
&nbsp;<a class="up" href="Versioned_rpc.html" title="Versioned_rpc">Up</a>
&nbsp;</div>
<h1>Module <a href="type_Versioned_rpc.Both_convert.html">Versioned_rpc.Both_convert</a></h1>

<pre><span class="keyword">module</span> Both_convert: <code class="code">sig</code> <a href="Versioned_rpc.Both_convert.html">..</a> <code class="code">end</code></pre><hr width="100%">
<br>
<code class="code">Both_convert</code> rpcs combine features of both caller-converts and callee-converts
      versioning schemes in such a way that one can smoothly add a new version of the rpc
      to a shared library, and it doesn't matter whether the callee or caller upgrades to
      the latest version of the shared library first, the new version will not be
      exercised until both sides support it.
<p>

      <pre class="codepre"><code class="code">                      (conv)   (conv)                          (conv)   (conv)
                      caller   callee                          callee   caller
                      |        |                               |        |
                      |        |                               |        |
         Q.caller ----&gt;-- Q1 --&gt;-.             (impl)        .-&gt;-- R1 --&gt;---- R.caller
                 \                \            callee       /                /
                  \---&gt;-- Q2 --&gt;---\           |           /---&gt;-- R2 --&gt;---/
                   \                \          |          /                /
                    `-&gt;-- Q3 --&gt;---- Q.callee --&gt; R.callee ----&gt;-- R3 --&gt;-'
      </code></pre><br>

<pre><span class="keyword">module</span> <a href="Versioned_rpc.Both_convert.Plain.html">Plain</a>: <code class="code">sig</code> <a href="Versioned_rpc.Both_convert.Plain.html">..</a> <code class="code">end</code></pre></body></html>