summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/Boost/boost/typeof/modifiers.hpp')
m---------3rdParty/Boost0
-rw-r--r--3rdParty/Boost/boost/typeof/modifiers.hpp121
2 files changed, 0 insertions, 121 deletions
diff --git a/3rdParty/Boost b/3rdParty/Boost
new file mode 160000
+Subproject 3bbdbc8cf1996f23d9a366da8bac0f97be6ad79
diff --git a/3rdParty/Boost/boost/typeof/modifiers.hpp b/3rdParty/Boost/boost/typeof/modifiers.hpp
deleted file mode 100644
index 630d0dc..0000000
--- a/3rdParty/Boost/boost/typeof/modifiers.hpp
+++ /dev/null
@@ -1,121 +0,0 @@
-// Copyright (C) 2004 Arkadiy Vertleyb
-// Distributed under the Boost Software License, Version 1.0. (See accompanying
-// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-#ifndef BOOST_TYPEOF_MODIFIERS_HPP_INCLUDED
-#define BOOST_TYPEOF_MODIFIERS_HPP_INCLUDED
-
-#include <boost/typeof/encode_decode.hpp>
-#include <boost/preprocessor/facilities/identity.hpp>
-
-#include BOOST_TYPEOF_INCREMENT_REGISTRATION_GROUP()
-
-// modifiers
-
-#define BOOST_TYPEOF_modifier_support(ID, Fun)\
- template<class V, class T> struct encode_type_impl<V, Fun(T)>\
- {\
- typedef\
- typename boost::type_of::encode_type<\
- typename boost::type_of::push_back<\
- V\
- , boost::mpl::size_t<ID> >::type\
- , T>::type\
- type;\
- };\
- template<class Iter> struct decode_type_impl<boost::mpl::size_t<ID>, Iter>\
- {\
- typedef boost::type_of::decode_type<Iter> d1;\
- typedef Fun(typename d1::type) type;\
- typedef typename d1::iter iter;\
- }
-
-
-#define BOOST_TYPEOF_const_fun(T) const T
-#define BOOST_TYPEOF_volatile_fun(T) volatile T
-#define BOOST_TYPEOF_volatile_const_fun(T) volatile const T
-#define BOOST_TYPEOF_pointer_fun(T) T*
-#define BOOST_TYPEOF_reference_fun(T) T&
-
-#if defined(__BORLANDC__) && (__BORLANDC__ < 0x600)
-//Borland incorrectly handles T const, T const volatile and T volatile.
-//It drops the decoration no matter what, so we need to try to handle T* const etc. without loosing the top modifier.
-#define BOOST_TYPEOF_const_pointer_fun(T) T const *
-#define BOOST_TYPEOF_const_reference_fun(T) T const &
-#define BOOST_TYPEOF_volatile_pointer_fun(T) T volatile*
-#define BOOST_TYPEOF_volatile_reference_fun(T) T volatile&
-#define BOOST_TYPEOF_volatile_const_pointer_fun(T) T volatile const *
-#define BOOST_TYPEOF_volatile_const_reference_fun(T) T volatile const &
-#endif
-
-BOOST_TYPEOF_BEGIN_ENCODE_NS
-
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_const_fun);
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_volatile_fun);
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_volatile_const_fun);
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_pointer_fun);
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_reference_fun);
-
-#if defined(__BORLANDC__) && (__BORLANDC__ < 0x600)
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_const_pointer_fun);
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_const_reference_fun);
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_volatile_pointer_fun);
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_volatile_reference_fun);
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_volatile_const_pointer_fun);
-BOOST_TYPEOF_modifier_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_TYPEOF_volatile_const_reference_fun);
-#endif
-
-BOOST_TYPEOF_END_ENCODE_NS
-
-#undef BOOST_TYPEOF_modifier_support
-#undef BOOST_TYPEOF_const_fun
-#undef BOOST_TYPEOF_volatile_fun
-#undef BOOST_TYPEOF_volatile_const_fun
-#undef BOOST_TYPEOF_pointer_fun
-#undef BOOST_TYPEOF_reference_fun
-
-#if defined(__BORLANDC__) && (__BORLANDC__ < 0x600)
-#undef BOOST_TYPEOF_const_pointer_fun
-#undef BOOST_TYPEOF_const_reference_fun
-#undef BOOST_TYPEOF_volatile_pointer_fun
-#undef BOOST_TYPEOF_volatile_reference_fun
-#undef BOOST_TYPEOF_volatile_const_pointer_fun
-#undef BOOST_TYPEOF_volatile_const_reference_fun
-#endif
-
-// arrays
-
-#define BOOST_TYPEOF_array_support(ID, Qualifier)\
- template<class V, class T, int N>\
- struct encode_type_impl<V, Qualifier() T[N]>\
- {\
- typedef\
- typename boost::type_of::encode_type<\
- typename boost::type_of::push_back<\
- typename boost::type_of::push_back<\
- V\
- , boost::mpl::size_t<ID> >::type\
- , boost::mpl::size_t<N> >::type\
- , T>::type\
- type;\
- };\
- template<class Iter>\
- struct decode_type_impl<boost::mpl::size_t<ID>, Iter>\
- {\
- enum{n = Iter::type::value};\
- typedef boost::type_of::decode_type<typename Iter::next> d;\
- typedef typename d::type Qualifier() type[n];\
- typedef typename d::iter iter;\
- }
-
-BOOST_TYPEOF_BEGIN_ENCODE_NS
-
-BOOST_TYPEOF_array_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_PP_EMPTY);
-BOOST_TYPEOF_array_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_PP_IDENTITY(const));
-BOOST_TYPEOF_array_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_PP_IDENTITY(volatile));
-BOOST_TYPEOF_array_support(BOOST_TYPEOF_UNIQUE_ID(), BOOST_PP_IDENTITY(volatile const));
-BOOST_TYPEOF_END_ENCODE_NS
-
-#undef BOOST_TYPEOF_array_support
-
-#endif//BOOST_TYPEOF_MODIFIERS_HPP_INCLUDED