ord_index_impl_fwd.hpp 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  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. #ifndef BOOST_MULTI_INDEX_DETAIL_ORD_INDEX_IMPL_FWD_HPP
  9. #define BOOST_MULTI_INDEX_DETAIL_ORD_INDEX_IMPL_FWD_HPP
  10. #if defined(_MSC_VER)
  11. #pragma once
  12. #endif
  13. namespace boost{
  14. namespace multi_index{
  15. namespace detail{
  16. template<
  17. typename KeyFromValue,typename Compare,
  18. typename SuperMeta,typename TagList,typename Category,typename AugmentPolicy
  19. >
  20. class ordered_index;
  21. template<
  22. typename KeyFromValue1,typename Compare1,
  23. typename SuperMeta1,typename TagList1,typename Category1,
  24. typename AugmentPolicy1,
  25. typename KeyFromValue2,typename Compare2,
  26. typename SuperMeta2,typename TagList2,typename Category2,
  27. typename AugmentPolicy2
  28. >
  29. bool operator==(
  30. const ordered_index<
  31. KeyFromValue1,Compare1,SuperMeta1,TagList1,Category1,AugmentPolicy1>& x,
  32. const ordered_index<
  33. KeyFromValue2,Compare2,SuperMeta2,TagList2,Category2,AugmentPolicy2>& y);
  34. template<
  35. typename KeyFromValue1,typename Compare1,
  36. typename SuperMeta1,typename TagList1,typename Category1,
  37. typename AugmentPolicy1,
  38. typename KeyFromValue2,typename Compare2,
  39. typename SuperMeta2,typename TagList2,typename Category2,
  40. typename AugmentPolicy2
  41. >
  42. bool operator<(
  43. const ordered_index<
  44. KeyFromValue1,Compare1,SuperMeta1,TagList1,Category1,AugmentPolicy1>& x,
  45. const ordered_index<
  46. KeyFromValue2,Compare2,SuperMeta2,TagList2,Category2,AugmentPolicy2>& y);
  47. template<
  48. typename KeyFromValue1,typename Compare1,
  49. typename SuperMeta1,typename TagList1,typename Category1,
  50. typename AugmentPolicy1,
  51. typename KeyFromValue2,typename Compare2,
  52. typename SuperMeta2,typename TagList2,typename Category2,
  53. typename AugmentPolicy2
  54. >
  55. bool operator!=(
  56. const ordered_index<
  57. KeyFromValue1,Compare1,SuperMeta1,TagList1,Category1,AugmentPolicy1>& x,
  58. const ordered_index<
  59. KeyFromValue2,Compare2,SuperMeta2,TagList2,Category2,AugmentPolicy2>& y);
  60. template<
  61. typename KeyFromValue1,typename Compare1,
  62. typename SuperMeta1,typename TagList1,typename Category1,
  63. typename AugmentPolicy1,
  64. typename KeyFromValue2,typename Compare2,
  65. typename SuperMeta2,typename TagList2,typename Category2,
  66. typename AugmentPolicy2
  67. >
  68. bool operator>(
  69. const ordered_index<
  70. KeyFromValue1,Compare1,SuperMeta1,TagList1,Category1,AugmentPolicy1>& x,
  71. const ordered_index<
  72. KeyFromValue2,Compare2,SuperMeta2,TagList2,Category2,AugmentPolicy2>& y);
  73. template<
  74. typename KeyFromValue1,typename Compare1,
  75. typename SuperMeta1,typename TagList1,typename Category1,
  76. typename AugmentPolicy1,
  77. typename KeyFromValue2,typename Compare2,
  78. typename SuperMeta2,typename TagList2,typename Category2,
  79. typename AugmentPolicy2
  80. >
  81. bool operator>=(
  82. const ordered_index<
  83. KeyFromValue1,Compare1,SuperMeta1,TagList1,Category1,AugmentPolicy1>& x,
  84. const ordered_index<
  85. KeyFromValue2,Compare2,SuperMeta2,TagList2,Category2,AugmentPolicy2>& y);
  86. template<
  87. typename KeyFromValue1,typename Compare1,
  88. typename SuperMeta1,typename TagList1,typename Category1,
  89. typename AugmentPolicy1,
  90. typename KeyFromValue2,typename Compare2,
  91. typename SuperMeta2,typename TagList2,typename Category2,
  92. typename AugmentPolicy2
  93. >
  94. bool operator<=(
  95. const ordered_index<
  96. KeyFromValue1,Compare1,SuperMeta1,TagList1,Category1,AugmentPolicy1>& x,
  97. const ordered_index<
  98. KeyFromValue2,Compare2,SuperMeta2,TagList2,Category2,AugmentPolicy2>& y);
  99. template<
  100. typename KeyFromValue,typename Compare,
  101. typename SuperMeta,typename TagList,typename Category,typename AugmentPolicy
  102. >
  103. void swap(
  104. ordered_index<
  105. KeyFromValue,Compare,SuperMeta,TagList,Category,AugmentPolicy>& x,
  106. ordered_index<
  107. KeyFromValue,Compare,SuperMeta,TagList,Category,AugmentPolicy>& y);
  108. } /* namespace multi_index::detail */
  109. } /* namespace multi_index */
  110. } /* namespace boost */
  111. #endif