Merged fixes from trunk to branch

[SVN r21741]
This commit is contained in:
Fernando Cacciola
2004-01-14 20:43:53 +00:00
parent 0eb427cabe
commit 06e6a36cea

View File

@ -115,10 +115,9 @@ struct equal_pointees_t : std::binary_function<OptionalPointee,OptionalPointe
} ; } ;
</pre> </pre>
<p>The preceding generic function and function object have the following semantics:<br> <p>The preceding generic function and function object have the following semantics:<br>
If both x and y have valid pointees, it compares values via (*x == *y) or (*x &lt; If both <b>x</b> and <b>y</b> have valid pointees, it compares values via <code>(*x == *y)</code>.<br>
*y).<br> If only one has a valid pointee, returns <code>false</code>.<br>
If only one has a valid pointee, returns false.<br> If both have invalid pointees, returns <code>true</code>.</p>
If both have invalid pointees, returns true.</p>
<a name="less"></a> <a name="less"></a>
<p><u>Less-than relation:</u></p> <p><u>Less-than relation:</u></p>
<pre>template&lt;class OptionalPointee&gt; <pre>template&lt;class OptionalPointee&gt;
@ -135,11 +134,12 @@ struct less_pointees_t : std::binary_function&lt;OptionalPointee,OptionalPointee
} ; } ;
</pre> </pre>
<p>The preceding generic function and function object have the following semantics:<br> <p>The preceding generic function and function object have the following semantics:<br>
If both x and y have valid pointees, it compares values via (*x == *y) or (*x &lt; If <b>y</b> has an invalid pointee, returns <code>false</code>.<br>
*y).<br> Else, if <b>x</b> has an invalid pointee, returns <code>true</code>.<br>
If only one has a valid pointee, returns false.<br> Else, ( <b>x</b> and <b>y</b> have valid pointees), compares values via <code>(*x &lt;
If both have invalid pointees, returns false.</p> *y).</code></p>
<p>All these functions and function <p><br>
All these functions and function
objects are is implemented in <a href="../../boost/utility/compare_pointees.hpp">compare_pointees.hpp</a></p> objects are is implemented in <a href="../../boost/utility/compare_pointees.hpp">compare_pointees.hpp</a></p>
<p>Notice that OptionalPointee does not imply aliasing (and optional&lt;&gt; for instance does not alias); <p>Notice that OptionalPointee does not imply aliasing (and optional&lt;&gt; for instance does not alias);
so direct usage of relational operators with the implied aliasing of shallow semantics so direct usage of relational operators with the implied aliasing of shallow semantics