ordered_index.hpp
Go to the documentation of this file.
1 /* Copyright 2003-2015 Joaquin M Lopez Munoz.
2  * Distributed under the Boost Software License, Version 1.0.
3  * (See accompanying file LICENSE_1_0.txt or copy at
4  * http://www.boost.org/LICENSE_1_0.txt)
5  *
6  * See http://www.boost.org/libs/multi_index for library home page.
7  */
8 
9 #ifndef BOOST_MULTI_INDEX_ORDERED_INDEX_HPP
10 #define BOOST_MULTI_INDEX_ORDERED_INDEX_HPP
11 
12 #if defined(_MSC_VER)
13 #pragma once
14 #endif
15 
16 #include <boost/config.hpp> /* keep it first to prevent nasty warns in MSVC */
19 
20 namespace boost{
21 
22 namespace multi_index{
23 
24 namespace detail{
25 
26 /* no augment policy for plain ordered indices */
27 
29 {
30  template<typename OrderedIndexImpl>
32  {
33  typedef OrderedIndexImpl type;
34  };
35 
36  template<typename OrderedIndexNodeImpl>
38  {
39  typedef OrderedIndexNodeImpl type;
40  };
41 
42  template<typename Pointer> static void add(Pointer,Pointer){}
43  template<typename Pointer> static void remove(Pointer,Pointer){}
44  template<typename Pointer> static void copy(Pointer,Pointer){}
45  template<typename Pointer> static void rotate_left(Pointer,Pointer){}
46  template<typename Pointer> static void rotate_right(Pointer,Pointer){}
47 
48 #if defined(BOOST_MULTI_INDEX_ENABLE_INVARIANT_CHECKING)
49  /* invariant stuff */
50 
51  template<typename Pointer> static bool invariant(Pointer){return true;}
52 
53 #endif
54 };
55 
56 } /* namespace multi_index::detail */
57 
58 /* ordered_index specifiers */
59 
60 template<typename Arg1,typename Arg2,typename Arg3>
62 {
63  typedef typename detail::ordered_index_args<
64  Arg1,Arg2,Arg3> index_args;
65  typedef typename index_args::tag_list_type::type tag_list_type;
68 
69  template<typename Super>
70  struct node_class
71  {
73  };
74 
75  template<typename SuperMeta>
76  struct index_class
77  {
78  typedef detail::ordered_index<
82  };
83 };
84 
85 template<typename Arg1,typename Arg2,typename Arg3>
87 {
89  Arg1,Arg2,Arg3> index_args;
90  typedef typename index_args::tag_list_type::type tag_list_type;
93 
94  template<typename Super>
95  struct node_class
96  {
98  };
99 
100  template<typename SuperMeta>
101  struct index_class
102  {
103  typedef detail::ordered_index<
107  };
108 };
109 
110 } /* namespace multi_index */
111 
112 } /* namespace boost */
113 
114 #endif
boost::multi_index::ordered_unique::key_from_value_type
index_args::key_from_value_type key_from_value_type
Definition: ordered_index.hpp:66
boost::multi_index::ordered_unique::tag_list_type
index_args::tag_list_type::type tag_list_type
Definition: ordered_index.hpp:65
boost::multi_index::detail::ordered_index_node
Definition: ord_index_node.hpp:585
boost::multi_index::detail::null_augment_policy::augmented_node::type
OrderedIndexNodeImpl type
Definition: ordered_index.hpp:39
config.hpp
boost::multi_index::detail::ordered_unique_tag
Definition: ord_index_impl.hpp:110
boost::multi_index::detail::ordered_index
Definition: ord_index_impl.hpp:117
boost::multi_index::detail::null_augment_policy::rotate_right
static void rotate_right(Pointer, Pointer)
Definition: ordered_index.hpp:46
boost::multi_index::detail::null_augment_policy::augmented_node
Definition: ordered_index.hpp:37
boost
BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
boost::multi_index::ordered_non_unique::index_class::type
detail::ordered_index< key_from_value_type, compare_type, SuperMeta, tag_list_type, detail::ordered_non_unique_tag, detail::null_augment_policy > type
Definition: ordered_index.hpp:106
boost::multi_index::detail::ordered_index_args::key_from_value_type
mpl::if_< full_form, Arg2, Arg1 >::type key_from_value_type
Definition: ord_index_args.hpp:61
boost::multi_index::ordered_unique::index_args
detail::ordered_index_args< Arg1, Arg2, Arg3 > index_args
Definition: ordered_index.hpp:64
ordered_index_fwd.hpp
boost::multi_index::ordered_unique::node_class
Definition: ordered_index.hpp:70
boost::multi_index::ordered_non_unique::node_class
Definition: ordered_index.hpp:95
boost::multi_index::detail::null_augment_policy
Definition: ordered_index.hpp:28
boost::multi_index::detail::null_augment_policy::rotate_left
static void rotate_left(Pointer, Pointer)
Definition: ordered_index.hpp:45
ord_index_impl.hpp
boost::multi_index::ordered_non_unique
Definition: ordered_index.hpp:86
boost::multi_index::ordered_unique
Definition: ordered_index.hpp:61
boost::multi_index::ordered_unique::index_class::type
detail::ordered_index< key_from_value_type, compare_type, SuperMeta, tag_list_type, detail::ordered_unique_tag, detail::null_augment_policy > type
Definition: ordered_index.hpp:81
boost::multi_index::detail::null_augment_policy::add
static void add(Pointer, Pointer)
Definition: ordered_index.hpp:42
boost::multi_index::ordered_unique::index_class
Definition: ordered_index.hpp:76
boost::multi_index::detail::null_augment_policy::remove
static void remove(Pointer, Pointer)
Definition: ordered_index.hpp:43
boost::multi_index::ordered_unique::compare_type
index_args::compare_type compare_type
Definition: ordered_index.hpp:67
boost::multi_index::detail::ordered_index_args::compare_type
mpl::eval_if< mpl::is_na< supplied_compare_type >, index_args_default_compare< key_from_value_type >, mpl::identity< supplied_compare_type > >::type compare_type
Definition: ord_index_args.hpp:70
boost::multi_index::ordered_non_unique::tag_list_type
index_args::tag_list_type::type tag_list_type
Definition: ordered_index.hpp:90
boost::multi_index::ordered_non_unique::key_from_value_type
index_args::key_from_value_type key_from_value_type
Definition: ordered_index.hpp:91
boost::multi_index::detail::null_augment_policy::augmented_interface
Definition: ordered_index.hpp:31
boost::multi_index::ordered_non_unique::node_class::type
detail::ordered_index_node< detail::null_augment_policy, Super > type
Definition: ordered_index.hpp:97
boost::multi_index::detail::ordered_non_unique_tag
Definition: ord_index_impl.hpp:111
boost::multi_index::ordered_unique::node_class::type
detail::ordered_index_node< detail::null_augment_policy, Super > type
Definition: ordered_index.hpp:72
boost::multi_index::detail::null_augment_policy::copy
static void copy(Pointer, Pointer)
Definition: ordered_index.hpp:44
boost::multi_index::detail::null_augment_policy::augmented_interface::type
OrderedIndexImpl type
Definition: ordered_index.hpp:33
boost::multi_index::ordered_non_unique::index_class
Definition: ordered_index.hpp:101
boost::multi_index::ordered_non_unique::compare_type
index_args::compare_type compare_type
Definition: ordered_index.hpp:92
boost::multi_index::detail::ordered_index_args
Definition: ord_index_args.hpp:50
boost::multi_index::ordered_non_unique::index_args
detail::ordered_index_args< Arg1, Arg2, Arg3 > index_args
Definition: ordered_index.hpp:89


sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:45:36