diff options
author | Remko Tronçon <git@el-tramo.be> | 2010-02-11 12:14:00 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2010-02-11 12:14:00 (GMT) |
commit | 0efa7c32aaf21a29b42b5926cc116007056843be (patch) | |
tree | 882f663a5dd0e65694bf6077b71086dd77fd7ff8 /3rdParty/Boost/boost/concept | |
parent | 1d20eabbc32274b491b4c2bedf73d19933d97bfd (diff) | |
download | swift-0efa7c32aaf21a29b42b5926cc116007056843be.zip swift-0efa7c32aaf21a29b42b5926cc116007056843be.tar.bz2 |
Moved some modules into separate git modules.
Diffstat (limited to '3rdParty/Boost/boost/concept')
m--------- | 3rdParty/Boost | 0 | ||||
-rw-r--r-- | 3rdParty/Boost/boost/concept/assert.hpp | 46 | ||||
-rw-r--r-- | 3rdParty/Boost/boost/concept/detail/borland.hpp | 29 | ||||
-rw-r--r-- | 3rdParty/Boost/boost/concept/detail/concept_def.hpp | 51 | ||||
-rw-r--r-- | 3rdParty/Boost/boost/concept/detail/concept_undef.hpp | 5 | ||||
-rw-r--r-- | 3rdParty/Boost/boost/concept/detail/general.hpp | 66 | ||||
-rw-r--r-- | 3rdParty/Boost/boost/concept/detail/has_constraints.hpp | 48 | ||||
-rw-r--r-- | 3rdParty/Boost/boost/concept/detail/msvc.hpp | 92 | ||||
-rw-r--r-- | 3rdParty/Boost/boost/concept/usage.hpp | 43 |
9 files changed, 0 insertions, 380 deletions
diff --git a/3rdParty/Boost b/3rdParty/Boost new file mode 160000 +Subproject 3bbdbc8cf1996f23d9a366da8bac0f97be6ad79 diff --git a/3rdParty/Boost/boost/concept/assert.hpp b/3rdParty/Boost/boost/concept/assert.hpp deleted file mode 100644 index 80eca81..0000000 --- a/3rdParty/Boost/boost/concept/assert.hpp +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright David Abrahams 2006. 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_CONCEPT_ASSERT_DWA2006430_HPP -# define BOOST_CONCEPT_ASSERT_DWA2006430_HPP - -# include <boost/config.hpp> -# include <boost/detail/workaround.hpp> - -// The old protocol used a constraints() member function in concept -// checking classes. If the compiler supports SFINAE, we can detect -// that function and seamlessly support the old concept checking -// classes. In this release, backward compatibility with the old -// concept checking classes is enabled by default, where available. -// The old protocol is deprecated, though, and backward compatibility -// will no longer be the default in the next release. - -# if !defined(BOOST_NO_OLD_CONCEPT_SUPPORT) \ - && !defined(BOOST_NO_SFINAE) \ - \ - && !(BOOST_WORKAROUND(__GNUC__, == 3) && BOOST_WORKAROUND(__GNUC_MINOR__, < 4)) \ - && !(BOOST_WORKAROUND(__GNUC__, == 2)) - -// Note: gcc-2.96 through 3.3.x have some SFINAE, but no ability to -// check for the presence of particularmember functions. - -# define BOOST_OLD_CONCEPT_SUPPORT - -# endif - -# ifdef BOOST_MSVC -# include <boost/concept/detail/msvc.hpp> -# elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) -# include <boost/concept/detail/borland.hpp> -# else -# include <boost/concept/detail/general.hpp> -# endif - - // Usage, in class or function context: - // - // BOOST_CONCEPT_ASSERT((UnaryFunctionConcept<F,bool,int>)); - // -# define BOOST_CONCEPT_ASSERT(ModelInParens) \ - BOOST_CONCEPT_ASSERT_FN(void(*)ModelInParens) - -#endif // BOOST_CONCEPT_ASSERT_DWA2006430_HPP diff --git a/3rdParty/Boost/boost/concept/detail/borland.hpp b/3rdParty/Boost/boost/concept/detail/borland.hpp deleted file mode 100644 index 59fec55..0000000 --- a/3rdParty/Boost/boost/concept/detail/borland.hpp +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright David Abrahams 2006. 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_CONCEPT_DETAIL_BORLAND_DWA2006429_HPP -# define BOOST_CONCEPT_DETAIL_BORLAND_DWA2006429_HPP - -# include <boost/preprocessor/cat.hpp> - -namespace boost { namespace concept { - -template <class ModelFnPtr> -struct require; - -template <class Model> -struct require<void(*)(Model)> -{ - enum { instantiate = sizeof((((Model*)0)->~Model()), 3) }; -}; - -# define BOOST_CONCEPT_ASSERT_FN( ModelFnPtr ) \ - enum \ - { \ - BOOST_PP_CAT(boost_concept_check,__LINE__) = \ - boost::concept::require<ModelFnPtr>::instantiate \ - } - -}} // namespace boost::concept - -#endif // BOOST_CONCEPT_DETAIL_BORLAND_DWA2006429_HPP diff --git a/3rdParty/Boost/boost/concept/detail/concept_def.hpp b/3rdParty/Boost/boost/concept/detail/concept_def.hpp deleted file mode 100644 index 79f628e..0000000 --- a/3rdParty/Boost/boost/concept/detail/concept_def.hpp +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright David Abrahams 2006. 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_CONCEPT_DETAIL_CONCEPT_DEF_DWA200651_HPP -# define BOOST_CONCEPT_DETAIL_CONCEPT_DEF_DWA200651_HPP -# include <boost/preprocessor/seq/for_each_i.hpp> -# include <boost/preprocessor/seq/enum.hpp> -# include <boost/preprocessor/comma_if.hpp> -# include <boost/preprocessor/cat.hpp> -#endif // BOOST_CONCEPT_DETAIL_CONCEPT_DEF_DWA200651_HPP - -// BOOST_concept(SomeName, (p1)(p2)...(pN)) -// -// Expands to "template <class p1, class p2, ...class pN> struct SomeName" -// -// Also defines an equivalent SomeNameConcept for backward compatibility. -// Maybe in the next release we can kill off the "Concept" suffix for good. -#if BOOST_WORKAROUND(__GNUC__, <= 3) -# define BOOST_concept(name, params) \ - template < BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) > \ - struct name; /* forward declaration */ \ - \ - template < BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) > \ - struct BOOST_PP_CAT(name,Concept) \ - : name< BOOST_PP_SEQ_ENUM(params) > \ - { \ - /* at least 2.96 and 3.4.3 both need this */ \ - BOOST_PP_CAT(name,Concept)(); \ - }; \ - \ - template < BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) > \ - struct name -#else -# define BOOST_concept(name, params) \ - template < BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) > \ - struct name; /* forward declaration */ \ - \ - template < BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) > \ - struct BOOST_PP_CAT(name,Concept) \ - : name< BOOST_PP_SEQ_ENUM(params) > \ - { \ - }; \ - \ - template < BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) > \ - struct name -#endif - -// Helper for BOOST_concept, above. -# define BOOST_CONCEPT_typename(r, ignored, index, t) \ - BOOST_PP_COMMA_IF(index) typename t - diff --git a/3rdParty/Boost/boost/concept/detail/concept_undef.hpp b/3rdParty/Boost/boost/concept/detail/concept_undef.hpp deleted file mode 100644 index 713db89..0000000 --- a/3rdParty/Boost/boost/concept/detail/concept_undef.hpp +++ /dev/null @@ -1,5 +0,0 @@ -// Copyright David Abrahams 2006. 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) -# undef BOOST_concept_typename -# undef BOOST_concept diff --git a/3rdParty/Boost/boost/concept/detail/general.hpp b/3rdParty/Boost/boost/concept/detail/general.hpp deleted file mode 100644 index f36f9c4..0000000 --- a/3rdParty/Boost/boost/concept/detail/general.hpp +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright David Abrahams 2006. 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_CONCEPT_DETAIL_GENERAL_DWA2006429_HPP -# define BOOST_CONCEPT_DETAIL_GENERAL_DWA2006429_HPP - -# include <boost/preprocessor/cat.hpp> - -# ifdef BOOST_OLD_CONCEPT_SUPPORT -# include <boost/concept/detail/has_constraints.hpp> -# include <boost/mpl/if.hpp> -# endif - -// This implementation works on Comeau and GCC, all the way back to -// 2.95 -namespace boost { namespace concept { - -template <class ModelFn> -struct requirement_; - -namespace detail -{ - template <void(*)()> struct instantiate {}; -} - -template <class Model> -struct requirement -{ - static void failed() { ((Model*)0)->~Model(); } -}; - -# ifdef BOOST_OLD_CONCEPT_SUPPORT - -template <class Model> -struct constraint -{ - static void failed() { ((Model*)0)->constraints(); } -}; - -template <class Model> -struct requirement_<void(*)(Model)> - : mpl::if_< - concept::not_satisfied<Model> - , constraint<Model> - , requirement<Model> - >::type -{}; - -# else - -// For GCC-2.x, these can't have exactly the same name -template <class Model> -struct requirement_<void(*)(Model)> - : requirement<Model> -{}; - -# endif - -# define BOOST_CONCEPT_ASSERT_FN( ModelFnPtr ) \ - typedef ::boost::concept::detail::instantiate< \ - &::boost::concept::requirement_<ModelFnPtr>::failed> \ - BOOST_PP_CAT(boost_concept_check,__LINE__) - -}} - -#endif // BOOST_CONCEPT_DETAIL_GENERAL_DWA2006429_HPP diff --git a/3rdParty/Boost/boost/concept/detail/has_constraints.hpp b/3rdParty/Boost/boost/concept/detail/has_constraints.hpp deleted file mode 100644 index 3112b55..0000000 --- a/3rdParty/Boost/boost/concept/detail/has_constraints.hpp +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright David Abrahams 2006. 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_CONCEPT_DETAIL_HAS_CONSTRAINTS_DWA2006429_HPP -# define BOOST_CONCEPT_DETAIL_HAS_CONSTRAINTS_DWA2006429_HPP - -# include <boost/mpl/bool.hpp> -# include <boost/detail/workaround.hpp> -namespace boost { namespace concept { - -namespace detail -{ - -// Here we implement the metafunction that detects whether a -// constraints metafunction exists - typedef char yes; - typedef char (&no)[2]; - - template <class Model, void (Model::*)()> - struct wrap_constraints {}; - -#if BOOST_WORKAROUND(__SUNPRO_CC, <= 0x580) - // Work around the following bogus error in Sun Studio 11, by - // turning off the has_constraints function entirely: - // Error: complex expression not allowed in dependent template - // argument expression - inline no has_constraints_(...); -#else - template <class Model> - inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); - inline no has_constraints_(...); -#endif -} - -// This would be called "detail::has_constraints," but it has a strong -// tendency to show up in error messages. -template <class Model> -struct not_satisfied -{ - BOOST_STATIC_CONSTANT( - bool - , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); - typedef mpl::bool_<value> type; -}; - -}} // namespace boost::concept::detail - -#endif // BOOST_CONCEPT_DETAIL_HAS_CONSTRAINTS_DWA2006429_HPP diff --git a/3rdParty/Boost/boost/concept/detail/msvc.hpp b/3rdParty/Boost/boost/concept/detail/msvc.hpp deleted file mode 100644 index 3aadb79..0000000 --- a/3rdParty/Boost/boost/concept/detail/msvc.hpp +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright David Abrahams 2006. 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_CONCEPT_CHECK_MSVC_DWA2006429_HPP -# define BOOST_CONCEPT_CHECK_MSVC_DWA2006429_HPP - -# include <boost/preprocessor/cat.hpp> - -# ifdef BOOST_OLD_CONCEPT_SUPPORT -# include <boost/concept/detail/has_constraints.hpp> -# include <boost/mpl/if.hpp> -# endif - - -namespace boost { namespace concept { - -template <class Model> -struct check -{ - virtual void failed(Model* x) - { - x->~Model(); - } -}; - -# ifdef BOOST_OLD_CONCEPT_SUPPORT - -namespace detail -{ - // No need for a virtual function here, since evaluating - // not_satisfied below will have already instantiated the - // constraints() member. - struct constraint {}; -} - -template <class Model> -struct require - : mpl::if_c< - not_satisfied<Model>::value - , detail::constraint - , check<Model> - >::type -{}; - -# else - -template <class Model> -struct require - : check<Model> -{}; - -# endif - -# if BOOST_WORKAROUND(BOOST_MSVC, == 1310) - -// -// The iterator library sees some really strange errors unless we -// do things this way. -// -template <class Model> -struct require<void(*)(Model)> -{ - virtual void failed(Model*) - { - require<Model>(); - } -}; - -# define BOOST_CONCEPT_ASSERT_FN( ModelFnPtr ) \ -enum \ -{ \ - BOOST_PP_CAT(boost_concept_check,__LINE__) = \ - sizeof(::boost::concept::require<ModelFnPtr>) \ -} - -# else // Not vc-7.1 - -template <class Model> -require<Model> -require_(void(*)(Model)); - -# define BOOST_CONCEPT_ASSERT_FN( ModelFnPtr ) \ -enum \ -{ \ - BOOST_PP_CAT(boost_concept_check,__LINE__) = \ - sizeof(::boost::concept::require_((ModelFnPtr)0)) \ -} - -# endif -}} - -#endif // BOOST_CONCEPT_CHECK_MSVC_DWA2006429_HPP diff --git a/3rdParty/Boost/boost/concept/usage.hpp b/3rdParty/Boost/boost/concept/usage.hpp deleted file mode 100644 index 9af8ca3..0000000 --- a/3rdParty/Boost/boost/concept/usage.hpp +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright David Abrahams 2006. 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_CONCEPT_USAGE_DWA2006919_HPP -# define BOOST_CONCEPT_USAGE_DWA2006919_HPP - -# include <boost/concept/assert.hpp> -# include <boost/detail/workaround.hpp> - -namespace boost { namespace concept { - -# if BOOST_WORKAROUND(__GNUC__, == 2) - -# define BOOST_CONCEPT_USAGE(model) ~model() - -# else - -template <class Model> -struct usage_requirements -{ - ~usage_requirements() { ((Model*)0)->~Model(); } -}; - -# if BOOST_WORKAROUND(__GNUC__, <= 3) - -# define BOOST_CONCEPT_USAGE(model) \ - model(); /* at least 2.96 and 3.4.3 both need this :( */ \ - BOOST_CONCEPT_ASSERT((boost::concept::usage_requirements<model>)); \ - ~model() - -# else - -# define BOOST_CONCEPT_USAGE(model) \ - BOOST_CONCEPT_ASSERT((boost::concept::usage_requirements<model>)); \ - ~model() - -# endif - -# endif - -}} // namespace boost::concept - -#endif // BOOST_CONCEPT_USAGE_DWA2006919_HPP |