mirror of
https://github.com/boostorg/exception.git
synced 2025-07-21 16:32:05 +02:00
documentation update
[SVN r59373]
This commit is contained in:
@ -39,7 +39,7 @@ catch(...)
|
|||||||
return <span class="RenoLink"><a href="current_exception.html">current_exception</a></span>();
|
return <span class="RenoLink"><a href="current_exception.html">current_exception</a></span>();
|
||||||
}</pre>
|
}</pre>
|
||||||
</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
|
</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
|
||||||
See also: <span class="RenoPageList"><a href="boost-exception.html">Boost Exception</a> | <a href="boost_exception_ptr_hpp.html">boost/exception_ptr.hpp</a></span>
|
See also: <span class="RenoPageList"><a href="boost-exception.html">Boost Exception</a> | <a href="boost_exception_ptr_hpp.html">boost/exception_ptr.hpp</a> | <a href="current_exception.html">current_exception</a></span>
|
||||||
</div>
|
</div>
|
||||||
<!-- Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc. -->
|
<!-- Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc. -->
|
||||||
<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
|
<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
|
||||||
|
@ -29,6 +29,7 @@ boost
|
|||||||
}</pre>
|
}</pre>
|
||||||
</div><h4>Requirements:</h4>
|
</div><h4>Requirements:</h4>
|
||||||
<p>The <span class="RenoLink">current_exception</span> function must not be called outside of a catch block.</p>
|
<p>The <span class="RenoLink">current_exception</span> function must not be called outside of a catch block.</p>
|
||||||
|
<p>In addition, to safely copy an exception from one thread to another, if the exception object is copied by <span class="RenoLink">current_exception</span> or <span class="RenoLink"><a href="copy_exception.html">copy_exception</a></span>, the two copies must not have shared state. Exceptions that have value-type semantics (as well as the boost::<span class="RenoLink"><a href="exception.html">exception</a></span> type itself) satisfy this requirement.</p>
|
||||||
<h4>Returns:</h4>
|
<h4>Returns:</h4>
|
||||||
<div><ul><li> An <span class="RenoLink"><a href="exception_ptr.html">exception_ptr</a></span> that refers to the currently handled exception or a copy of the currently handled exception.</li>
|
<div><ul><li> An <span class="RenoLink"><a href="exception_ptr.html">exception_ptr</a></span> that refers to the currently handled exception or a copy of the currently handled exception.</li>
|
||||||
<li> If the function needs to allocate memory and the attempt fails, it returns an <span class="RenoLink"><a href="exception_ptr.html">exception_ptr</a></span> that refers to an instance of std::bad_alloc.</li>
|
<li> If the function needs to allocate memory and the attempt fails, it returns an <span class="RenoLink"><a href="exception_ptr.html">exception_ptr</a></span> that refers to an instance of std::bad_alloc.</li>
|
||||||
@ -43,7 +44,7 @@ boost
|
|||||||
</li>
|
</li>
|
||||||
</ul></div>
|
</ul></div>
|
||||||
</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
|
</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
|
||||||
See also: <span class="RenoPageList"><a href="boost-exception.html">Boost Exception</a> | <a href="boost_exception_ptr_hpp.html">boost/exception_ptr.hpp</a> | <a href="copy_exception.html">copy_exception</a> | <a href="enable_current_exception.html">enable_current_exception</a> | <a href="exception_ptr.html">exception_ptr</a> | <a href="frequently_asked_questions.html">Frequently Asked Questions</a> | <a href="original_exception_type.html">original_exception_type</a> | <a href="unknown_exception.html">unknown_exception</a></span>
|
See also: <span class="RenoPageList"><a href="boost-exception.html">Boost Exception</a> | <a href="boost_exception_ptr_hpp.html">boost/exception_ptr.hpp</a> | <a href="copy_exception.html">copy_exception</a> | <a href="enable_current_exception.html">enable_current_exception</a> | <a href="frequently_asked_questions.html">Frequently Asked Questions</a> | <a href="original_exception_type.html">original_exception_type</a> | <a href="unknown_exception.html">unknown_exception</a></span>
|
||||||
</div>
|
</div>
|
||||||
<!-- Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc. -->
|
<!-- Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc. -->
|
||||||
<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
|
<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
|
||||||
|
@ -31,11 +31,12 @@ boost
|
|||||||
<p>The referenced object remains valid at least as long as there is an <span class="RenoLink">exception_ptr</span> object that refers to it.</p>
|
<p>The referenced object remains valid at least as long as there is an <span class="RenoLink">exception_ptr</span> object that refers to it.</p>
|
||||||
<p>Two instances of <span class="RenoLink">exception_ptr</span> are equivalent and compare equal if and only if they refer to the same exception.</p>
|
<p>Two instances of <span class="RenoLink">exception_ptr</span> are equivalent and compare equal if and only if they refer to the same exception.</p>
|
||||||
<p>The default constructor of <span class="RenoLink">exception_ptr</span> produces the null value of the type. The null value is equivalent only to itself.</p>
|
<p>The default constructor of <span class="RenoLink">exception_ptr</span> produces the null value of the type. The null value is equivalent only to itself.</p>
|
||||||
<h4>Thread safety</h4>
|
<h4>Thread safety:</h4>
|
||||||
<div><ul><li> It is legal for multiple threads to hold <span class="RenoLink">exception_ptr</span> references to the same exception object.</li>
|
<p>The <span class="RenoLink">exception_ptr</span> type is "as thread-safe as built-in types":</p>
|
||||||
<li> It is illegal for multiple threads to modify the same <span class="RenoLink">exception_ptr</span> object concurrently.</li>
|
<div><ul><li> An <span class="RenoLink">exception_ptr</span> instance can be "read" simultaneously by multiple threads</li>
|
||||||
<li> While calling <span class="RenoLink"><a href="current_exception.html">current_exception</a></span> makes a copy of the current exception object, it is still possible for the two copies to share internal state. Therefore, in general it is not safe to call <span class="RenoLink"><a href="rethrow_exception.html">rethrow_exception</a></span> concurrently to throw the same exception object into multiple threads.</li>
|
<li> Different <span class="RenoLink">exception_ptr</span> instances can be "written to" simultaneously by multiple threads, even when these instances refer to the same exception object</li>
|
||||||
</ul></div>
|
</ul></div>
|
||||||
|
<p>All other simultaneous accesses result in undefined behavior.</p>
|
||||||
<h4>Nesting of exceptions:</h4>
|
<h4>Nesting of exceptions:</h4>
|
||||||
<p>An <span class="RenoLink">exception_ptr</span> can be added as <span class="RenoLink"><a href="error_info.html">error_info</a></span> to any boost::<span class="RenoLink"><a href="exception.html">exception</a></span>. This is a convenient way to nest exceptions. There is no limit on the depth of the nesting, however cyclic references result in undefined behavior.</p>
|
<p>An <span class="RenoLink">exception_ptr</span> can be added as <span class="RenoLink"><a href="error_info.html">error_info</a></span> to any boost::<span class="RenoLink"><a href="exception.html">exception</a></span>. This is a convenient way to nest exceptions. There is no limit on the depth of the nesting, however cyclic references result in undefined behavior.</p>
|
||||||
</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
|
</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
|
||||||
|
@ -32,7 +32,7 @@ boost
|
|||||||
<h4>Throws:</h4>
|
<h4>Throws:</h4>
|
||||||
<p>The exception to which ep refers.</p>
|
<p>The exception to which ep refers.</p>
|
||||||
</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
|
</div><div class="RenoAutoDIV"><div class="RenoHR"><hr/></div>
|
||||||
See also: <span class="RenoPageList"><a href="boost-exception.html">Boost Exception</a> | <a href="boost_exception_ptr_hpp.html">boost/exception_ptr.hpp</a> | <a href="diagnostic_information.html">diagnostic_information</a> | <a href="exception_ptr.html">exception_ptr</a></span>
|
See also: <span class="RenoPageList"><a href="boost-exception.html">Boost Exception</a> | <a href="boost_exception_ptr_hpp.html">boost/exception_ptr.hpp</a> | <a href="diagnostic_information.html">diagnostic_information</a></span>
|
||||||
</div>
|
</div>
|
||||||
<!-- Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc. -->
|
<!-- Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc. -->
|
||||||
<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
|
<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
|
||||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user