+++ /dev/null
-<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="Types" rel="Chapter" href="Types.html">
-<link title="Parser" rel="Chapter" href="Parser.html">
-<link title="Lexer" rel="Chapter" href="Lexer.html">
-<link title="Value" rel="Chapter" href="Value.html">
-<link title="Signal" rel="Chapter" href="Signal.html">
-<link title="Faustexp" rel="Chapter" href="Faustexp.html">
-<link title="Interpreter" rel="Chapter" href="Interpreter.html">
-<link title="Preprocess" rel="Chapter" href="Preprocess.html">
-<link title="Main" rel="Chapter" href="Main.html"><title>Value.normalize</title>
-</head>
-<body>
-<code class="code"><span class="keyword">let</span> <span class="keyword">rec</span> normalize v = <br>
- <span class="keyword">let</span> n = 2. ** float_of_int (value_macro_to_int <span class="constructor">Faust_Bits_int</span>) <span class="keyword">in</span><br>
- <span class="keyword">match</span> v <span class="keyword">with</span><br>
- <span class="keywordsign">|</span><span class="constructor">N</span> i <span class="keywordsign">-></span> <br>
- <span class="keyword">if</span> i > value_macro_to_int <span class="constructor">Faust_Max_int</span> <span class="keyword">then</span> <br>
- return_N (i - int_of_float (n *. floor (((float_of_int i) +. n/.2.)/.n)))<br>
- <span class="keyword">else</span> <span class="keyword">if</span> i < value_macro_to_int <span class="constructor">Faust_Min_int</span> <span class="keyword">then</span> <br>
- return_N (i + int_of_float (n *. floor ((n/.2. -. (float_of_int i) -. 1.)/.n)))<br>
- <span class="keyword">else</span> return_N i<br>
- <span class="keywordsign">|</span><span class="constructor">R</span> f <span class="keywordsign">-></span> <br>
- <span class="keyword">if</span> f > float_of_int (value_macro_to_int <span class="constructor">Faust_Max_int</span>) <span class="keyword">then</span> <br>
- return_R (f -. (n *. floor ((f +. n/.2.)/.n)))<br>
- <span class="keyword">else</span> <span class="keyword">if</span> f < float_of_int (value_macro_to_int <span class="constructor">Faust_Min_int</span>) <span class="keyword">then</span> <br>
- return_R (f +. (n *. floor ((n/.2. -. f -. 1.)/.n)))<br>
- <span class="keyword">else</span> return_R f<br>
- <span class="keywordsign">|</span><span class="constructor">Vec</span> (size, vec) <span class="keywordsign">-></span> make_vector size (<span class="keyword">fun</span> i <span class="keywordsign">-></span> normalize (vec i))<br>
- <span class="keywordsign">|</span><span class="constructor">Zero</span> <span class="keywordsign">-></span> <span class="constructor">Zero</span><br>
- <span class="keywordsign">|</span><span class="constructor">W</span> <span class="keywordsign">-></span> <span class="constructor">W</span></code></body></html>
\ No newline at end of file