Please check out the library's documentation to learn more.
You are viewing the develop version of this library.
The master and develop pages are shown here to provide access to the newest in-development in-progress documentation. See the "Documentation" link on this page.
Other aspects of the page will reflect the previous official version, or not be available until the next release.
Boost.Intrusive, part of collection of the Boost C++ Libraries, is a library presenting intrusive containers to the world of C++. Intrusive containers are special containers that offer better performance and exception safety guarantees than non-intrusive containers (like STL containers). The performance benefits of intrusive containers makes them ideal as a building block to efficiently construct complex data structures like multi-index containers or to design high performance code like memory allocation algorithms.
While intrusive containers were and are widely used in C, they became more and more forgotten in C++ due to the presence of the standard containers which don't support intrusive techniques.Boost.Intrusive wants to push intrusive containers usage encapsulating the implementation in STL-like interfaces. Hence anyone familiar with standard containers can easily use Boost.Intrusive.
Distributed under the Boost Software License, Version 1.0.
| Branch | Deps | Docs | Tests |
|---|---|---|---|
master |
|||
develop |
| Name | Purpose |
|---|---|
doc |
documentation |
example |
examples |
include |
headers |
test |
unit tests |
[intrusive] tag at the beginning of the subject line.<h1>Boost.Intrusive</h1> <p>Boost.Intrusive, part of collection of the <a href="http://github.com/boostorg">Boost C++ Libraries</a>, is a library presenting intrusive containers to the world of C++. Intrusive containers are special containers that offer better performance and exception safety guarantees than non-intrusive containers (like STL containers). The performance benefits of intrusive containers makes them ideal as a building block to efficiently construct complex data structures like multi-index containers or to design high performance code like memory allocation algorithms.</p> <p>While intrusive containers were and are widely used in C, they became more and more forgotten in C++ due to the presence of the standard containers which don't support intrusive techniques.Boost.Intrusive wants to push intrusive containers usage encapsulating the implementation in STL-like interfaces. Hence anyone familiar with standard containers can easily use Boost.Intrusive.</p> <h3>License</h3> <p>Distributed under the <a href="http://www.boost.org/LICENSE_1_0.txt">Boost Software License, Version 1.0</a>.</p> <h3>Properties</h3> <ul> <li>C++03</li> <li>Header-Only</li> </ul> <h3>Build Status</h3> <table> <thead> <tr> <th align="center">Branch</th> <th align="left">Deps</th> <th align="left">Docs</th> <th align="left">Tests</th> </tr> </thead> <tbody> <tr> <td align="center"><a href="https://github.com/boostorg/intrusive/tree/master"><code>master</code></a></td> <td align="left"><a href="https://pdimov.github.io/boostdep-report/master/intrusive.html"><img src="https://img.shields.io/badge/deps-master-brightgreen.svg" alt="Deps" /></a></td> <td align="left"><a href="http://www.boost.org/doc/libs/master/doc/html/intrusive.html"><img src="https://img.shields.io/badge/docs-master-brightgreen.svg" alt="Documentation" /></a></td> <td align="left"><a href="http://www.boost.org/development/tests/master/developer/intrusive.html"><img src="https://img.shields.io/badge/matrix-master-brightgreen.svg" alt="Enter the Matrix" /></a></td> </tr> <tr> <td align="center"><a href="https://github.com/boostorg/intrusive/tree/develop"><code>develop</code></a></td> <td align="left"><a href="https://pdimov.github.io/boostdep-report/develop/intrusive.html"><img src="https://img.shields.io/badge/deps-develop-brightgreen.svg" alt="Deps" /></a></td> <td align="left"><a href="http://www.boost.org/doc/libs/develop/doc/html/intrusive.html"><img src="https://img.shields.io/badge/docs-develop-brightgreen.svg" alt="Documentation" /></a></td> <td align="left"><a href="http://www.boost.org/development/tests/develop/developer/intrusive.html"><img src="https://img.shields.io/badge/matrix-develop-brightgreen.svg" alt="Enter the Matrix" /></a></td> </tr> </tbody> </table> <h3>Directories</h3> <table> <thead> <tr> <th align="left">Name</th> <th align="left">Purpose</th> </tr> </thead> <tbody> <tr> <td align="left"><code>doc</code></td> <td align="left">documentation</td> </tr> <tr> <td align="left"><code>example</code></td> <td align="left">examples</td> </tr> <tr> <td align="left"><code>include</code></td> <td align="left">headers</td> </tr> <tr> <td align="left"><code>test</code></td> <td align="left">unit tests</td> </tr> </tbody> </table> <h3>More information</h3> <ul> <li><a href="http://stackoverflow.com/questions/ask?tags=c%2B%2B,boost,boost-intrusive">Ask questions</a></li> <li><a href="https://github.com/boostorg/intrusive/issues">Report bugs</a>: Be sure to mention Boost version, platform and compiler you're using. A small compilable code sample to reproduce the problem is always good as well.</li> <li>Submit your patches as pull requests against <strong>develop</strong> branch. Note that by submitting patches you agree to license your modifications under the <a href="http://www.boost.org/LICENSE_1_0.txt">Boost Software License, Version 1.0</a>.</li> <li>Discussions about the library are held on the <a href="http://www.boost.org/community/groups.html#main">Boost developers mailing list</a>. Be sure to read the <a href="http://www.boost.org/community/policy.html">discussion policy</a> before posting and add the <code>[intrusive]</code> tag at the beginning of the subject line.</li> </ul>
<h1>Boost.Intrusive</h1> <p>Boost.Intrusive, part of collection of the <a href="http://github.com/boostorg">Boost C++ Libraries</a>, is a library presenting intrusive containers to the world of C++. Intrusive containers are special containers that offer better performance and exception safety guarantees than non-intrusive containers (like STL containers). The performance benefits of intrusive containers makes them ideal as a building block to efficiently construct complex data structures like multi-index containers or to design high performance code like memory allocation algorithms.</p> <p>While intrusive containers were and are widely used in C, they became more and more forgotten in C++ due to the presence of the standard containers which don't support intrusive techniques.Boost.Intrusive wants to push intrusive containers usage encapsulating the implementation in STL-like interfaces. Hence anyone familiar with standard containers can easily use Boost.Intrusive.</p> <h3>License</h3> <p>Distributed under the <a href="http://www.boost.org/LICENSE_1_0.txt">Boost Software License, Version 1.0</a>.</p> <h3>Properties</h3> <ul> <li>C++03</li> <li>Header-Only</li> </ul> <h3>Build Status</h3> <table> <thead> <tr> <th align="center">Branch</th> <th align="left">Deps</th> <th align="left">Docs</th> <th align="left">Tests</th> </tr> </thead> <tbody> <tr> <td align="center"><a href="https://github.com/boostorg/intrusive/tree/master"><code>master</code></a></td> <td align="left"><a href="https://pdimov.github.io/boostdep-report/master/intrusive.html"><img src="https://img.shields.io/badge/deps-master-brightgreen.svg" alt="Deps" /></a></td> <td align="left"><a href="http://www.boost.org/doc/libs/master/doc/html/intrusive.html"><img src="https://img.shields.io/badge/docs-master-brightgreen.svg" alt="Documentation" /></a></td> <td align="left"><a href="http://www.boost.org/development/tests/master/developer/intrusive.html"><img src="https://img.shields.io/badge/matrix-master-brightgreen.svg" alt="Enter the Matrix" /></a></td> </tr> <tr> <td align="center"><a href="https://github.com/boostorg/intrusive/tree/develop"><code>develop</code></a></td> <td align="left"><a href="https://pdimov.github.io/boostdep-report/develop/intrusive.html"><img src="https://img.shields.io/badge/deps-develop-brightgreen.svg" alt="Deps" /></a></td> <td align="left"><a href="http://www.boost.org/doc/libs/develop/doc/html/intrusive.html"><img src="https://img.shields.io/badge/docs-develop-brightgreen.svg" alt="Documentation" /></a></td> <td align="left"><a href="http://www.boost.org/development/tests/develop/developer/intrusive.html"><img src="https://img.shields.io/badge/matrix-develop-brightgreen.svg" alt="Enter the Matrix" /></a></td> </tr> </tbody> </table> <h3>Directories</h3> <table> <thead> <tr> <th align="left">Name</th> <th align="left">Purpose</th> </tr> </thead> <tbody> <tr> <td align="left"><code>doc</code></td> <td align="left">documentation</td> </tr> <tr> <td align="left"><code>example</code></td> <td align="left">examples</td> </tr> <tr> <td align="left"><code>include</code></td> <td align="left">headers</td> </tr> <tr> <td align="left"><code>test</code></td> <td align="left">unit tests</td> </tr> </tbody> </table> <h3>More information</h3> <ul> <li><a href="http://stackoverflow.com/questions/ask?tags=c%2B%2B,boost,boost-intrusive">Ask questions</a></li> <li><a href="https://github.com/boostorg/intrusive/issues">Report bugs</a>: Be sure to mention Boost version, platform and compiler you're using. A small compilable code sample to reproduce the problem is always good as well.</li> <li>Submit your patches as pull requests against <strong>develop</strong> branch. Note that by submitting patches you agree to license your modifications under the <a href="http://www.boost.org/LICENSE_1_0.txt">Boost Software License, Version 1.0</a>.</li> <li>Discussions about the library are held on the <a href="http://www.boost.org/community/groups.html#main">Boost developers mailing list</a>. Be sure to read the <a href="http://www.boost.org/community/policy.html">discussion policy</a> before posting and add the <code>[intrusive]</code> tag at the beginning of the subject line.</li> </ul>