summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrobot-contrib <[email protected]>2022-08-09 14:24:02 +0300
committerrobot-contrib <[email protected]>2022-08-09 14:24:02 +0300
commitacfd90c7557e01d7453cb59130f9a0aeeb4952f4 (patch)
treee3006529bdf5c4dcd019e5ad1aec751e8bc622a1
parent43e7c1bbd0618d1df7cd367be901b7c3e8cb4238 (diff)
Update contrib/restricted/boost/function_types to 1.79.0
-rw-r--r--contrib/restricted/boost/function_types/include/boost/function_types/components.hpp8
-rw-r--r--contrib/restricted/boost/function_types/include/boost/function_types/config/compiler.hpp6
-rw-r--r--contrib/restricted/boost/function_types/include/boost/function_types/detail/classifier.hpp2
-rw-r--r--contrib/restricted/boost/function_types/include/boost/function_types/detail/cv_traits.hpp4
-rw-r--r--contrib/restricted/boost/function_types/include/boost/function_types/property_tags.hpp52
5 files changed, 62 insertions, 10 deletions
diff --git a/contrib/restricted/boost/function_types/include/boost/function_types/components.hpp b/contrib/restricted/boost/function_types/include/boost/function_types/components.hpp
index 6f22098d581..c8d63354075 100644
--- a/contrib/restricted/boost/function_types/include/boost/function_types/components.hpp
+++ b/contrib/restricted/boost/function_types/include/boost/function_types/components.hpp
@@ -22,7 +22,7 @@
#include <boost/mpl/integral_c.hpp>
#include <boost/mpl/vector/vector0.hpp>
-#if BOOST_WORKAROUND(__BORLANDC__, <= 0x565)
+#if BOOST_WORKAROUND(BOOST_BORLANDC, <= 0x565)
# include <boost/type_traits/remove_cv.hpp>
# include <boost/mpl/identity.hpp>
@@ -76,14 +76,14 @@ namespace boost
namespace detail
{
template<typename T, typename L> struct components_impl;
-#if BOOST_WORKAROUND(__BORLANDC__, <= 0x565)
+#if BOOST_WORKAROUND(BOOST_BORLANDC, <= 0x565)
template<typename T, typename OrigT, typename L> struct components_bcc;
#endif
}
template<typename T, typename ClassTypeTransform>
struct components
-#if !BOOST_WORKAROUND(__BORLANDC__, <= 0x565)
+#if !BOOST_WORKAROUND(BOOST_BORLANDC, <= 0x565)
: detail::components_impl<T, ClassTypeTransform>
#else
: detail::components_bcc<typename remove_cv<T>::type,T,
@@ -255,7 +255,7 @@ namespace boost
typename detail::class_transform<C,L>::type > types;
};
-#if !BOOST_WORKAROUND(__BORLANDC__, <= 0x565)
+#if !BOOST_WORKAROUND(BOOST_BORLANDC, <= 0x565)
# define BOOST_FT_variations BOOST_FT_pointer|BOOST_FT_member_pointer
template<typename T, class C, typename L>
diff --git a/contrib/restricted/boost/function_types/include/boost/function_types/config/compiler.hpp b/contrib/restricted/boost/function_types/include/boost/function_types/config/compiler.hpp
index 151c8567403..d853330a944 100644
--- a/contrib/restricted/boost/function_types/include/boost/function_types/config/compiler.hpp
+++ b/contrib/restricted/boost/function_types/include/boost/function_types/config/compiler.hpp
@@ -91,11 +91,11 @@
# define __fastcall __attribute__((__fastcall__))
# endif
-#elif defined(__BORLANDC__)
+#elif defined(BOOST_BORLANDC)
-# if __BORLANDC__ < 0x550
+# if BOOST_BORLANDC < 0x550
# error "unsupported compiler version"
-# elif __BORLANDC__ > 0x565
+# elif BOOST_BORLANDC > 0x565
# pragma message("WARNING: library untested with this compiler version")
# endif
diff --git a/contrib/restricted/boost/function_types/include/boost/function_types/detail/classifier.hpp b/contrib/restricted/boost/function_types/include/boost/function_types/detail/classifier.hpp
index b5c5e71ebe5..5cba5f83757 100644
--- a/contrib/restricted/boost/function_types/include/boost/function_types/detail/classifier.hpp
+++ b/contrib/restricted/boost/function_types/include/boost/function_types/detail/classifier.hpp
@@ -30,7 +30,7 @@ template<bits_t Flags, bits_t CCID, std::size_t Arity> struct encode_charr
>::type type;
};
-#if defined(BOOST_MSVC) || (defined(__BORLANDC__) && !defined(BOOST_DISABLE_WIN32))
+#if defined(BOOST_MSVC) || (defined(BOOST_BORLANDC) && !defined(BOOST_DISABLE_WIN32))
# define BOOST_FT_DECL __cdecl
#else
# define BOOST_FT_DECL /**/
diff --git a/contrib/restricted/boost/function_types/include/boost/function_types/detail/cv_traits.hpp b/contrib/restricted/boost/function_types/include/boost/function_types/detail/cv_traits.hpp
index 4e15fa480cc..45c6847f17a 100644
--- a/contrib/restricted/boost/function_types/include/boost/function_types/detail/cv_traits.hpp
+++ b/contrib/restricted/boost/function_types/include/boost/function_types/detail/cv_traits.hpp
@@ -12,7 +12,7 @@
#include <cstddef>
#include <boost/detail/workaround.hpp>
-#if BOOST_WORKAROUND(__BORLANDC__, <= 0x582)
+#if BOOST_WORKAROUND(BOOST_BORLANDC, <= 0x582)
# include <boost/type_traits/remove_cv.hpp>
# include <boost/type_traits/remove_pointer.hpp>
# include <boost/type_traits/remove_reference.hpp>
@@ -22,7 +22,7 @@
namespace boost { namespace function_types { namespace detail {
-#if !BOOST_WORKAROUND(__BORLANDC__, <= 0x582)
+#if !BOOST_WORKAROUND(BOOST_BORLANDC, <= 0x582)
template<typename T> struct cv_traits
{ typedef non_cv tag; typedef T type; };
diff --git a/contrib/restricted/boost/function_types/include/boost/function_types/property_tags.hpp b/contrib/restricted/boost/function_types/include/boost/function_types/property_tags.hpp
index c2158d352d3..3760a8b1745 100644
--- a/contrib/restricted/boost/function_types/include/boost/function_types/property_tags.hpp
+++ b/contrib/restricted/boost/function_types/include/boost/function_types/property_tags.hpp
@@ -12,6 +12,7 @@
#include <cstddef>
#include <boost/type_traits/integral_constant.hpp>
+#include <boost/type_traits/is_same.hpp>
#include <boost/mpl/bitxor.hpp>
@@ -134,6 +135,20 @@ template<class Tag, class QueryTag> struct extract
> mask;
};
+/*
+
+ The following is a metafunction which checks whether a
+ property tag is in a possibly compounded tag type.
+
+ Here both the possibly compounded tag type and a property tag
+ is given.
+
+*/
+
+template<class Tag, class PropertyTag> struct has_property_tag
+ : detail::represents_impl<Tag, PropertyTag>
+{ };
+
} } // namespace ::boost::function_types
#include <boost/function_types/detail/pp_tags/preprocessed.hpp>
@@ -141,6 +156,43 @@ template<class Tag, class QueryTag> struct extract
namespace boost { namespace function_types {
#define BOOST_FT_cc_file <boost/function_types/detail/pp_tags/cc_tag.hpp>
#include <boost/function_types/detail/pp_loop.hpp>
+
+/*
+
+ The following are metafunctions which check whether the
+ specific property tag is in a possibly compounded tag type.
+ Here only the possibly compounded tag type is given.
+
+*/
+
+template<class Tag> struct has_property_tag<Tag,null_tag>
+ : ::boost::is_same<Tag, null_tag>
+{ };
+
+template<class Tag> struct has_variadic_property_tag
+ : has_property_tag<Tag, variadic>
+{ };
+
+template<class Tag> struct has_default_cc_property_tag
+ : has_property_tag<Tag, default_cc>
+{ };
+
+template<class Tag> struct has_const_property_tag
+ : has_property_tag<Tag, const_qualified>
+{ };
+
+template<class Tag> struct has_volatile_property_tag
+ : has_property_tag<Tag, volatile_qualified>
+{ };
+
+template<class Tag> struct has_cv_property_tag
+ : has_property_tag<Tag, cv_qualified>
+{ };
+
+template<class Tag> struct has_null_property_tag
+ : has_property_tag<Tag, null_tag>
+{ };
+
} } // namespace boost::function_types
#endif