<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="Reins" rel="Chapter" href="Reins.html"><title>Reins.Heaps</title> </head> <body> <code class="code"><span class="keyword">sig</span><br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">Heap_</span> =<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> <span class="keywordsign">'</span>a elt_<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> empty : <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap<br> <span class="keyword">val</span> is_empty : <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> singleton : <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap<br> <span class="keyword">val</span> insert :<br> <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.elt_ <span class="keywordsign">-></span><br> <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap<br> <span class="keyword">val</span> merge :<br> <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap <span class="keywordsign">-></span><br> <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap<br> <span class="keyword">val</span> find_min : <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.elt_<br> <span class="keyword">val</span> delete_min : <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Reins</span>.<span class="constructor">Heaps</span>.<span class="constructor">Heap_</span>.heap<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">MonoHeapSig</span> =<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> t<br> <span class="keyword">type</span> elt<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a elt_ = elt<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a heap = t<br> <span class="keyword">val</span> empty : <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> is_empty : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> singleton : <span class="keywordsign">'</span>a elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> insert : <span class="keywordsign">'</span>a elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> merge : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> find_min : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a elt_<br> <span class="keyword">val</span> delete_min : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> to_string : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> string<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">MonoHeapSigFn</span> =<br> <span class="keyword">functor</span> (<span class="constructor">C</span> : <span class="constructor">Types</span>.<span class="constructor">Mono</span>.<span class="constructor">Comparable</span>) <span class="keywordsign">-></span><br> <span class="keyword">sig</span><br> <span class="keyword">type</span> t<br> <span class="keyword">type</span> elt = <span class="constructor">C</span>.t<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a elt_ = elt<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a heap = t<br> <span class="keyword">val</span> empty : <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> is_empty : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> singleton : <span class="keywordsign">'</span>a elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> insert : <span class="keywordsign">'</span>a elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> merge : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> find_min : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a elt_<br> <span class="keyword">val</span> delete_min : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> to_string : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> string<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">GenHeapSig</span> =<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> t<br> <span class="keyword">type</span> elt<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a elt_ = elt<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a heap = t<br> <span class="keyword">val</span> empty : <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> is_empty : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> singleton : <span class="keywordsign">'</span>a elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> insert : <span class="keywordsign">'</span>a elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> merge : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> find_min : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a elt_<br> <span class="keyword">val</span> delete_min : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> to_string : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> gen : ?size:int <span class="keywordsign">-></span> <span class="constructor">Random</span>.<span class="constructor">State</span>.t <span class="keywordsign">-></span> t<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">GenHeapSigFn</span> =<br> <span class="keyword">functor</span> (<span class="constructor">C</span> : <span class="constructor">Types</span>.<span class="constructor">Mono</span>.<span class="constructor">ArbitraryComparable</span>) <span class="keywordsign">-></span><br> <span class="keyword">sig</span><br> <span class="keyword">type</span> t<br> <span class="keyword">type</span> elt = <span class="constructor">C</span>.t<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a elt_ = elt<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a heap = t<br> <span class="keyword">val</span> empty : <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> is_empty : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> singleton : <span class="keywordsign">'</span>a elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> insert : <span class="keywordsign">'</span>a elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> merge : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> find_min : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a elt_<br> <span class="keyword">val</span> delete_min : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> to_string : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> gen : ?size:int <span class="keywordsign">-></span> <span class="constructor">Random</span>.<span class="constructor">State</span>.t <span class="keywordsign">-></span> t<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">PolyHeapSig</span> =<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> <span class="keywordsign">'</span>a t<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a elt_ = <span class="keywordsign">'</span>a<br> <span class="keyword">type</span> <span class="keywordsign">'</span>a heap = <span class="keywordsign">'</span>a t<br> <span class="keyword">val</span> empty : <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> is_empty : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> bool<br> <span class="keyword">val</span> singleton : <span class="keywordsign">'</span>a elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> insert : <span class="keywordsign">'</span>a elt_ <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> merge : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> find_min : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a elt_<br> <span class="keyword">val</span> delete_min : <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap<br> <span class="keyword">val</span> to_string : (<span class="keywordsign">'</span>a <span class="keywordsign">-></span> string) <span class="keywordsign">-></span> <span class="keywordsign">'</span>a heap <span class="keywordsign">-></span> string<br> <span class="keyword">end</span><br> <span class="keyword">end</span></code></body></html>