|
Boost-Commit : |
From: gpderetta_at_[hidden]
Date: 2008-03-21 16:27:35
Author: giovanni.deretta
Date: 2008-03-21 16:27:34 EDT (Fri, 21 Mar 2008)
New Revision: 43772
URL: http://svn.boost.org/trac/boost/changeset/43772
Log:
removed useless metaprogramming headers -- build broken for now
Removed:
sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/arg_max.hpp
sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/argument_packer.hpp
sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/argument_unpacker.hpp
sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/coroutine_traits.hpp
sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/fix_result.hpp
sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/index.hpp
sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/signature.hpp
sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/yield_result_type.hpp
Deleted: sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/arg_max.hpp
==============================================================================
--- sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/arg_max.hpp 2008-03-21 16:27:34 EDT (Fri, 21 Mar 2008)
+++ (empty file)
@@ -1,34 +0,0 @@
-// Copyright (c) 2006, Giovanni P. Deretta
-//
-// This code may be used under either of the following two licences:
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE. OF SUCH DAMAGE.
-//
-// Or:
-//
-// 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_COROUTINE_DETAIL_ARG_MAX_HPP_20060728
-# define BOOST_COROUTINE_DETAIL_ARG_MAX_HPP_20060728
-# ifndef BOOST_COROUTINE_ARG_MAX
-# define BOOST_COROUTINE_ARG_MAX 10
-# endif
-#endif
Deleted: sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/argument_packer.hpp
==============================================================================
--- sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/argument_packer.hpp 2008-03-21 16:27:34 EDT (Fri, 21 Mar 2008)
+++ (empty file)
@@ -1,70 +0,0 @@
-// Copyright (c) 2006, Giovanni P. Deretta
-//
-// This code may be used under either of the following two licences:
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE. OF SUCH DAMAGE.
-//
-// Or:
-//
-// 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_COROUTINE_ARGUMENT_PACKER_HPP_20060601
-#define BOOST_COROUTINE_ARGUMENT_PACKER_HPP_20060601
-#include <boost/preprocessor/control/if.hpp>
-#include <boost/preprocessor/punctuation/comma_if.hpp>
-#include <boost/preprocessor/repetition.hpp>
-#include <boost/preprocessor/tuple/eat.hpp>
-
-namespace boost { namespace coroutines { namespace detail {
-#define BOOST_COROUTINE_DETAIL_TEMPLATE_PARAMETERS(n) \
- template<BOOST_PP_ENUM_PARAMS(n, typename T)> \
-/**/
-
-#define BOOST_COROUTINE_ARGUMENT_PACKER(z, n, parm_tuple) \
- BOOST_PP_IF(n, \
- BOOST_COROUTINE_DETAIL_TEMPLATE_PARAMETERS , \
- BOOST_PP_TUPLE_EAT(1) )(n) \
- BOOST_PP_TUPLE_ELEM(3, 0, parm_tuple) \
- (BOOST_PP_ENUM_BINARY_PARAMS(n, T, arg)) { \
- typedef BOOST_PP_TUPLE_ELEM(3, 2, parm_tuple) parm_type; \
- return BOOST_PP_TUPLE_ELEM(3, 1, parm_tuple) \
- (parm_type \
- (BOOST_PP_ENUM_PARAMS(n, arg))); \
- } \
-/**/
-
-
-#define BOOST_COROUTINE_ARGUMENT_PACKER_EX(z, n, parm_tuple) \
- template<typename Arg \
- BOOST_PP_COMMA_IF(n) \
- BOOST_PP_ENUM_PARAMS(n, typename T)> \
- BOOST_PP_TUPLE_ELEM(3, 0, parm_tuple) \
- (Arg arg \
- BOOST_PP_COMMA_IF(n) \
- BOOST_PP_ENUM_BINARY_PARAMS(n, T, arg)) { \
- typedef BOOST_PP_TUPLE_ELEM(3, 2, parm_tuple) parm_type; \
- return BOOST_PP_TUPLE_ELEM(3, 1, parm_tuple)( arg, parm_type \
- (BOOST_PP_ENUM_PARAMS(n, arg))); \
- } \
-/**/
-
-} } }
-#endif
Deleted: sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/argument_unpacker.hpp
==============================================================================
--- sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/argument_unpacker.hpp 2008-03-21 16:27:34 EDT (Fri, 21 Mar 2008)
+++ (empty file)
@@ -1,134 +0,0 @@
-// Copyright (c) 2006, Giovanni P. Deretta
-//
-// This code may be used under either of the following two licences:
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE. OF SUCH DAMAGE.
-//
-// Or:
-//
-// 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_COROUTINE_ARGUMENT_UNPACKER_HPP_20060601
-#define BOOST_COROUTINE_ARGUMENT_UNPACKER_HPP_20060601
-#include <boost/preprocessor/control/if.hpp>
-#include <boost/preprocessor/repetition.hpp>
-#include <boost/utility/result_of.hpp>
-#include <boost/coroutine/detail/index.hpp>
-#include <boost/coroutine/detail/arg_max.hpp>
-
-namespace boost { namespace coroutines { namespace detail {
- template<typename Traits, int Len>
- struct unpacker_n;
-
- template<typename Traits, int Len>
- struct unpacker_ex_n;
-
-
-#define BOOST_COROUTINE_ARGUMENT_UNPACKER(z, len, unused) \
- template<typename Traits> \
- struct unpacker_n<Traits, len> { \
- template<typename Functor, typename Tuple> \
- struct result {/*for result_of compatibility*/ \
- typedef typename boost::result_of \
- <Functor(BOOST_PP_ENUM_BINARY_PARAMS \
- (len, typename Traits::template at<index_ , > \
- ::type BOOST_PP_INTERCEPT))>::type type; \
- }; \
- template<typename Functor, typename Tuple> \
- typename result<Functor, Tuple>::type operator() \
- (Functor& f, Tuple& parms){ \
- using boost::get; /*tuples::get cannot be found via ADL*/ \
- return f(BOOST_PP_ENUM_BINARY_PARAMS \
- (len, \
- get<index_, > \
- (parms) BOOST_PP_INTERCEPT)); \
- } \
- }; \
-/**/
-
-#define BOOST_COROUTINE_ARGUMENT_UNPACKER_EX(z, len, unused) \
- template<typename Traits> \
- struct unpacker_ex_n<Traits, len > { \
- template<typename Functor, \
- typename First, \
- typename Tuple> \
- struct result { \
- typedef typename boost::result_of \
- <Functor(First BOOST_PP_COMMA_IF(len) \
- BOOST_PP_ENUM_BINARY_PARAMS \
- (len, typename Traits \
- ::template at<index_ , >::type BOOST_PP_INTERCEPT))> \
- ::type type; \
- }; \
- \
- template<typename Functor, \
- typename First, \
- typename Tuple> \
- typename result<Functor, First, Tuple>::type \
- operator()(Functor& f, First& arg0, Tuple& parms){ \
- using boost::get; /*tuples::get cannot be found via ADL*/ \
- return f(arg0 \
- BOOST_PP_COMMA_IF(len) \
- BOOST_PP_ENUM_BINARY_PARAMS \
- (len, \
- get<index_, > \
- (parms) BOOST_PP_INTERCEPT) ); \
- } \
- }; \
-/**/
-
- BOOST_PP_REPEAT(BOOST_COROUTINE_ARG_MAX,
- BOOST_COROUTINE_ARGUMENT_UNPACKER, ~);
- BOOST_PP_REPEAT(BOOST_COROUTINE_ARG_MAX,
- BOOST_COROUTINE_ARGUMENT_UNPACKER_EX, ~);
-
- // Somehow VCPP 8.0 chockes if the Trait for unpack[_ex]
- // is explicitly specified. We use an empty dispatch
- // tag to let the compiler deduce it.
- template<typename Trait>
- struct trait_tag {};
-
- /**
- * Inovoke function object @p f passing all
- * elements in tuple @p parms as distinct parameters.
- */
- template<typename Traits, typename Functor, typename Tuple>
- inline
- typename unpacker_n<Traits, Traits::length>
- ::template result<Functor, Tuple>::type
- unpack(Functor f, Tuple& parms, trait_tag<Traits>) {
- return unpacker_n<Traits, Traits::length>()(f, parms);
- }
-
- /**
- * Inovke function object @p f passing argument @p arg0 and all
- * elements in tuple @p parms as distinct parameters.
- */
- template<typename Traits, typename Functor, typename First, typename Tuple>
- inline
- typename unpacker_ex_n<Traits, Traits::length>::
- template result<Functor, First, Tuple>::type
- unpack_ex(Functor f, First& arg0, Tuple& parms, trait_tag<Traits>) {
- return unpacker_ex_n<Traits, Traits::length>()
- (f, arg0, parms);
- }
-} } }
-#endif
Deleted: sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/coroutine_traits.hpp
==============================================================================
--- sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/coroutine_traits.hpp 2008-03-21 16:27:34 EDT (Fri, 21 Mar 2008)
+++ (empty file)
@@ -1,82 +0,0 @@
-// Copyright (c) 2006, Giovanni P. Deretta
-//
-// This code may be used under either of the following two licences:
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE. OF SUCH DAMAGE.
-//
-// Or:
-//
-// 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_COROUTINE_DETAIL_COROUTINE_TRAITS_HPP_20060613
-#define BOOST_COROUTINE_DETAIL_COROUTINE_TRAITS_HPP_20060613
-#include <boost/type_traits.hpp>
-#include <boost/coroutine/tuple_traits.hpp>
-#include <boost/coroutine/detail/yield_result_type.hpp>
-
-namespace boost { namespace coroutines { namespace detail {
-
- template<typename T>
- struct as_tuple {
- typedef typename T::as_tuple type;
- };
-
- // This trait class is used to compute
- // all nested typedefs of coroutines given
- // a signature in the form 'result_type(parm1, ... parmn)'.
- template<typename Signature>
- struct coroutine_traits {
- private:
-
- typedef BOOST_DEDUCED_TYPENAME boost::function_traits<Signature>::result_type
- signature_result_type;
- public:
- typedef BOOST_DEDUCED_TYPENAME
- boost::mpl::eval_if<is_tuple_traits<signature_result_type>,
- as_tuple<signature_result_type>,
- boost::mpl::identity<signature_result_type> >
- ::type result_type;
-
- typedef BOOST_DEDUCED_TYPENAME
- boost::mpl::eval_if<is_tuple_traits<signature_result_type>,
- boost::mpl::identity<signature_result_type>,
- boost::mpl::if_
- <boost::is_same<signature_result_type, void>,
- tuple_traits<>,
- tuple_traits<signature_result_type> > >
- ::type result_slot_traits;
-
- typedef BOOST_DEDUCED_TYPENAME result_slot_traits
- ::as_tuple result_slot_type;
-
- typedef BOOST_DEDUCED_TYPENAME detail::make_tuple_traits
- <typename detail::signature<Signature>::type >
- ::type arg_slot_traits;
-
- typedef BOOST_DEDUCED_TYPENAME arg_slot_traits
- ::as_tuple arg_slot_type;
-
- typedef BOOST_DEDUCED_TYPENAME arg_slot_traits
- ::as_result yield_result_type;
-
- };
-} } }
-#endif
Deleted: sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/fix_result.hpp
==============================================================================
--- sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/fix_result.hpp 2008-03-21 16:27:34 EDT (Fri, 21 Mar 2008)
+++ (empty file)
@@ -1,61 +0,0 @@
-// Copyright (c) 2006, Giovanni P. Deretta
-//
-// This code may be used under either of the following two licences:
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE. OF SUCH DAMAGE.
-//
-// Or:
-//
-// 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_COROUTINE_DETAIL_FIX_RESULT_HPP_20060709
-#define BOOST_COROUTINE_DETAIL_FIX_RESULT_HPP_20060709
-#include <boost/utility/enable_if.hpp>
-namespace boost { namespace coroutines { namespace detail {
- template<typename Traits>
- inline
- void
- fix_result(const typename Traits::as_tuple&,
- typename
- boost::enable_if_c<Traits::length == 0>::type * = 0){}
-
-
- template<typename Traits>
- inline
- typename Traits::template at<0>::type
- fix_result(const typename Traits::as_tuple& x,
- typename
- boost::enable_if_c<Traits::length == 1>::type * = 0){
- using boost::get;
- return get<0>(x);
- }
-
-
- template<typename Traits>
- inline
- typename Traits::as_tuple
- fix_result(const typename Traits::as_tuple& x,
- typename
- boost::enable_if_c<(Traits::length > 1)>::type* =0){
- return x;
- }
-} } }
-#endif
Deleted: sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/index.hpp
==============================================================================
--- sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/index.hpp 2008-03-21 16:27:34 EDT (Fri, 21 Mar 2008)
+++ (empty file)
@@ -1,42 +0,0 @@
-// Copyright (c) 2006, Giovanni P. Deretta
-//
-// This code may be used under either of the following two licences:
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE. OF SUCH DAMAGE.
-//
-// Or:
-//
-// 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_COROUTINE_DETAIL_INDEX_HPP_20060613
-#define BOOST_COROUTINE_DETAIL_INDEX_HPP_20060613
-#include <boost/preprocessor/repetition.hpp>
-#include <boost/coroutine/detail/arg_max.hpp>
-namespace boost { namespace coroutines { namespace detail {
- /*
- * Workaround for BOOST_PP_ENUM_BINARY_PARAMS, where a token
- * can't be createed by appending a number to a '<'.
- * NOTE: we are really abusing BOOST_PP_ENUM_BINARY_PARAMS,
- * Should simply use BOOST_PP_ENUM.
- */
- enum {BOOST_PP_ENUM_PARAMS(BOOST_COROUTINE_ARG_MAX, index_)};
-} } }
-#endif
Deleted: sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/signature.hpp
==============================================================================
--- sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/signature.hpp 2008-03-21 16:27:34 EDT (Fri, 21 Mar 2008)
+++ (empty file)
@@ -1,56 +0,0 @@
-// Copyright (c) 2006, Giovanni P. Deretta
-//
-// This code may be used under either of the following two licences:
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE. OF SUCH DAMAGE.
-//
-// Or:
-//
-// 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_COROUTINE_DETAIL_SIGNATURE_HPP_20060609
-#define BOOST_COROUTINE_DETAIL_SIGNATURE_HPP_20060609
-#include <boost/preprocessor/repetition.hpp>
-#include <boost/coroutine/detail/arg_max.hpp>
-namespace boost{ namespace coroutines{ namespace detail{
- /*
- * Derived from an mpl::vector describing
- * 'Function' arguments types.
- */
- template<typename Function>
- struct signature;
-
- /*
- * Generate specializations for the signature trait class.
- */
-#define BOOST_COROUTINE_SIGNATURE_GENERATOR(z, n, unused) \
- template <class R BOOST_PP_ENUM_TRAILING_PARAMS(n, class A)> \
- struct signature<R( BOOST_PP_ENUM_PARAMS(n,A) ) > \
- : boost::mpl::BOOST_PP_CAT(vector,n)< \
- BOOST_PP_ENUM_PARAMS(n,A) \
- > {}; \
-/**/
-
-
- BOOST_PP_REPEAT(BOOST_COROUTINE_ARG_MAX, BOOST_COROUTINE_SIGNATURE_GENERATOR, ~);
-#undef BOOST_COROUTINE_SIGNATURE_GENERATOR
-} } }
-#endif
Deleted: sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/yield_result_type.hpp
==============================================================================
--- sandbox/SOC/2006/coroutine/branches/cleanup/boost/coroutine/detail/yield_result_type.hpp 2008-03-21 16:27:34 EDT (Fri, 21 Mar 2008)
+++ (empty file)
@@ -1,54 +0,0 @@
-// Copyright (c) 2006, Giovanni P. Deretta
-//
-// This code may be used under either of the following two licences:
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE. OF SUCH DAMAGE.
-//
-// Or:
-//
-// 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_COROUTINE_DETAIL_YIELD_RESULT_TYPE_HPP_20060609
-#define BOOST_COROUTINE_DETAIL_YIELD_RESULT_TYPE_HPP_20060609
-#include <boost/coroutine/detail/make_tuple_traits.hpp>
-#include <boost/mpl/vector.hpp>
-namespace boost{ namespace coroutines { namespace detail {
- /**
- * Same as make_tuple_traits, but if
- * @p TypeList is singular, @p type is the single element, and
- * if TypeList is empty, @p type is @p void.
- */
- template<typename TypeList>
- struct yield_result_type {
- typedef typename make_tuple_traits<TypeList>::type type;
- };
-
- template<typename T>
- struct yield_result_type <boost::mpl::vector1<T> >{
- typedef T type;
- };
-
- template<>
- struct yield_result_type <boost::mpl::vector0<> >{
- typedef void type;
- };
-} } }
-#endif
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk