1 /////////////////////////////////////////////////////////////////////////////
\r
3 // (C) Copyright Ion GaztaƱaga 2006-2007
\r
5 // Distributed under the Boost Software License, Version 1.0.
\r
6 // (See accompanying file LICENSE_1_0.txt or copy at
\r
7 // http://www.boost.org/LICENSE_1_0.txt)
\r
9 // See http://www.boost.org/libs/intrusive for documentation.
\r
11 /////////////////////////////////////////////////////////////////////////////
\r
13 #ifndef BOOST_INTRUSIVE_VALUE_LINKING_POLICY_HPP
\r
14 #define BOOST_INTRUSIVE_VALUE_LINKING_POLICY_HPP
\r
17 namespace intrusive {
\r
19 //!This enumeration defines the type of value_traits that can be defined
\r
20 //!for Boost.Intrusive containers
\r
21 enum linking_policy{
\r
22 //!If this linking policy is specified in a value_traits class
\r
23 //!as the linking_policy, containers
\r
24 //!configured with such value_traits won't set the hooks
\r
25 //!of the erased values to a default state. Containers also won't
\r
26 //!check that the hooks of the new values are default initialized.
\r
29 //!If this linking policy is specified in a value_traits class
\r
30 //!as the linking_policy, containers
\r
31 //!configured with such value_traits will set the hooks
\r
32 //!of the erased values to a default state. Containers also will
\r
33 //!check that the hooks of the new values are default initialized.
\r
36 //!Same as "safe_mode_link" but the user type is an auto-unlink
\r
37 //!type, so the containers with constant-time size features won't be
\r
38 //!compatible with value_traits configured with this policy.
\r
39 //!Containers also know that the a value can be silently erased from
\r
40 //!the container without using any function provided by the containers.
\r
43 } //namespace intrusive
\r
44 } //namespace boost
\r
46 #endif //BOOST_INTRUSIVE_VALUE_LINKING_POLICY_HPP
\r